给定 3 个使用给定 URL 进行测试的 Web 应用程序:
- www.A.com
- www.B.com
- www.C.com
如何继续设计一种使用 Selenium 对这三种浏览器运行单个 TestNG 测试并打印结果的方法。
当前策略:
我有一个带有 main 方法的 java 类,一个包含上面列出的 3 个 url 的属性文件。
在这个类中,我有一个 while 循环来解析这些属性文件,如下面的代码片段,并且对于每个 url,以编程方式调用一个 ant 任务,该任务自动执行从编译到测试运行再到结果归档的构建。问题是第一次运行完成后,它不会返回到 while 循环再次执行。你可能会问为什么我要运行三遍。已经解释过的想法是能够自动对多个网站运行一套测试并打印输出结果而无需干预。
代码片段
try {
reader = new BufferedReader(new FileReader(new File(filename)));
} catch (FileNotFoundException e) {
e.printStackTrace();
}
try {
while((line=reader.readLine()) != null){
//call ant target to archive result
userprops.setProperty("url", line);
org.apache.tools.ant.Main.start(target, userprops, loader);
}
}catch (IOException e) {
e.printStackTrace();
}
我希望有人理解我想要做什么,并能帮助我理解为什么 while 循环在第一次测试运行后终止。也许还可以使用 TestNG 提供另一种更简单的策略。
谢谢大家。你们摇滚!!
最佳答案
在我看来,如果你使用 ANT,你就不应该需要你的类(class)。我将只使用三个目标并在这些目标中分配不同的属性。
关于java - 如何使用 Selenium 和 TestNG 对多个站点运行一个测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4940271/