测试类
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选项中的安全选项卡中选中或未在所有区域中未检查。