2.6.2 XML配置:使用testNG进行并发多浏览器测试
测试类
|
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选项中的安全选项卡中选中或未在所有区域中未检查。
2.6.2 XML配置:使用testNG进行并发多浏览器测试的更多相关文章
- testng.xml 配置大全
1.TestNG的运行方式如下: 1 With a testng.xml file 直接run as test suite 2 With ant 使用ant 3 From the command li ...
- Maven 配置 Selenium + testNG + reportNG 运行环境
.markdown-preview:not([data-use-github-style]) { padding: 2em; font-size: 1.2em; color: rgb(56, 58, ...
- Bean的基于XML配置方式
基于XML配置 Beans.xml <?xml version="1.0" encoding="UTF-8" ?> <beans xmlns= ...
- 基于@AspectJ注解配置切面与基于XML配置切面
1. Waiter目标类 package com.smart.aop.advice.pointcut; public class Waiter { public void greetTo(String ...
- Mybatis XML配置
Mybatis常用带有禁用缓存的XML配置 <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE ...
- SpringMvc的xml配置与annotation配置的例子的区别
1.导入jar包时,要在xml配置基础上加 spring-aop-4.2.2.RELEASE.jar (注解的时候需要) 2.编写controller的时候要annotation需要做相关配置即红色部 ...
- Hibernate实现有两种配置,xml配置与注释配置
hibernate实现有两种配置,xml配置与注释配置. (1):xml配置:hibernate.cfg.xml (放到src目录下)和实体配置类:xxx.hbm.xml(与实体为同一目录中) < ...
- java web.xml配置详解
1.启动一个WEB项目的时候,WEB容器会去读取它的配置文件web.xml,读取<listener>和<context-param>两个结点. 2.紧急着,容创建一个Servl ...
- 关于xml配置实现AOP的小知识
除了前面介绍的基于JDK1.5的注解方式来定义切面,切入点和增强处理外,Spring AOP也允许直接使用XML配置文件来管理它们.在JDK1.5之前,只能使用配置文件的方式来管理,在Spring2. ...
随机推荐
- Cognex925B的使用方法
一.Cognex925B的简介 Cognex925B是一款线激光扫描传感器,利用激光三角的原理测量Z方向的断差. 二 ...
- [转载]Yacc基础
原文:https://www.ibm.com/developerworks/cn/linux/sdk/lex/index.html,摘录部分内容. Yacc的定义 Yacc 代表 Yet Anothe ...
- Laravel 查询或写入Enum字段出错的bug解决办法
查询: if($request->filled('type')){ $where[] = ['type', strval(intval($request->input('type')))] ...
- java实现spark常用算子之Repartitions
import org.apache.spark.SparkConf;import org.apache.spark.api.java.JavaRDD;import org.apache.spark.a ...
- LeetCode:182.查找重复的电子邮箱
题目链接:https://leetcode-cn.com/problems/duplicate-emails/ 题目 编写一个 SQL 查询,查找 Person 表中所有重复的电子邮箱. 示例: +- ...
- STM32F10xxx_异常与中断
STM32F10xxx_异常与中断 [TOC] 更新记录 version status description date author V1.0 C Create Document 2018.10.2 ...
- 第二十六篇 jQuery 学习8 遍历-父亲兄弟子孙元素
jQuery 学习8 遍历-父亲兄弟子孙元素 jQuery遍历,可以理解为“移动”,使用“移动”还获取其他的元素. 什么意思呢?老师举一个例子: 班上30位同学,我是新来负责教这个班学生的老师 ...
- Java反射【四、成员变量的反射和构造的反射】
获取一个类下所有字段信息 Field[] fs = c.getFields(); 获取所有字段(public) Field[] fs = c.getDeclaredFields(); 获取所有声明字段 ...
- 安装docker fastdfs
# step 1: 安装必要的一些系统工具 sudo yum install -y yum-utils device-mapper-persistent-data lvm2# Step 2: 添加软件 ...
- 8.Dropout
import tensorflow as tf from tensorflow.examples.tutorials.mnist import input_data #载入数据集 mnist = in ...