范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

单元测试界的高富帅,Pytest框架,手把手教学,从入门到精通

  前 言
  pytest到目前为止还没有翻译的比较好全面的使用文档,很多英文不太好的小伙伴,在学习时看英文文档还是很吃力。本来去年就计划写pytest详细的使用文档的,由于时间关系一直搁置,直到今天才开始写。本文是第一篇,主要介绍pytest的入门使用,后续会分篇针对pytest中的各个功能出详细的使用教程。  一、准备:环境安装
  pytest 是 python 中的第三方库,使用之前需要先安装,在命令行中运行以下安装命令 :
  pip insatll pytest
  检查安装是否成功以及安装的版本,命令行命令如下:
  pytest --version
  执行上述命令,能够输出版本信息,那就说明安装成功啦。
  二、用例编写
  当我们通过 pytest 执行用例时,pytest 会自动递归遍历执行路径下所有的目录,根据 pytest 中默认用例的识别的规则,自动收集测试用例。所有在使用 pytest 编写测试用例之前,我们首先需要了解一下 pytest 收集用例时默认的用例识别规则。  1、默认的用例识别的规则1、用例文件:所有文件名为 test_ 开头 或者 _test 开头的文件会被识别为用例文件。  2:用例类,测试文件中每个 Test 开头的类就是一个测试用例类。  3、测试用例:测试类中每个 test 开头的方法就是一条测试用例,测试文件中每个 test 开头的函数也是一条测试用例,  备注:上述默认的用例查找规则,可在 pytest 的配置文件进行修改(后续章节会详细介绍配置文件的使用)
  另外 pytest 兼容 unittest,以 unittest 的用例编写规范写的用例,pytest 都能够识别出来
  通过了解上述 pytest 中用例识别的规则,可以知道 pytest 中用例编写,能使用函数的形式,也能使用类的形式,那么接下来就分别给大家介绍一下这两种方式编写用例。  2、函数形式编写用例
  规则:用例方法名以 test 开头即可
  # 	estcases	est_demo1.py   def test_demo():     assert 100 == 100
  使用命令 pytest 就可以执行测试函数,输出结果如下:
  C:	estcases>pytest  ======================test session starts ====================== platform win32 -- Python 3.7.3, pytest-5.4.2, py-1.8.0, pluggy-0.13.0 rootdir: C:	estcases plugins:  testreport-1.1.2 collected 1 item                                                            test_demo1.py .    [100%] ====================== 1 passed in 0.26s ======================
  3、以类的形式编写用例
  规则:测试类命名以 Test 开头,用例方法以 test 开头
  # test_demo2.py class TestDome:       def test_demo1(self):         assert 11 == 11       def test_demo(self):         assert 22 == 21
  命令 pytest 运行上述用例,结果如下:
  ====================== test session starts ====================== platform win32 -- Python 3.7.3, pytest-5.4.2, py-1.8.0, pluggy-0.13.0 rootdir: C:	estcases plugins:  testreport-1.1.2 collected 2 items                                                                    test_demo1.py .F                  [100%] ====================== FAILURES ====================== ___________ TestDome.test_demo ____________ self =      def test_demo(self): >       assert 22 == 21 E       assert 22 == 21 test_demo1.py:25: AssertionError ====================== short test summary info ======================= FAILED test_demo1.py::TestDome::test_demo - assert 22 == 21 ====================== 1 failed, 1 passed in 0.53s ======================
  上面的运行结果可以看出来,一条用例执行通过,一条执行失败
  三、执行测试
  在上面我们使用的是 pytest 这个命令去执行测试用例。关于 pytest 执行测试,有两种方式,一种是命令行通过 pytest 这个命令执行,另外在代码中可以通过 pytest.main() 这个方法来执行测试。接下来就和大家分别详细的介绍一下 pytest 执行测试的方式和常用的参数  1、执行参数
  测试用例
  # 测试用例 class TestDome:       def test_demo1(self):         print("----测试用例执行-----------")         assert 11 == 11
  参数 -v : 显示测试的详细参数信息
  C:	estcases>pytest -s =========================== test session starts =========================== platform win32 -- Python 3.7.3, pytest-5.4.2, py-1.8.0, pluggy-0.13.0 rootdir: C:	estcases plugins: testreport-1.1.2 collected 1 item      test_demo1.py::TestDome::test_demo1 ----测试用例执行---输出1-------- ----测试用例执行---输出2-------- PASSED =========================== 1 passed in 0.28s ===========================
  2、pytest.main 执行的参数传递
  pytest.main 方法执行测试参数传递方式:
  所以的参数放在列表中,每个参数就是列表中的一个元素
  pytest.main(["-v","-s"])
  详细的参数可以使用命令 pytest -h 查看
  3、指定执行的测试目录
  命令 pytest 测试目录路径
  pytest testcase/
  pytest 会执行指定目录路径下所有的测试用例
  4、指定执行的测试文件
  命令 pytest 测试文件路径
  pytest testcase/test_demo1.py
  pytest 会执行指定测试文件中下所有的测试用例
  5、指定执行的测试类
  命令 pytest 测试文件::测试类
  pytest testcase/test_demo1.py::TestClass
  pytest 会执行指定测试类里面所有的测试用例
  6、指定执行的测试用例
  命令 pytest 测试文件::测试类::测试方法
  pytest testcase/test_demo1.py::TestClass::test_method
  pytest 会执行指定的测试方法
  基本的入门就给大家介绍到这里,从下一篇开始给大家详细介绍 pytest 的相关特性
  下面是我当时学习时用过的部分资料,有需要的朋友可以关注并私信我关键词"测试"即可免费领取哟

