一.问题一:找不到包
1.因为刚使用Jenkins,不太会用,小目标就是执行个Python的脚本
2.前期也没有配置Jenkins直接打开就开始新建Job,啥都没配置,只是执行这样命令python*.py
3.接下来就是【立即构建】,执行这么简单的脚本既然给报错,报错找不到selenium包
ft1.1: ImportError: Failed to import test module: LoginTc
Traceback (most recent call last):
File "C:\Python36\lib\unittest\loader.py", line 428, in _find_test_path
module = self._get_module_from_name(name)
File "C:\Python36\lib\unittest\loader.py", line 369, in _get_module_from_name
__import__(name)
File "D:\Petrochina_Retail_Test_Project\retail\test_case\LoginTc.py", line 11, in <module>
from retail.test_case.models.myunit import MyunitTest
File "D:\Petrochina_Retail_Test_Project\retail\test_case\models\myunit.py", line 7, in <module>
from retail.test_case.models.driver import WDriver
File "D:\Petrochina_Retail_Test_Project\retail\test_case\models\driver.py", line 7, in <module>
from selenium import webdriver
ModuleNotFoundError: No module named 'selenium'
二.解决办法
1.在IDE中运行脚本没有问题,在cmd下运行也没有问题,查看环境变量发现没有问题
1.1.于是卸载jenkins重新安装试试,发现还是不行
1.2.最后发现在python安装目录的C:\Python36\Lib\site-packages下面没有此包
1.3.最后去找了下在IDE中哪里引入seleniium包
2.现在的目录是改过后的
2.1.原来的目录是:c:\users\v-xug\appdata\roaming\python\python36\site-packages
2.2.原来是安装的时候自己设置到了这个目录,导致Jenkins在找selenium包找不到
2.3.于是把selenium复制到python的目录里面,再次构建成功
三.问题二:无法打开浏览器
1.脚本里面有执行打开浏览器的操作,可以实际并没有看见浏览器被打开就执行结束
2.问题:Jenkins执行Selenium脚本不打开浏览器
2.1.The web browser doesn't show while run selenium test via jenkins
2.1.1.因为Jenkins是用windows installer安装成windows的服务,那么Jenkins是个后台服务
2.1.2.所以跑selenium cases的时候不显示浏览器
3.解决办法
3.1.Control Panel(控制面板)-Administrative Tools(管理工具)-Services(服务)
3.2.1.找到Jenkins右键菜单执行stop,右键菜单属性start type选择Disabled点击应用,点击确定
3.2.2.这一步目的是让Jenkins不在以windows服务的方式在后台运行
3.2.3.通过命令行启动Jenkins:java -jar "D:\Program Files (x86)\Jenkins\jenkins.war"
3.2.4.1.当然也可以做bat文件,以后每次启动Jenkins,双击运行bat文件就OK
3.2.4.2.bat文件内容
echo "Jenkins CI automation testting"
java -jar "D:\Program Files (x86)\Jenkins\jenkins.war"
pause
3.2.5.重新创建Jenkins的Job,重新配置后在执行测试问题解决
4.注意问题
4.1.通过这种方式启动Jenkins,之前以windows service启动Jenkins的数据都丢失,需要重新创建job
4.2.之前以windows service启动Jenkins中安装的插件也没有,需要重新安装所需插件