受同学之托,帮忙解析xml文件 使用selenium rc实现自动测试,对于我来说在java方面就是个刚入门的新手。不过还好,查查资料文档,动动手就可以搞定了。这个解析xml的方法也不外乎那几种,为了他能看懂尽快入手,就选取了DOM解析方法。因为要做个测试登陆的案例,所以需要有账号密码,上代码
public void DomParse(String xmlFile){
DocumentBuilderFactory docbf = DocumentBuilderFactory.newInstance();
try {
DocumentBuilder builder = docbf.newDocumentBuilder();
Document doc = builder.parse(xmlFile);
NodeList list = doc.getElementsByTagName("TestCase");
for (int i = 0; i < list.getLength(); i++) {
username = doc.getElementsByTagName("username").item(i).getFirstChild().getNodeValue();
password = doc.getElementsByTagName("password").item(i).getFirstChild().getNodeValue();
//自动测试帐号密码的函数调用
test(username,password);
}
} catch (ParserConfigurationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SAXException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
使用selenium实现自动测试,我就是写了个模板,只需要稍微修改就可以用到各个地方
private void test(String username, String password) {
// TODO Auto-generated method stub
String url="http://www.baidu.com";
Selenium selenium = new DefaultSelenium("localhost", 4444, "*iexplore", url);
selenium.start();
selenium.open("/");
selenium.type("kw",username);
selenium.click( "su");
selenium.waitForPageToLoad("30000");
selenium.stop();
}
利用testNG测试框架 写个测试类
public class LoginTest {
@Test
public void test() {
XmlParse domxml= new XmlParse();
domxml.DomParse("data.xml");
}
}
<?xml version="1.0" encoding="UTF-8"?>
<TestData>
<TestCase>
<username>cheng</username>
<password>dfhl</password>
</TestCase>
<TestCase>
<username>hong</username>
<password>9191</password>
</TestCase>
</TestData>
执行测试类时,要启动selenium服务,通过命令提示符运行java -jar selenium-server.jar开启服务,然后运行,会看到百度输入框中填充了xml文件中username的文本,并单击了搜索按键,跳转到了显示搜索结果的页面,因为有两个节点,所以弹出两个搜索框。