小米有品众筹职场续命神器!24小时动态监测,白领随身带笔者是一个在CBD上班的小白领,遵循着互联公司盛行的996工作制,熬夜加班是基本常态。每天对着电脑长达七八个小时,项目一旦多了起来,十一二点半夜回家都经常失眠。最近经常出现眼前发黑广东冬天靠抖?北方人别笑,新晋过冬神器给广东人争口气了北方取暖有暖气,广东取暖全靠抖!虽然才两个月的冬天,广东人的辛酸在这短短的时间里体现得淋漓尽致,在家里穿羽绒是标配。今年冷空气来得早,为了生存,我在小米有品买了一系列防寒用品。广东拼多多自爆员工受贿200万元涉嫌40亿广告预算据路透社报道,据两名直接知情人士透露,中国电子商务公司拼多多(PinduoduoInc。)已将数字广告公司开域集团CueHoldings一名经理涉嫌贿赂一名员工的案件移交给上海警方RTX3070游戏本有什么值得推荐,预算1W左右选这几款现在玩游戏的朋友很多,比较多人玩的是手机游戏。不过玩了一段时间之后,就有玩电脑游戏的想法了。挑选款1万左右的3070显卡的电竞笔记本电脑的话,还是有不少挑选的。不过大家也知道显卡市趣味骑行安全第一多多的超级飞侠九号电动滑板车CiaoBello,我是老房。每个男人都有一个追风的梦,连小朋友也不例外,儿子自两岁起就开始接触各种代步小车了,平衡车,滑板车玩的飞起。男人嘛,对速度的追求是永无止境的,自从上次见传说法师评测7。5分见面打招呼先放豪火球不少中国玩家对于忍术的概念都来自曾经红极一时的火影忍者。相信不少小伙伴的中二年华里,都尝试过模仿那些忍者结印施放忍术,水遁水龙弹之术雷遁千鸟风遁螺旋丸手里剑,这些名字想必也一定能唤西方的海神叫波塞冬,那东方的海神是谁?林默娘小说西游记中提到的四海龙王,即东海龙王敖广南海龙王敖钦北海龙王敖顺西海龙王敖闰,是妇孺皆知的海神。中国有一个庞大海神体系。水德星君主管天下水,四海龙王敖广敖钦敖闰敖顺则是水德刚刚官宣二三孩家庭每月每孩发500元补贴全国首个!四川攀枝花为生育二孩三孩家庭发补贴每月每孩发500元!生育二三孩家庭每月每孩发500元补贴7月28日,四川省攀枝花市召开新闻发布会,公布并详细解读了攀枝花市关于促进人力资预警来了,2021年税负率金税三期施行以来税收评估的六大预警指标和各行业最新预警税负率,建议会计人员学习收藏!六大预警指标各行业的预警税负率税负率是什么,怎么算?什么情况下企业会被约谈?通常,税务部门会先找果然,鸿星尔克出事了这些天的微博热搜,都被鸿星尔克霸屏了。起因,是这个快被人遗忘的国货,在河南水灾后,第一时间捐了5000万。因向河南低调捐款5000万物资,霎时间,大家对这个古早品牌好感度一路飙升。吴亦凡慌了?7月18日晚,都美竹向吴亦凡下达了最后通牒,一副不将其彻底打倒,誓不罢休的态度获得了众多网友的声援。随后,吴亦凡本人及工作室做出回应拒绝一切诽谤言论!图片来自微博但是在回应的微博下
抛开其他因素不谈,单就其物理技术方面杨振宁和钱学森,谁更厉害一点?这个题目听起来有些别扭,什么叫物理技术方面?时空通讯的理解出题者大概是说在物理理论和应用方面吧?这正好可以区别两位科学家的不同侧重,我就顺着这个说法来简单谈谈对二位伟人的理解。首先如果木星变成一颗恒星,能燃烧多久?很多人都会这样想木星比太阳小得多了,而太阳的寿命有约100亿年,那木星能够燃烧的时间肯定是小于100亿年的。很抱歉,这种想法是错误的。在恒星家族中,质量越大寿命反而越短。在恒星内部为何所有生物在胚胎阶段都一样?猪兔子狗乌龟鱼乃至人类,胚胎发育初期高度相似,成年个体却千差万别,但这恰恰可以作为生物演化的证据,最初相同后来由于种群分化逐渐不同,新物种产生。地球生物演化而来已经基本没有异议,大怎样判断对方是不是精神病人?感谢邀请,怎样判断对方是不是精神病人?一个很大的题目,因为精神病人也包括很多种,那么我就挑选比较严重的类型说吧!狭义的精神病人,更多指的是病人的疯癫状态这里我说疯癫,其实是不确切的现在还有多少人在用有线电视网?你喜欢看凤凰卫视吗?我家有老人还保留一台有线电视网,主要是操作方便,直播更稳定。原来我还看看凤凰卫视,因为它有独特的内容和播送方式,现在逐渐与内地电视台差不多了,所以也很少看了。以前还是很喜欢看凤凰卫现在人工智能发展的很快,甚至出现了很优秀的美女机器人,你会和机器人结婚吗?虽然和机器人恋爱结婚,是科幻作品中常有的情节,我们已经见怪不怪了,但如果说让我和机器人美女结婚,我是绝对不能接受的。即使她是大美女。和机器人结婚,我们每天醒来是这样的。至于为何不会马斯克比尔盖茨都是美国人,为什么IP属性却是北京和河南?继微博上线了账户显示IP地址后,抖音也上线了账号IP地址展示。网络媒体上一批自称在美国日本等海外国家的博主纷纷被扒,其账号地址居然在国内。一时之间,引来网友们的群嘲,并将此戏称为扒MySQL数据库表被锁解锁,删除事务背景在程序员的职业生涯中,总会遇到数据库表被锁的情况,前些天就又撞见一次。由于业务突发需求,各个部门都在批量操作导出数据,而数据库又未做读写分离,结果就是数据库的某张表被锁了!用户台积电3nm芯片将量产,中芯却坚持28nm,倪光南院士已经够用了点击关注,每天精彩不断!导读台积电3nm芯片将量产,中芯却坚持28nm,倪光南院士已经够用了!众所周知,半导体集成电路芯片在现代科技领域的发展中起着至关重要的作用在我们平时的生活中黑科技拉满,纯电车的极致比亚迪海豹技术解析海豹预售,CTB电池发布,预售价格21。28万28。98万,价格和之前预测的相差不多,和此前发布的汉EV有较大程度的重合。海豹这款车到底有什么特点,都搭载了哪些技术?有何先进之处?苏宁易购VS京东不破不立,谁是最终赢家?最近,关于电商的话题一度引起大众的关注,并且冲上热搜话题,比如京东收购德邦,阿里猫享自营上线等等。有的朋友可能会产生这样的疑问,为什么苏宁易购也是也搞了很久的电商,却和京东阿里的距