当前位置:网站首页>【selenium自动化】第四篇,结合testNg
【selenium自动化】第四篇,结合testNg
2022-08-04 06:04:00 【linrui7】
一、添加testNg pom依赖
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.9.10</version>
</dependency>
二、使用 入参形式
@BeforeTest
public static void init() {
System.out.println("-----初始化webdriver.chrome.driver-----");
System.setProperty("webdriver.chrome.driver", "chromedriver");
}
@Test(description = "",dataProvider = "uid")
public static void test06(int id,int vlue) throws InterruptedException {
WebDriver webDriver = new ChromeDriver();
webDriver.get("https://mail.qq.com/");
webDriver.switchTo().frame("login_frame");
webDriver.findElement(By.id("u")).sendKeys(vlue + "");
webDriver.switchTo().defaultContent();
webDriver.findElement(By.linkText("基本版")).click();
Thread.sleep(5000);
webDriver.quit();
}
@DataProvider
public Object[][] uid(){
Object[][] objects=new Object[][]{
{
1,88888},
{
2,99999},
{
3,12345}
};
return objects;
}
三、使用群组,只执行部分
<suite name="suite" verbose="1" >
<test name = "test" >
<groups>
<run>
<include name = "group1" />
</run>
</groups>
<packages>
<package name = "com.linrui.Day03" />
</packages>
<classes>
<class name="com.linrui.Day03" />
</classes>
</test>
</suite>
@Test(description = "",dataProvider = "uid",groups = "group1")
public static void test07(int id,int vlue) throws InterruptedException {
WebDriver webDriver = new ChromeDriver();
webDriver.get("https://mail.qq.com/");
webDriver.switchTo().frame("login_frame");
webDriver.findElement(By.id("u")).sendKeys(vlue + "");
webDriver.switchTo().defaultContent();
webDriver.findElement(By.linkText("基本版")).click();
Thread.sleep(5000);
webDriver.quit();
}
四、多窗口切换
@Test(description = "")
public static void test08() throws InterruptedException {
WebDriver webDriver = new ChromeDriver();
webDriver.get("https://baidu.com/");
String windowHandle1 = webDriver.getWindowHandle();
webDriver.findElement(By.xpath("//*[@id=\"s-hotsearch-wrapper\"]/div/a[1]/div")).click();
webDriver.getWindowHandles().forEach(value -> {
System.out.println(windowHandle1 + "\r\n" + value);
webDriver.switchTo().window(value);
if (!value.equals(windowHandle1)) {
System.out.println("URL:" + webDriver.getCurrentUrl());
}
});
Thread.sleep(5000);
webDriver.quit();
}
边栏推荐
- Different lower_case_table_names settings for server (‘1‘) and data dictionary (‘0‘) 解决方案
- Implementation of ICEEMDAN Decomposition Code in MATLAB
- LAN技术-3iStack
- MMDeploy部署实战系列【第三章】:MMdeploy pytorch模型转换onnx,tensorrt
- 关于我写的循环遍历
- Error EPERM operation not permitted, mkdir ‘Dsoftwarenodejsnode_cache_cacach两种解决办法
- 七夕送礼,心愿直抵!
- npm包发布与迭代
- MySQL基础(DDL、DML、DQL)
- 花了近70美元入手的学生版MATLAB体验到底如何?
猜你喜欢
随机推荐
西门子PLC1200与fanuc机器人进行profibus通讯
HbuilderX 启动微信小程序 无法打开项目
Transform 相对位置变换,坐标系转换
mysql:列类型之float、double
mysql月份比較是否相等
Unable to preventDefault inside passive event listener due to target being treated as passive. See
MySQL大总结
2022年7月总结
mysql锁机制
如何画好业务架构图。
小猫爪:AWR294x学习笔记02-AWR294x之DPM&IPC
MySQL配置文件配置
unity webgl报 Uncaught SyntaxError: JSON.parse: unexpected character at line 1 column 1 of the JSON
pycharm专业版使用
数组的一些方法
nacos 返回 403 unknown user 太他么坑了 源码解析
带你了解一下PHP搭建的电商商城系统
MySQL(4)
如何用matlab做高精度计算?【第三辑】(完)
fanuc机器人IO分配报警信号分配无效









