这里没有概念,只有一步一步的实践。
对于什么是Maven,什么是TestNG,什么是Jenkins,请自学~~
创建Maven项目
新建一个Maven项目:
File -> New -> Project -> Maven -> Check "Create from archetype" -> Choose "mave-archetype-quickstart"。
![](https://img.haomeiwen.com/i7681365/f3c4d0de17b20744.png)
填写"Name","Location","GroupId","ArtifactId","Version"(都是自定义的)。
![](https://img.haomeiwen.com/i7681365/91a093cfb4804c71.png)
"User settings file"和"Local repository"的路径都可以自定义,它们各自是用来干啥的,请自学。
![](https://img.haomeiwen.com/i7681365/a004cc176e871934.png)
创建完成后,可以看到这样的一个example的maven project。
![](https://img.haomeiwen.com/i7681365/b333ee6175ad3680.png)
写测试的过程中,必然会用到很多依赖,比如selenium。
添加依赖:
Code -> Generate -> Dependency
![](https://img.haomeiwen.com/i7681365/8fff66f6f1953189.png)
选择"Dependency"。
![](https://img.haomeiwen.com/i7681365/bd890b4801da0068.png)
在"Search for artifact"输入所需依赖的名称,选中相应的版本进行添加。
![](https://img.haomeiwen.com/i7681365/1fd085b2b90a94c3.png)
"selenium-java"的依赖就被添进了pom.xml中。
![](https://img.haomeiwen.com/i7681365/66f3ce6296ec79b8.png)
添加完成后,需要点击右上角带"m"字样的图标,相应的依赖才会被下载到本地。
![](https://img.haomeiwen.com/i7681365/c75577d649ce1b0f.png)
同步完成后,可以看到相应的Libraries被添加到本地。
![](https://img.haomeiwen.com/i7681365/15660db1a6ca3b37.png)
相应的文件可以在前边步骤设置的"Local repository"路径里找到,如果没有改,默认是在".m2/repository/"路径下。
![](https://img.haomeiwen.com/i7681365/573e83a712c2129f.png)
TestNG例子
这里给出一个简单的通过百度进行搜索的例子,里边用到了TestNG的注解、参数化配置、自带的Report,更多其他应用,需要根据实际项目进行有针对性地学习和应用。
代码:
![](https://img.haomeiwen.com/i7681365/719b436dda6167cd.png)
TestNG的配置文件例子。
![](https://img.haomeiwen.com/i7681365/fa009cd17c3c6c71.png)
Enable TestNG report的方法。
![](https://img.haomeiwen.com/i7681365/f2ca4c1efe759d85.png)
勾选"Use default reporters"选项。
![](https://img.haomeiwen.com/i7681365/2e5635ef8f94cb07.png)
执行测试之后,可以看到自动生成了"test-output"文件夹。
需要特别注意的是,由于用到了TestNG的参数化配置,执行测试的时候,需要右键testng.xml(也就是你自定义的TestNG的配置文件,这里只是我的例子中将配置文件命名为testng.xml)来执行测试。
![](https://img.haomeiwen.com/i7681365/1364d934accfa230.png)
通过访问"index.html"文件,可以看到测试执行结果。
![](https://img.haomeiwen.com/i7681365/7b0e3ca5ab5a2ece.png)
由于后面需要与Jenkins结合,所以,需要在pom.xml中"maven-surefire-plugin"下添加testng配置文件的信息。
![](https://img.haomeiwen.com/i7681365/9502dee5cf2793d0.png)
Jenkins
1. Jenkins安装和配置
下载"jenkins.war"文件。
https://www.jenkins.io/download/
在命令行输入"java -jar jenkins.war"命令,启动Jenkins。
![](https://img.haomeiwen.com/i7681365/ff207d8de035c139.png)
当在terminal里看到"Jenkins is fully up and running",就可以在浏览器通过localhost:8080来访问Jenkins。
页面打开之后,需要你输入管理员密码(Administrator password),这个密码从页面上显示的文件里获得。
![](https://img.haomeiwen.com/i7681365/3c99a9055d63927f.png)
安装Plugin。(如果不确定安装什么plugin,选择"Install suggested plugins"先安装一些它建议的plugin就好。)
![](https://img.haomeiwen.com/i7681365/9eaabf63ad460443.png)
![](https://img.haomeiwen.com/i7681365/af309230cf8cc0cb.png)
Plugin安装好之后,会弹出创建管理员用户的的界面,以后可以使用这个用户进行登录。
![](https://img.haomeiwen.com/i7681365/6d746c39c9b7046c.png)
可以使用默认URL。
![](https://img.haomeiwen.com/i7681365/052d01353abf9c92.png)
![](https://img.haomeiwen.com/i7681365/9d3a6775956eba91.png)
2. Jenkins安装和配置
点"Manage Jenkins"对Jenkins进行配置。
![](https://img.haomeiwen.com/i7681365/74c8ef5a38075ea6.png)
选择"Global Tool Configuration"。
![](https://img.haomeiwen.com/i7681365/0cbe0dafb0381c8c.png)
添加Java和Maven的Home路径。
![](https://img.haomeiwen.com/i7681365/f4b41dc212d653c8.png)
选择"Manage Plugins",安装"Maven Integration plugin"。
![](https://img.haomeiwen.com/i7681365/5b82e567ce5a0aeb.png)
安装完毕会跳出等待页面,稍等一会儿。
![](https://img.haomeiwen.com/i7681365/cca44689acd07ca1.png)
3.Jenkins与Maven项目集成
GitHub上生成新token。
"Settings -> Developer settings -> Personal access token -> Generate new token"。
![](https://img.haomeiwen.com/i7681365/027e6f8788ac602c.png)
勾选"repo"和"admin:repo_hook"。
![](https://img.haomeiwen.com/i7681365/9504c46845fe6fbd.png)
把生成的token保存到本地,因为再次进到这里,就看不见了,后边会用到这个token。
![](https://img.haomeiwen.com/i7681365/cc233c69ad61e59f.png)
到指定的项目中。
"Settings -> Webhooks -> Add webhook"。
![](https://img.haomeiwen.com/i7681365/a72cd65450c56243.png)
输入Payload URL。
http://<Jenkins server IP>:8080/github-webhook/
![](https://img.haomeiwen.com/i7681365/3b982c9e91f265c2.png)
回到Jenkins。
"Manage Jenkins -> Configuration System"。
![](https://img.haomeiwen.com/i7681365/42260d400ebb2b01.png)
添加GitHub server。
![](https://img.haomeiwen.com/i7681365/9dde58c478376957.png)
Name自定义,API URL默认,点击"Add"添加Credential。
![](https://img.haomeiwen.com/i7681365/a703d377e266dee4.png)
"Kind"选成"Secret text","Secret"部分将之前在GitHub上生成的token填写进去。
![](https://img.haomeiwen.com/i7681365/57f7746019e28874.png)
将"Credentials"部分选成添加的Credential,然后点击"Test connection"测试一下Jenkins跟GitHub的是否连接成功。
注意:默认Credentials部分选中的是"None",一定要手动改成自己创建的Credential。
![](https://img.haomeiwen.com/i7681365/385c1f681c07b883.png)
新建构建项目。
"New item"。
![](https://img.haomeiwen.com/i7681365/4c6b7b61efd5ee33.png)
自定义项目名称,然后选择"Maven project"。
![](https://img.haomeiwen.com/i7681365/14d23d800ba07b4a.png)
"General"部分:
- 可以写一些描述。
-
勾选"GitHub project",填写项目所在的GitHub的URL。
13.png
"Source Code Management"部分:
- 选择"Git"。
- "Repository URL"填写项目的git地址。
- "Credentials"添加登录GitHub的用户名和密码,并选择所添加的Credential(默认选中的是"None")。
- "Repository browser"部分选择"githubweb"。
-
"URL"部分填写项目所在的GitHub的URL。
14.png
"Build Triggers"部分选择在什么情况下进行trigger。
![](https://img.haomeiwen.com/i7681365/1d3cdf65d71d7376.png)
也可以通过规则,周期性地进行trigger。
![](https://img.haomeiwen.com/i7681365/e4ec6c8511ff1966.png)
"Build Environment"部分勾选"Use secret text(s) or file(s)"。
![](https://img.haomeiwen.com/i7681365/57afb43cd6a88cca.png)
"Binding"部分:
"Add -> Secret text"。
![](https://img.haomeiwen.com/i7681365/aed8c8c27e077e8f.png)
"Credentials"部分选择之前的secret text。
![](https://img.haomeiwen.com/i7681365/c4a146593c58be85.png)
"Build"部分填写pom.xml。
![](https://img.haomeiwen.com/i7681365/6cea9245383b9015.png)
保存以上配置之后,进入所创建的构建项目,点击"Build Now"。
![](https://img.haomeiwen.com/i7681365/90be87962f862ea9.png)
相应的测试会在Build成功之后自动运行。
可以从"Console Output"看到整个过程的日志。
![](https://img.haomeiwen.com/i7681365/ad050ebdb6db0f7f.png)
网友评论