记录使用gradle构建selenium+testng自动化测试项目
来源:互联网 发布:淘宝托福答案揭秘 编辑:程序博客网 时间:2024/06/04 18:01
最近入职一家新公司,主要负责做自动化测试,包括WEB Android和iOS
目前的工作能力主要集中在WEB这一块,使用的是通用的Selenium和Testng组合;
以上为背景。
我在以前的项目中没有使用过gradle,所以这个构建工具对我来说是全新的,临时在
网上看了一些基本的,通用的配置,主要是插件,mvn仓库,依赖等,说实话,没什么高深的理论;
然后就是在自己的电脑上安装gradle,配置,并在eclipse中安装gradle插件,完成以上步骤后就可以直接在
eclipse中创建一个gradle项目,首先需要熟悉一下gradle项目的解构,和以前的ant或者maven都有所不同,
不过简单熟悉一下后,会发现没什么特别的;在这个项目中最重要的就是build.gradle这个文件,前面提到的
对于插件,mvn仓库,依赖的配置全部是在这个文件中,后期的管理测试脚本的运行等任务也是在这个文件中;
上面大致的介绍了一下gradle项目的组建,其实这些信息网上到处都是,没什么价值,下面主要记录一下在这个
工程中遇到的问题;
1,编码问题
使用gradle build指令时出现 错误:编码 GBK 的不可映射字符
我在CSDN中查到了解决方法如下:
tasks.withType(JavaCompile) {options.encoding = "UTF-8"}
在这里吐槽一下自己,我是直接将自己的工程集成到jenkins了,在jenkins中build的时候Console Output中
输出上上述错误,我当时以为是jenkins的问题,一直在jenkins上打转,浪费了不少时间,我犯的这个错误说明自己的
思维不缜密,比较武断的做出了错误的判断;
2,第二个问题在于我对于selenium的理解不深入,在以前的项目中,我进入自动化测试小组的时候,框架已经搭建完成,
我主要是使用框架,并没有从零开始搭建一个测试框架,导致我对Selenium的组成,项目的各种依赖问题理解很浅;
这一次从零开始,发现selenium是依赖了很多的jar包的,在build.gradle中配置好maven 仓库以及依赖的包以后,如下:
repositories { // Use jcenter for resolving your dependencies. // You can declare any Maven/Ivy/file repository here. // mavenCentral() // maven { url 'https://mvnrepository.com/artifact/' } }compile group: 'org.seleniumhq.selenium', name: 'selenium-java', version: '2.47.2'compile group: 'org.seleniumhq.selenium', name: 'selenium-server', version: '2.47.2'testCompile group: 'org.testng', name: 'testng', version: '6.11'configurations.all { transitive = true}
以上配置中有三个注意点:
1 ,注意maven仓库的地址的配置,这几天因为19大的原因,很多网站无法正常访问了;
2,注意selenium版本的选择问题,尤其要和测试中使用的firefox的版本一起考虑,不同的selenium版本对不同的firefox版本进行支持
selenium和firefox的兼容性问题也是一个自动化测试中需要小心解决的一个问题;
3,第三项配置是表示依赖的传递性,举个例子,selenium依赖selenium-support,而后者又依赖其他的jar包,将transitive = true添加到文件中会指示gradle
自动的去下载任何被依赖的jar包;
到目前为止,我用selenium最新版3.6,testng 6.11已经成功搭建了框架,目前脚本已经能够成功运行在chrome浏览器上;
只是还存在一个问题:我希望自己的脚本也能够完全运行在chrome,firefox和IE上,只是在配置
使用geckodriver.exe驱动firefox时总是失败,geckodriver.exe能够正常启动firefox,但是启动以后就没有任何其他的动作了,原因目前尚未查明
- 记录使用gradle构建selenium+testng自动化测试项目
- selenium+testng+gitblit+jenkins+ant自动化测试系列十:Jenkins配置自动化持续集成构建
- selenium+testNG-自动化测试环境的搭建
- selenium+testNG-自动化测试环境的搭建
- web自动化测试框架(Selenium+TestNG)
- 自动化测试入门教程(Maven + TestNG + Selenium)
- 自动化测试框架Selenium+java+TestNG
- 自动化测试框架selenium+java+TestNG——TestNG详解
- Selenium终极自动化测试环境搭建:Selenium+Eclipse+Junit+TestNG
- selenium+testng+gitblit+jenkins+ant自动化测试系列三:本地git安装及使用
- Selenium+TestNG Web自动化测试环境搭建9_ANT自动化执行以及testNG报告优化
- 基于TestNG 与Selenium 的自动化测试设计与实施
- 基于TestNG与Selenium 的自动化测试设计与实施
- 基于TestNG 与Selenium 的自动化测试设计与实施
- 基于TestNG 与Selenium 的自动化测试设计与实施
- 基于TestNG 与Selenium 的自动化测试设计与实施
- Eclipse+TestNG+ant+selenium++jenkins+svn自动化测试框架搭建
- selenium+java+testNG+pageObject深入理解自动化测试框架
- 5、Python 处理 yaml 文件
- 关于一行文字超出显示省略号不生效的问题!~最新版谷歌(61.0以上版本)问题
- Java中hashCode的作用
- 工业串口迪文屏开发
- 网络常用命令1——Netstat命令
- 记录使用gradle构建selenium+testng自动化测试项目
- Java 集合深入理解(4):List<E> 接口
- CentOS中的环境变量配置文件
- okhttp封装
- JQuery——Ajax之实例开发步骤
- Android Sensor详解(9)Sensor ADSP Sensor1 api使用
- 第八周项目三 对矩阵的压缩存储2
- eclipse非正常关闭后不能启动
- React Native授权协议的解决方案