selenium+testNG+Maven

selenium环境配置

安装配置JDK
下载jar包各版本下载地址后解压至文件夹
下载chrome对应webdriver
webdriver版本对应


selenium使用或使用maven

新建project后若要使用则需导入
右击项目–>build Path–>add external–>选择本地的selenium解压位置(包括lib中的所有jar包)
在这里插入图片描述


工作原理

selenium工作原理
初始化service,通过webdriver启动浏览器驱动chromeDriver.exe
浏览器驱动会打开对应的浏览器,打开过程是向浏览器驱动程序发送http请求,浏览器驱动解析请求,打开浏览器,并返回sessionid,如果需要对浏览器操作需要携带此id
浏览器绑定特定端口【查看】,把启动的浏览器作为webdriver的远程服务器
所有的selenium操作,浏览器会解析该操作,并执行相应操作


优势

多浏览器 IE/谷歌/火狐
开源
浏览器内运行,一般不用再额外设置cookie,模仿用户操作
多平台 java/eclipse
api齐全


元素定位

八大定位
id
xPath By.xpath("//*[@id=\"signup-form\"]/div[2]/input")
name By.name("email")
tagName <input ></input>
linkText
在这里插入图片描述
className class ="group"
partialLinkText 类似linkText 但只截取部分字段
cssSelector


等待
 Thread.sleep(2);//等两秒 强制等待	  
 WebDriverWait wait2 =new WebDriverWait(driver, 5);  //显示等待  特定页面进行等待
 wait2.until(ExpectedConditions.presenceOfAllElementsLocatedBy(By.partialLinkText("后端")));
//隐式等待  在规定时间内要等待页面所有元素都加载出来才会进行下一步  生命周期为整个driver都起作用,只需要设置一次全局的,一般不用
 driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);
常见元素处理

输入框操作:

driver.findElement(By.name("email")).sendKeys("15838256983");
driver.findElement(By.name("email")).isDisplayed();//元素是否用户可见
driver.findElement(By.name("email")).clear();//清空输入框
driver.findElement(By.name("email")).getAttribute("type");//查看元素的某些属性

TestNG

testng数据驱动的两种方法

testng.xml配置
使用Dataprovider
Dataprovider详解

testng.xml配置详情

testng详情
class 运行不运行
method 运行/不运行
package 详情


Maven

1、使用maven的pom文件驱动testng.xml注意事项
在这里插入图片描述
在这里插入图片描述
2、报maven update project error ----problems
项目右击–maven–update project–默认点击ok
3、多次操作造成的环境问题
对环境重置
project—clean—默认点击clean
在这里插入图片描述
maven clean
pom.xml文件–run as --maven clean


HTML基础

请求
请求行 请求头 空行 请求体
响应


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值