测试类
1
|
@Parameters ( "browser" ) 定义browser参数。 在测试执行过程中,browser参数具体值由XML文件进行传递。 |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
...... public class TestNGClass { private WebDriver driver; private String URL = "http://www.calculator.net" ; @Parameters ( "browser" ) @BeforeTest public void beforeTest(String browser) { if (browser.equalsIgnoreCase( "firefox" )) { System.out.println( " Executing on FireFox" ); //Firefox不需要设置驱动。 webdriver无法打开Firefox时,增加此行代码设定Firefox浏览器的所在路径即可 System.setProperty( "webdriver.firefox.bin" , "C:\Program Files (x86)\Mozilla Firefox\firefox.exe" ); driver = new FirefoxDriver(); } else if (browser.equalsIgnoreCase( "chrome" )) { System.out.println( " Executing on CHROME" ); System.setProperty( "webdriver.chrome.driver" , "D:\chromedriver.exe" ); driver = new ChromeDriver(); } else if (browser.equalsIgnoreCase( "ie" )) { System.out.println( "Executing on IE" ); System.setProperty( "webdriver.ie.driver" , "D:\IEDriverServer.exe" ); driver = new InternetExplorerDriver(); } else { throw new IllegalArgumentException( "The Browser Type is Undefined" ); } driver.get(URL); driver.manage().timeouts().implicitlyWait( 10 , TimeUnit.SECONDS); driver.manage().window().maximize(); } @Test ...... @AfterTest ...... } |
XML文件
1
|
parallel:是否多线程并发运行测试。可选项目: false /methods/tests/classes/intances |
1
|
thread-count<br><br><br> |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
<suite name= "TestNGSuite" parallel= "tests" thread-count= "2" > <!--suite name 自定义的测试集合名称 --> <test name= "IETest" > <!--test name 定义测试名称 --> <parameter name= "browers" value= "ie" > <classes> <!--test name 定义被运行的测试类 --> < class name= "cn.gloryroad.NewTest" /> </classes> </parameter> </test> <test name= "ChromeTest" > <parameter name= "browers" value= "ie" > <classes> < class name= "cn.gloryroad.NewTest" /> </classes> </parameter> </test> </suite> |
通过对XML文件进行右键点击执行脚本,然后选择 'Run As' >> 'TestNG' 方式,如下图所示。
输出
所有的浏览器将平行展开,结果将被打印在控制台上。
如果执行不成功,直接输出 Skips Failures 。可以查看下 测试类文件中的URL、 @Parameters参数 、方法参数 是否写错了
注:对于我们在IE浏览器执行成功确保复选框“启用保护模式”下的“IE选项中的安全选项卡中选中或未在所有区域中未检查。