SelenJA是基于selenium+testng 的UI自动化测试框架

网友投稿 824 2022-10-28

SelenJA是基于selenium+testng 的UI自动化测试框架

SelenJA是基于selenium+testng 的UI自动化测试框架

SelenJA

简介

SelenJA是我封装的一个基于selenium+testng的自动化测试框架,使用Jenkins来跑自动化用例,并在Jenkins中使用了Allure插件来显示测试报告

GitHub

https://github.com/Adien-galen/SelenJA 欢迎点star

技术栈

JavamavenseleniumtestngallureJenkins

优点

封装selenium对元素、浏览器的操作,使用起来更简单使用PageObject模式对页面元素和公共操作进行封装环境信息通过读取配置文件获取失败用例重跑使用allure显示测试报告,提供失败截图、操作步骤、期望结果使用testng单元测试框架,方便用例的组织以及运行时参数的传递

一个例子

public class SogouTest extends BaseTest { @Test public void test搜狗搜索(){ String keywords = envProperties.getProperty("keywords"); String sogouUrl = envProperties.getProperty("sogou.url"); driver.get(sogouUrl); SogouPO.search(keywords); //验证搜索结果第一行是否包含“galen2016的博客” String firstResult = OperateElement.waitByXpath("(//*[@class='vrTitle']/a)[1]").getText(); Assert.assertTrue(firstResult.contains("galen2016的博客")); }}

常用API介绍

初始化webdriver

InitDriver.launchChromeDriver() //初始化chromedrive配置,并返回一个driver

元素操作

OperateElement.waitByXpath(String xpath) //通过元素的Xpath,等待元素的出现,返回此元素

OperateElement.waitById(String id) //通过元素的id,等待元素的出现,返回此元素

OperateElement.waitByAttribute(String attribute,String value) //通过元素的某个属性,等待元素的出现,返回此元素

OperateElement.waitElesByXpath(String xpath) //通过元素的xpath,等待元素列表的出现,返回List

OperateElement.waitElesByClassName(String className) //通过元素的className,等待元素列表的出现,返回List

OperateElement.isElementExsitBy(By locator) //判断元素是否存在

OperateElement.sendKeysByXpath(String xpath,String keys) //通过元素的Xpath,等待文本框的出现,并输入

OperateElement.dragAndDropBy(WebElement element,int xOffset,int yOffset) //拖动元素

OperateElement.mouthHover(WebElement ele,int ms) //鼠标悬停

浏览器操作

OperateElement.switchToWindowByIndex(int index) //通过窗口的索引来切换窗口,index从0开始

OperateElement.closeWindowHandleNotFirst() //关闭除了第一个窗口外的其它窗口

OperateElement.acceptAlert() //接收alert

OperateElement.switchToFrameById(String id) //通过frame的ID切换iframe

其它

OperateElement.threadSleep(int timeout) //线程等待,单位:毫秒

安装使用

调用原理

项目结构介绍

主目录:

libs文件夹

存放外部jar包,如jdbc的jar不能通过maven-,就可以直接下下来放到这里,然后在pom.xml里引用

resource文件夹

存放一些资源文件,如测试用例.excel文件

cases包

测试用例文件

common包

pageobject包

对每个测试页面的元素和公共操作封装成一个类

utils包

封装一些实用的工具类,如:读取excel、xml、配置文件,获取随机身份证号码、地址等

env.properties

测试要用到的url、账号密码等可以写在这个文件里面

pom.xml

1、管理jar包 2、配置maven-surefire-plugin插件来运行test包下面的代码

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Vue-Exp,基于 Vue.js 2.0 搭建的 PC 端演示框架
下一篇:AxbasePlugin是轻量级开源Android插件化开发框架
相关文章

 发表评论

暂时没有评论,来抢沙发吧~