如何使用Selenium和TestNG对多个站点运行一个测试

时间:2011-02-09 00:45:21

标签: java eclipse selenium ant testng

鉴于3个测试的Web应用程序具有给定的URL:

  • 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提供另一种更简单的策略。

谢谢伙计们。你们摇滚!!

1 个答案:

答案 0 :(得分:0)

在我看来,如果你使用ANT,你不应该需要你的课程。我只想使用三个目标并在这些目标中分配不同的属性。