Jenkins在自动化测试中的应用——软件自动化测试入门攻略(9)

发表于:2024-3-20 09:53

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:杨定佳    来源:51Testing软件测试网原创

  15.6.2  Jenkins在自动化测试中的应用
  Jenkins作为一个持续集成工具,在自动化测试中非常有用,可以帮助测试人员对自动化测试项目实现定时执行、测试结果发送报告、分布式执行等功能,无须再投入太多的人工在项目运维环节,有利于减少重复过程以节省时间、费用和工作量。下面以运行一个简单的测试脚本为例,创建一个Jenkins任务。
  准备测试脚本。新建一个test_jenkins.py文件,添加两个测试用例test_01和test_02,其中test_01断言成功,test_02断言失败,代码如下:
  # chapter15\test_jenkins.py
  import pytest
  def get_student_info(student_id):
      students = {
          1001: {"name": "tynam", "age": "21"},
          1004: {"name": "yang", "age": "16"}
      }
      return students.get(student_id, "The student ID does not exist.")
  def test_01():
      student = get_student_info(1001)
      assert student.get("name") == "tynam"
  def test_02():
      student = get_student_info(1004)
      assert student.get("name") == "tynam"
  if __name__ == "__main__":
      pytest.main(["-s", "test_jenkins.py"])
  安装SSH Agent插件。单击Jenkins主页左侧菜单【系统设置】,然后选择【插件管理】进入插件管理页面。在【Available plugins】可选插件下搜索“SSH Agent”,勾选后单击【Install】按钮进行安装,如图15-28所示。
图15-28  安装插件
  挂载本地节点。单击Jenkins主页左侧菜单【系统设置】,然后选择【节点管理】进入节点管理页面。单击【New Node】按钮添加节点,【节点名称】填写“本地节点”,Type下选中【固定节点】,然后单击【Create】按钮创建,如图15-29所示。
图15-29  创建节点
  节点配置。在节点配置页面,【Number of executors】(此节点执行并发构建的最大数目)填写2;【远程工作目录】(Jenkins在此节点下工作目录)填写D:\;【启动方式】选择通过Java Web启动代理,然后单击【保存】按钮,如图15-30所示。
图15-30  配置节点
  安装curl程序。单击“本地节点”进入该节点,可以看到提示需要在Node节点上安装agent.jar文件并运行,如图15-31所示。但是使用提示的命令安装需要先安装curl程序,curl是一个功能强大的命令行工具,可以用来发送HTTP请求、FTP请求等,并且支持各种数据传输协议。
图15-31  提示安装agent.jar
  进入curl下载页面(https://curl.se/download.html),根据操作系统下载二进制文件,Windows系统也可直接访问https://curl.se/windows/下载,如图15-32所示。
图15-32  下载curl
  下载完成后进行解压,然后将~\curl-8.2.0_1-win64-mingw\bin目录下curl.exe配置到环境变量中,即可全局使用curl程序。
  安装agent.jar并启动。根据图15-31提示的命令依次输入,例如Windows系统输入命令为:
  curl.exe -sO http://localhost:8080/jnlpJars/agent.jar & java -jar agent.jar -jnlpUrl http://localhost:8080/computer/%E6%9C%AC%E5%9C%B0%E8%8A%82%E7%82%B9/jenkins-agent.jnlp -secret dd79934d1667ee467d5f05e660341578d595480136cfd81146ba52801eaa9f92 -workDir "D:/" 
  如图15-33所示。
图15-33  安装Agent并启动
  Agent启动后进入Jenkins节点列表,可以看到名为“本地节点”的节点已是连接状态,如图15-34所示。
图15-34  查看节点状态
  创建任务。进入Jenkins主页,单击左侧菜单栏中的【新建任务】创建测试任务,【任务名称】填写test_jenkins,选择【Freestyle project】自由风格任务,然后单击【确定】按钮进入下一步,如图15-35所示。
图15-35  创建项目
  设置任务运行节点。在【General】下勾选【限制项目的运行节点】,在输入框中填写节点名称“本地节点”,如图15-36所示。
图15-36  设置运行节点
  设置任务定时。在任务配置页面【构建触发器】下勾选【定时构建】复选框,然后填写H/15 * * * *,表示每15分钟构建一次,如图15-37所示。
图15-37  设置任务定时
  定时构建字段遵循 cron 语法(但是与cron又略有不同),该字段每行包含5个字段,5个字段之间使用 TAB 或空格进行分隔。例如,* * * * *,第一个字段为MINUTE;第二个字段为HOUR;第三个字段为DOM;第四个字段为MONTH;第五个字段为DOW。具体描述如表15-1所示。
  表15-1  定时字段说明
  如果一个字段需要指定多个值,则可以按照优先顺序使用下面的运算符: 
  ·*:指定所有有效值。 
  · M-N:指定范围值。 
  · M-N / X或* / X:在指定范围或整个有效范围内以 X 步长进行指定。 
  · A,B,...,Z:列举多个值。
  添加执行命令。在【Build Steps】下添加一个【执行Windows批处理命令】,即在Windows命令行工具中执行命令,然后单击【保存】按钮进入任务主页。
  添加的命令如下:
  E:
  cd E:\xxxxxxx\code\chapter15
  python test_jenkins.py
  即进入test_jenkins.py文件所在的文件夹下,使用Python程序运行该文件,如图15-38所示。
图15-38  添加执行命令
  任务构建。进入test_jenkins任务主页,单击左侧菜单栏中的【立即构建】,可看到任务立即运行了一次,如果不手动触发构建则根据设置的定时任务每15分钟触发一次。构建完成后,在test_jenkins任务主页可以看到构建情况,如图15-39所示。任务名称前有个绿色对勾表示构建成功,如果最近一次构建失败,则任务名称前是红色的叉叉。
图15-39  查看任务构建结果
  查看任务执行过程。单击最近一次构建查看最新的构建情况,在构建页面中单击左侧菜单栏中的【控制台输出】即为构建的详细过程,如图15-40所示。可以看到先切换到E盘,然后进入chapter15文件夹下,最后运行了test_jenkins.py测试文件。测试文件中共收集了2条测试用例,一条用例测试通过,一条用例测试失败。
图15-40  查看构建过程
版权声明:51Testing软件测试网获得作者授权连载本书部分章节。
任何个人或单位未获得明确的书面许可,不得对本文内容复制、转载或进行镜像,否则将追究法律责
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号