我的selenium采用的是python版本。
其实 selenium java版本也类似。
1. 在jenkins里面新建selenium 测试项目。
源码管理采用 “Subversion”,输入 “Repository URL”即可。
找到“构建” –> “增加构建步骤” –> “Execute Windows batch command”。由于我的测试源码都放在src下面,我需要运行的test suite都在testsuite_all.py里面,所以在”命令“中输入”python src estsuites estsuite_all.py“。
找到”构建后操作“ –> ”增加构建后操作步骤” –> “E-mail Notification”。在“Recipients”中输入需要通知的用户邮箱。
点击”保存“按钮。
2. 构建
在项目里,点击”立即构建“即可看到浏览器被打开,selenium 测试用例被执行。
3. 遇到的问题
1) 问题: 构建时提示import时找不到xxx模块。
思路: xxx模块在src下面,但是jenkins只能找到项目路径,不认识项目下的src路径下的东西,所以把src加入python环境变量即可。
解决方案:在testsuite_all.py开头添加如下内容
import sys sys.path.append('src/')
2) 问题: 构建时提示找不到chromedriver.exe
思路: 路径问题。jenkins只认识项目下东西,之前采用./..等相对路径,替换成从src开始写路径。
示例如下:
driver=webdriver.Chrome(executable_path="src/xxx/chromedriver.exe")
4. 部署被测试项目(可选)
如果被测试项目也在jenkins里面进行部署。我们需要在被测试项目build完成之后,自动build selenium测试项目。
在jenkins里面找到被测试项目,点击”配置“。
找到”构建后操作“ –>”增加构建后操作步骤“ -> ”Build other projects“。
在”要构建的项目“中输入 selenium测试项目的名称。
点击”应用“ ,”保存“按钮。
在被测试项目中允许”立即构建“,即可构建被测试项目+执行selenium测试项目。
5. 备注
其实jenkins里面有一些关于selenium的插件,但是我没有找到关于webdriver 的。所以只能通过这种笨方法。