当前位置:网站首页>【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();
}
边栏推荐
猜你喜欢

VMD combined with ISSA to optimize LSSVM power prediction

如何用matlab做高精度计算?【第二辑】

基于EEMD+GRU+MLR的时间序列预测

Computer software: recommend a disk space analysis tool - WizTree
![(19)[系统调用]SSTD hook 阻止关闭](/img/73/e9d591af366db17965d0bf1cf192b7.png)
(19)[系统调用]SSTD hook 阻止关闭

小猫爪:AWR294x学习笔记02-AWR294x之DPM&IPC

Produce definition 产品与行业分析 勤于思考 善于总结 强于表达

ERROR 2003 (HY000) Can‘t connect to MySQL server on ‘localhost3306‘ (10061)解决办法

在线问题反馈模块实战(十八):实现excel台账文件记录批量导入功能

MySQL错误-this is incompatible with sql_mode=only_full_group_by完美解决方案
随机推荐
MySQL错误-this is incompatible with sql_mode=only_full_group_by完美解决方案
MySQL复制表结构、表数据的方法
代码小变化带来的大不同
JVM 快速检测死锁
舍不得花钱买1stOpt,不妨试试这款免费的拟合优化神器【openLU】
Database knowledge: SQLServer creates non-sa user notes
有趣的USB接口和颜色分类
在线问题反馈模块实战(十八):实现excel台账文件记录批量导入功能
Nacos 原理
DOM的12中节点类型,通过关系或方法获取DOM节点,渲染到浏览器页面的一些特效功能,获取DOM节点来改变属性,点击图片,切换为所点击的图片为背景图,页面上的表单验证,点击底部导航栏切换界面
Provide 和 Inject 的用法
ES6新语法:symbol,map容器
Promise.all 使用方法
布隆过滤器
set集合
fanuc机器人IO分配报警信号分配无效
Online public account article content to audio file practical gadget
花了近70美元入手的学生版MATLAB体验到底如何?
指定区域内随机填充圆之matlab实现
对象的扩展补充