TestNG并发兼容性测试
2024-09-04 03:42:05
Web测试项目中经常进行浏览器兼容性相关的测试工作,因为兼容性测试的工作重复性相当高,所以导致手工测试效率低下测试人员积极性降低。TestNG提供了并发执行测试用例的功能,可以让测试用例以并发的形式执行,实现测试不同浏览器的兼容性测试。
下面代码中分别使用Chrome、Firefox和IE浏览器,TestNG以并发方式去百度搜索“selenium”然后校验搜索结果。
测试类中代码:
package com.selenium; import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.ie.InternetExplorerDriver;
import org.testng.annotations.Parameters;
import org.testng.annotations.BeforeClass;
import org.testng.Assert;
import org.testng.annotations.AfterClass;
import org.testng.annotations.Test; public class TestNGBingfa {
WebDriver driver; @Parameters("browser")
@BeforeClass
public void BeforeClass(String Browser){
//判断Browser等于chrome。equalsIgnoreCase()方法比较两个字符串是否相等(不区分大小写)
if(Browser.equalsIgnoreCase("chrome")){
System.setProperty("webdriver.chrome.driver","E:\\chromedriver.exe");
driver=new ChromeDriver();
}
else if(Browser.equalsIgnoreCase("firefox")){
System.setProperty("webdriver.firefox.bin","D:\\Firefox\\firefox.exe");
driver=new FirefoxDriver();
}
else{
System.setProperty("webdriver.ie.driver", "E:\\IEDriverServer.exe");
driver=new InternetExplorerDriver();
}
} @Test
public void test() throws InterruptedException{
driver.get("https://www.baidu.com");
driver.findElement(By.xpath("//*[@id='kw']")).sendKeys("selenium");
driver.findElement(By.xpath("//*[@id='su']")).click();
//获取页面上的资源
String sourcetext=driver.getPageSource();
//校验搜索结果是否包含 selenium
Assert.assertTrue(sourcetext.contains("selenium"));
} @AfterClass
public void Aftercalss(){
driver.quit();
}
}
testng.xml文件的配置内容
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Suite" parallel="tests" thread-count="3">
<!-- 谷歌浏览器 -->
<test name="chrome">
<parameter name="browser" value="chrome"></parameter>
<classes>
<class name="com.selenium.TestNGBingfa"/>
</classes>
</test>
<!-- 火狐浏览器 -->
<test name="firefox">
<parameter name="browser" value="firefox"></parameter>
<classes>
<class name="com.selenium.TestNGBingfa"></class>
</classes>
</test>
<!-- IE浏览器 -->
<test name="ie">
<parameter name="browser" value="ie"></parameter>
<classes>
<class name="com.selenium.TestNGBingfa"></class>
</classes>
</test>
</suite>
最新文章
- [转]AS3 int uint Number
- 十五天精通WCF——第八天 对“绑定”的最后一点理解
- 【原】安装mongo的php插件
- VMware中安装CentOS7网络配置静态IP地址,常用配置和工具安装
- RMI、RPC、SOAP通讯技术介绍及比对 - XML/SOAP
- eclipse创建maven模块工程
- 关于HTTP返回码301、302区别与SEO
- 常见的IE6兼容以及css兼容
- 根据标点符号分行,StringBuilder的使用;将字符串的每个字符颠倒输出,Reverse的使用
- iOS 面试题集合
- Hibernate 、多表关联映射 - 一对一关系映射(one- to-one)
- ThinkPHP第十二天(Import导入第三方类库方法,独立分组文件夹结构)
- MySQL 关于性能的参数配置梳理
- VSCode Snippet 小试牛刀
- Confluence 6 数据库 JDBC 驱动
- Egret 项目文件夹配置和基本容器、动画
- php创建桌面快捷方式实现方法
- WPF Demo17 数据绑定
- postman的巨坑 之 cookie
- Java-小技巧-004-jdk时间,jdk8时间,joda,calendar,获取当前时间前一周、前一月、前一年的时间