保持不断的学习才是提升自己的唯一出路
感谢, 看到了
@simple 这个专栏是可以自由申请, 还是需要什么限制, 如果是自由的申请, 那就直接申请下..
感谢分享
我看你这个文件的路径 :src/com.kdzwy.cases/MteSenseInstanceUpdate.java
应该是 src/com/kdzwy/cases/MteSenseInstanceUpdate.java
fullclassname 应该是 : com.kdzwy.cases.MteSenseInstanceUpdate.java
?
或者尝试下 到 github 拿下最新的 0.2.2 版本的 jar
这个是我的栗子的:
MteSenseWddLoaderTest
MteSenseLoader loader = new MteSenseLoader();
MteSenseLoaderOptions options=new MteSenseLoaderOptions();
options.setLoaderOption("mtesensewdd.webDriverType","chrome");
options.setLoaderOption("mtesensewdd.fullFilePath","./src/test/MteSenseActionUpdate.java");
options.setLoaderOption("mtesensewdd.fullClassName","test.MteSenseActionUpdate");
options.setLoaderOption("mtesensewdd.url","");
options.setLoaderOption("mtesensewdd.methodName","runDynamicAction");
loader.senseLoader(options,driver);
MteSenseActionUpdate
package test;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.remote.Command;
import org.openqa.selenium.remote.DriverCommand;
import org.openqa.selenium.remote.HttpCommandExecutor;
import java.net.URL;
/**
* Created by java on 20/07/2017.
*/
public class MteSenseActionUpdate {
public String getValue(){
return "Testerhome";
}
public void runDynamicAction(ChromeDriver driver) {
// driver.get("http://wwww.baidu.com");
driver.findElementById("kw").sendKeys(getValue());
driver.findElementById("su").click();
}
主要的关键是 下面的参数设置
options.setLoaderOption("mtesensewdd.fullFilePath","./src/test/MteSenseActionUpdate.java");
options.setLoaderOption("mtesensewdd.fullClassName","test.MteSenseActionUpdate");
mtesensewdd.fullFilePath 指定你要编辑的操作文件的物理路径
mtesensewdd.fullClassName 代表操作文件的全名 例如栗子里的 test/MteSenseActionUpdate.java 对应 test.MteSenseActionUpdate
这样当你启动之后 就直接编辑 MteSenseActionUpdate 这个 java 文件的 指定方法, 然后 save, 只要这个文件的更新时间更改, 就会执行
能把 你的 具体代码贴出来一下吗? 我看下你的实际代码, src/com.kdzwy.cases/MteSenseInstanceUpdate.java last modified time is 0 这个 log 通常表示, 就没发现这个文件或者找这个文件出错, 也就没法在内存中编译.
MteSenseInstanceUpdate.java 这个文件 你是在运行之前就创建了过了, 作为参数,你输入的 package+ 类名字 是正确的吗?
而且即使抛出异常, 你再次修改后,save 一下, last modified time 就会改变, 就会再次编译执行...
在我这边没发现这个问题, 我看 log 里面给出的 last modified time is 0 这个太奇怪了.. 你用的是什么 driver, MteSenseInstanceUpdate.java 这个文件的 package 的 full 那么之类的 参数输入都校验过吗?
常规的 更新 action 的文件,也就是 MteSenseInstanceUpdate.java, 检查 last modified time 应该是一串数值,不应该是 0
保持不断的学习才是提升自己的唯一出路