jenkins使用开始踩坑

Posted linuxchao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jenkins使用开始踩坑相关的知识,希望对你有一定的参考价值。

上篇文章 安装教程 :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:Python36libunittestloader.py", line 428, in _find_test_path
 4     module = self._get_module_from_name(name)
 5   File "C:Python36libunittestloader.py", line 369, in _get_module_from_name
 6     __import__(name)
 7   File "D:Petrochina_Retail_Test_Project
etail	est_caseLoginTc.py", line 11, in <module>
 8     from retail.test_case.models.myunit import MyunitTest
 9   File "D:Petrochina_Retail_Test_Project
etail	est_casemodelsmyunit.py", line 7, in <module>
10     from retail.test_case.models.driver import WDriver
11   File "D:Petrochina_Retail_Test_Project
etail	est_casemodelsdriver.py", line 7, in <module>
12  from selenium import webdriver
13 ModuleNotFoundError: No module named selenium

  3.解决:再IDE中运行这个脚本没有问题,在cmd下运行也没有问题,很伤, 查看各种环境变量 发现没有问题,于是卸载jenkins重新安装试试,发现还是不行,经过几个小时的折腾,发现确实在python安装目录的C:Python36Libsite-packages 下面没有selenium包。之前可能被cmd和IDE给忽悠了,我去找了一下IDE中在哪里引入seleniium包,关键来了,看图:

  技术分享图片

  你现在看到的目录是我改过后的,原来的目录是:c:usersv-xugappdata oamingpythonpython36site-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)Jenkinsjenkins.war"
  当然,大家也可以做个bat文件,以后每次启动jenkins,双击运行这个bat文件就OK了,bat文件内容如下:
  echo "Jenkins CI automation testting"
  java -jar "D:Program Files (x86)Jenkinsjenkins.war"
  pause
  Step3.  重新创建Jenkins的Job,重新配置,在执行测试
  问题解决了。
  注意问题:
  (1)通过这种方式启动jenkins,之前以windows service 启动jenkins的数据都丢失了,需要重新创建job。
  (2)之前以windows service 启动jenkins中安装的插件也没有了,需要重新安装所需插件。

 

    

以上是关于jenkins使用开始踩坑的主要内容,如果未能解决你的问题,请参考以下文章

Jenkins pipeline 踩坑集合

Jenkins迁移踩坑与补坑

jenkins踩坑记录

[转] Jenkins pipeline 踩坑集合

Jenkins pipeline的语法实例介绍及踩坑记录

Jenkins踩坑系列--你试过linux主机ssh登录windows