您的位置:首页 > 运维架构 > 网站架构

使用JWebUnit应注意的2个问题,并不是所有的网站都适合用JWebUnit的!

2006-07-12 17:09 495 查看
如果你看了 jWebUnit 框架让测试 Web 应用程序变得轻而易举 这片文章,那末你最好把下面这篇也读了。至少我觉得 那个所谓很好的网文,有很多关键的问题没有提到,如果你真想把jwebunit应用到实战中去,那末下面的问题你大多会遇到。

可能大部分使用 web测试框架 jwebunit 的用户都和我一样,监控自己的网站,看应用服务是否当机,服务是否可以正常运行?最近我也在使用中亲身体验到了一些问题,有的甚至是jwebunit本身的问题,短期内很难解决。特此声明出来,免得走弯路!

1、编码问题(如果你的网站用gb2312)

并不是大部分的网站都具有国际化标准,baidu就算一个他用gb2312编码自己的首页,如果你用jwebunit进行汉字测试的话,呵呵!jwebunit是一定会报错的。但是这个问题到不难解决,只要你把搜索的文字进行编码就可以了,编码有些奇怪:

searchLink = "驾驶导航";

searchLink = new String(searchLink.getBytes("utf-8"), "utf-8");

这样就不会出现问题了。

2、如果网站内有过于复杂的js

特别提示一下,对于地图型网站如 灵图的www.51ditu.com ,mapbar 都无法使用jwebunit进行测试。

例如我们用 51ditu jwebunit测试 ,系统提示:



对应代码如下:

import java.io.UnsupportedEncodingException;

import net.sourceforge.jwebunit.WebTestCase;
import junit.framework.TestCase;
import junit.framework.TestResult;
import junit.framework.TestSuite;

public class wwwTest extends WebTestCase {

static String searchLink = "";

public static void main(String[] args) {

searchLink = "驾驶导航";

try {

//很重要,页面为gb2312的一定要转化一下
searchLink = new String(searchLink.getBytes("utf-8"), "utf-8");
} catch (UnsupportedEncodingException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}

TestResult rs = junit.textui.TestRunner.run(new
TestSuite(wwwTest.class));
}

public void setUp() {
getTestContext().setBaseUrl("http://www.51ditu.com");
}

public void testWWWSearch() {
beginAt("/");

}}

windows下, jwebunit 1.2 ,1.3我都测试过,结果相同。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: