JwebUnit

问题一:

利用jwebunit框架写了一段代码,如下:

public class ListPage extends WebTester{

private WebTester tester;

@Before
public void prepare() {
tester = new WebTester();
tester.setBaseUrl("http://campus.chinahr.com/");
}
//实习职位列表搜索不为空
@Test
public void test1() throws Exception{
tester.beginAt("/");
tester.clickLinkWithText("实习");
// time.sleep(5);


运行是报错:

net.sourceforge.htmlunit.corejs.javascript.EcmaError: TypeError: Expected argument of type object, but instead had type object (http://dn-growing.qbox.me/vds.js#2)
at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3935)
at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3919)
at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.typeError(ScriptRuntime.java:3944)
at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.typeError1(ScriptRuntime.java:3954)
at net.sourceforge.htmlunit.corejs.javascript.ScriptableObject.ensureScriptableObject(ScriptableObject.java:2193)
at net.sourceforge.htmlunit.corejs.javascript.NativeObject.execIdCall(NativeObject.java:323)
at net.sourceforge.htmlunit.corejs.javascript.IdFunctionObject.call(IdFunctionObject.java:93)
at net.sourceforge.htmlunit.corejs.javascript.Interpreter.interpretLoop(Interpreter.java:1536)

【解决办法】

 public void prepare() {
tester = new WebTester();
tester.setScriptingEnabled(false);
tester.setBaseUrl("http://campus.chinahr.com/");
}
 页面加载的JS中有异常,然后框架把js异常转换成了java异常,这个异常可以忽略,异常的方式就是加入  tester.setScriptingEnabled(false); 
 
问题二:
使用idea编译时提示找不到包:
错误:程序包net.sourceforge.jwebunit.junit不存在

问题原因:pom文件中多了一个scope节点,去掉就好了。

<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.8</version>
<scope>test</scope>
</dependency>


 


 

posted @ 2017-01-06 16:26  KemiS  阅读(473)  评论(0)    收藏  举报