UI自动化测试框架搭建 —— 获取Jenkins参数

1155 篇文章 46 订阅
881 篇文章 3 订阅

获取参数化内容

在使用Jenkins管理测试流程的时候,我们可以通过参数化来动态修改测试执行的一些参数

使用Jenkins执行任务之后,我们选择的参数就变成了环境变量,可以使用python的os.getenv(name)方法来获取到内容

图片

比如我想要拿到robot的内容

我可以使用os.getenv('robot')

封装一个函数处理一下字符串的空格问题

def get_env(name, base=''):
    """
    从环境变量中获取指的信息
    @param name: 环境变量信息
    @param base: 默认信息
    @return:
    """
    return os.getenv(name) and os.getenv(name).strip() or base

这样获取robot就变为了

ROBOT = get_env("robot")  # 企业微信群机器人

把上一节Jenkinsfile用到的参数都获取一下

parameters {
      gitParameter(name: 'branch', branch: '', branchFilter: '.*', defaultValue: 'origin/master', description: '代码分支', quickFilterEnabled: false, selectedValue: 'NONE', sortMode: 'NONE', tagFilter: '*', type: 'PT_BRANCH')
      choice(name: 'test_PC', choices: ['a', 'b'], description: '执行设备')
      choice(name: 'headless', choices: ['false', 'true'], description: '是否不显示浏览器界面')
      choice(name: 'concurrent', choices: ['否', '1', '2', '3', '4', 'auto'], description: '是否并发执行,并发数')
      string(name: 'robot', defaultValue: '', description: '企业微信群机器人地址,以逗号分隔')
      string(name: 'email', defaultValue: '', description: '邮箱地址,以逗号分隔')
      text(name: 'cases', defaultValue: '''''', description: '要执行的用例', )
 }

也就是

CASES = get_env("cases")  # 测试用例
HEADLESS = get_env("headless", "false")  # 是否不显示浏览器
CONCURRENT = get_env("concurrent", "否")  # 并发数 [0, 1, 2, 3, 4, auto, 否]
EMAIL = get_env("email")  # 邮件
ROBOT = get_env("robot")  # 企业微信群机器人
现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:110685036

获取Jenkins自带变量

在发送测试报告的时候,需要拿到Jenkins的工程名称,任务id等信息,也可以通过上述方法拿到

具体的名称可以从 「流水线语法」-「全局变量参考」中获取到

图片

比如我们要拿到

  • 构建项目名称

  • 构建项目URL

  • 构建编号

ProjectName = get_env("JOB_NAME", "非jenkins运行")  # 构建项目名称
BUILD_URL = get_env("BUILD_URL", "非jenkins运行")  # 构建项目URL
BUILD_NUMBER = get_env("BUILD_NUMBER", 0)  # 构建编号

这里传入0,编辑器会提示类型问题,上面的入参稍微修改一下

from typing import Union

def get_env(name, base: Union[str, int] = ''):

这样base形参就允许为int类型了

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走!

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
 

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值