上篇文章 安装教程 :https://www.cnblogs.com/linuxchao/p/linuxchao-jenkins-setup.html
一.前戏
话说上一篇文章安装完 JDK 和 jenkins 之后 , 在使用的时候遇到了很多问题,现在一一和大家分享一下
二.问题1
1.目的:因为第一次使用jenkins,不太会用,给自己的一个小目标就是执行一个python的脚本
2.过程
前期也没有配置jenkins 直接打开就开始新建任务(过程省略,啥都没配置,只是执行了这样一个命令 python *.py),刚开始学或者已经用过的同学应该能看懂我说的啥。
好,继续,接下来就是【立即构建】,问题来了,执行这么简单的一个脚本既然给我报错。没错了,报错信息意思找不到selenium包
1 ft1.1: ImportError: Failed to import test module: LoginTc 2 Traceback (most recent call last): 3 File "C:\Python36\lib\unittest\loader.py", line 428, in _find_test_path 4 module = self._get_module_from_name(name) 5 File "C:\Python36\lib\unittest\loader.py", line 369, in _get_module_from_name 6 __import__(name) 7 File "D:\Petrochina_Retail_Test_Project\retail\test_case\LoginTc.py", line 11, in <module> 8 from retail.test_case.models.myunit import MyunitTest 9 File "D:\Petrochina_Retail_Test_Project\retail\test_case\models\myunit.py", line 7, in <module> 10 from retail.test_case.models.driver import WDriver 11 File "D:\Petrochina_Retail_Test_Project\retail\test_case\models\driver.py", line 7, in <module> 12 from selenium import webdriver 13 ModuleNotFoundError: No module named ‘selenium‘
3.解决:再IDE中运行这个脚本没有问题,在cmd下运行也没有问题,很伤, 查看各种环境变量 发现没有问题,于是卸载jenkins重新安装试试,发现还是不行,经过几个小时的折腾,发现确实在python安装目录的C:\Python36\Lib\site-packages 下面没有selenium包。之前可能被cmd和IDE给忽悠了,我去找了一下IDE中在哪里引入seleniium包,关键来了,看图:
你现在看到的目录是我改过后的,原来的目录是:c:\users\v-xug\appdata\roaming\python\python36\site-packages 很奇怪为什么会在这,原来是安装的时候我自己设置到了这个目录,导致jenkins在找selenium包找不到,于是把selenium 复制到python的目录里面,再次构建
三.问题2
1.过程:发现新问题了,脚本是执行了而且jenkins控制台也没有报错,但是我的脚本里面有执行打开浏览器的操作,可以实际我并没有看见浏览器被打开,就执行结束了
2.解决:伤心呀!百度。找到这样一篇文章Jenkins调度Selenium脚本不打开浏览器解决办法
于是按照上面步骤开始操作,问题来了 我发现我运行不了java命令,提示信息是说 我的JDK是11 而jenkins 需要运行JDK8 于是卸载JDK 重新安装8的版本。一步一步,都做完之后惊喜的发现真的解决了,很开心! 这篇文章写的很乱,因为好多东西我没有记录,没法看到一些错误信息,但是大体的问题就是这样,希望遇到一样的情况的同学能帮到你一点点小忙。
Jenkins调度Selenium脚本不打开浏览器解决办法
发表于:2016-7-27 10:56 作者:秋寻草 来源:51Testing软件测试网采编
字体:大 中 小 | 上一篇 | 下一篇 |我要投稿 | 推荐标签: 软件测试工具 Jenkins Selenium 自动化测试工具
The web browser doesn‘t show while run selenium test via jenkins
原因:因为jenkins是用windows installer 安装成 windows的服务了,那么jenkins是一个后台服务,所以跑selenium cases 的时候不显示浏览器
解决办法:
Step 1. Control Panel(控制面板) -> Administrative Tools(管理工具) -> Services(服务)
找到Jenkins,右键菜单,执行stop; 右键菜单 “属性” start type 选择“Disabled” 点击 应用,点击确定。(这一步目的:让jenkins不在以windows 服务的方式在后台运行)
Step2. 通过命令行启动Jenkins
java -jar "D:\Program Files (x86)\Jenkins\jenkins.war"
当然,大家也可以做个bat文件,以后每次启动jenkins,双击运行这个bat文件就OK了,bat文件内容如下:
echo "Jenkins CI automation testting"
java -jar "D:\Program Files (x86)\Jenkins\jenkins.war"
pause
Step3. 重新创建Jenkins的Job,重新配置,在执行测试
问题解决了。
注意问题:
(1)通过这种方式启动jenkins,之前以windows service 启动jenkins的数据都丢失了,需要重新创建job。
(2)之前以windows service 启动jenkins中安装的插件也没有了,需要重新安装所需插件。
原文地址:https://www.cnblogs.com/linuxchao/p/linuxchao-jenkins-pro.html