Python Unittest-根据不同测试环境跳过用例详解

本文章会讲述以下几个内容:
1、Unittest 如何跳过用例
2、如何使用sys.argv
3、自动化测试项目中如何一套代码多套环境运行

一、Unittest跳过用例

@unittest.skip(reason) , 直接跳过被装饰的用例 ,reason用于填写跳过用例的原因

@unittest.skipIf(condition, reason) , condition 如果为真,跳过被装饰的用例,reason用于填写跳过用例的原因

@unittest.skipUnless(condition, reason) , condition如果为假,跳过被装饰的用例,reason用于填写跳过用例的原因

例:

testcaseskip.py


运行结果:

二、如何使用sys.argv

sys.argv 是一个数组 第一个元素是程序本身路径
sys.argv 实现从程序外部向程序传递参数。
例:

howtouse_argv.py

小结:

1:sys.argv 实现从程序外部向程序传递参数
2:传入的第一个参数为脚本文件名
3:传入程序的每一个参数以空格 隔开
4:传入程序的参数均以字符串的类型存储,命令行中不需要加引号

三、自动化测试项目中如何一套代码多套环境运行

需求1:一套代码可以测试多个环境,不希望每次测试不同环境的时候都要去改代码里面的URL,希望把代码里面的URL参数化

以UI自动化为例:

testmultipleenv.py

运行命令行:

---------------------------------------------------------------
注:我这有个学习基地,里面有很多学习资料,感兴趣的+Q群:895817687
---------------------------------------------------------------python test_multiple_env.py https://www.baidu.com/

运行结果:

打开浏览器,导航到百度页面

需求2:有些用例不能在预发布环境或者生产环境运行,怎么跳过该用例

UI自动化为例:

testmultipleenv_skip.py


运行命令行:

运行结果:

小结

从上面的例子可以了解,如何通过sys.argv传入环境参数,虽然上文是用百度首页作为例子,但同时引出,我们在做自动化测试时候,实现一套代码多环境运行思路

命令行带参数启动脚本,在Unittest中,可以实现不同的测试环境可以跳过用例

Python Unittest-根据不同测试环境跳过用例详解相关推荐

  1. 模拟器真机环境_Appium+python自动化(二)- 环境搭建—下(超详解)

    上一篇android测试开发环境已经准备好, 那么接下来就是appium的环境安装和搭建了. 菲哥和小伙伴们开个玩笑,不要觉得自人品不好,就不会成功那都是骗人的.搭建环境和人品半毛钱关系也没有,搭建环 ...

  2. Python unittest中初始化固件setUp和销毁固件tearDown详解

    unittest.TestCase 包含了 setUp() 和 tearDown() 两个方法,其中 setUp() 方法用于初始化测试固件:而 tearDown() 方法用于销毁测试固件.程序会在运 ...

  3. Appium+python自动化(一)- 环境搭建—上(超详解)

    简介 最近整理了一下自动化的东西,先前整理的python接口自动化已经接近尾声.即将要开启新的征程和篇章(Appium&python).那么首相的问题就是搭建环境了.好久没搭建环境又踩了不少坑 ...

  4. A/B 测试的统计学原理及用例详解

    统计学在 A/B 测试中的作用 A/B 测试是一种对比试验(下文中对比试验特指 AppAdhoc 平台上的 A/B 测试),而试验就是从总体中抽取一些样本进行数据统计,进而得出对总体参数的一个评估.可 ...

  5. (渗透测试后期)Linux进程隐藏详解

    文章目录 (渗透测试后期)Linux进程隐藏详解 前言 Linux进程基础 Linux进程侦查手段 Linux进程隐藏手段 一.基于用户态的进程隐藏 方法1:小隐隐于/proc/pid--劫持read ...

  6. python2.7除法_对python中的float除法和整除法的实例详解

    从python2.2开始,便有两种除法运算符:"/"."//".两者最大区别在: python2.2前的版本和python2.2以后3.0以前的版本的默认情况下 ...

  7. Python中常见的__init__.py是什么意思?详解Python import的方式和原理

    Python中常见的__init__.py是什么意思?详解Python import的方式和原理 1 什么是模块化编程? 2 __init__.py文件的作用 3 Python如何import第三方库 ...

  8. Android studio 多渠道(多环境)打包grade配置详解

    Android studio 多渠道(多环境)打包grade配置详解 场景:开发app,我们需要两套环境或者两套环境以上的apk,每套环境的apk分两个版本debug版和release版. 公司有套平 ...

  9. pythonprint字节按照16进制输出_对python以16进制打印字节数组的方法详解

    对python以16进制打印字节数组的方法详解 一.问题描述 如果直接用print打印bytes的话,有时候会直接显示ascii对应的字符,看起来很蛋疼. 二.运行效果 上面一行是直接用print打印 ...

最新文章

  1. [综合面试] 大牛的面试神级总结之总结篇
  2. aix系统32位和64位切换
  3. [蓝桥杯][历届试题]网络寻路(DFS)
  4. 如何在 C# 中使用 反射
  5. Python | 程序以字符串长度打印单词
  6. 单链表的按位置插入和删除
  7. ios 扫码枪外设 键盘模式_多平台连接:雷柏XK100蓝牙键盘评测
  8. 云小课|云小课带你快速掌握云数据迁移CDM
  9. pycharm终端运行python文件_在PyCharm终端中执行python manage.py..._慕课问答
  10. JavaSE| 面向对象-类的五大成员
  11. 小型网站项目完整部署流程(Windows操作系统)
  12. python opencv车辆测速视频汽车速度检测入侵检测测速
  13. 试验一:网络扫描与网络侦查
  14. 全球票房73亿的《海王》,是怎么炼成的!
  15. python转xlsx为xls 或重新保存xls
  16. 包转发率交换容量详解
  17. RHadoop实验 – 统计邮箱出现次数
  18. 朱阿兴教授报告——SCI文章写作要点与案例分析
  19. Ubuntu Linux 3D桌面完全教程(转贴)
  20. HEVC (H.265)介绍(转)

热门文章

  1. android string json,安卓之String json解析
  2. redismanager 获取不到yml中的密码_SpringBoot敏感信息加密,springboot配置文件密码加密jasypt...
  3. Spring相关API-getBean()方法的使用
  4. 「中间件系列二」redis缓存
  5. PaddleOCR——Visual Studio 2019 环境下C++推理部署 CMake 编译解决方案
  6. 汇编语言——计算Z=(W * X)/ (Y+6),R=余数
  7. Spring——Spring工具类
  8. CG CTF WEB SQL注入2
  9. xSocket 通讯框架 demo
  10. 软件工程概论 课堂练习【用例图——客户提出申请要求贷款...】