自动化测试框架pytest

大家在编写自动化测试脚本的时候都会用到测试框架,pytest就是其中一种,而且是超级好用,好学的一种,它的优点就不在这里讲了,今天主要是讲一下pytest执行用例的方式

先来简单的给没有接触过pytest的伙伴了解一下pytest的一些基本规则:

1.所有的单测文件名都需要满足test_*.py格式或*_test.py格式。

2.在单测文件中,测试类以Test开头,并且不能带有 init 方法(注意:定义class时,需要以Test开头,不然pytest是不会去运行该class的)

3.在单测类中,可以包含一个或多个test_开头的函数。

来个pytest的helloworld吧,代码如下:

运行后,结果如下:

 

我们测试一个项目肯定不只一两个测试用例,通常都有很多测试用例,同样我们编写自动化测试用例脚本也不可能才一两个脚本,也是有很多脚本的,通常都会归类,放到某个文件夹下面,接下来我们看看怎么一下执行一个目录中的所有用例,首先建立一个目录,名为Filetest,里面的模块如下:

 

我们在创建一个文件,来执行这些用例,代码如下:

import pytest
#执行Filetest目录中所有的用例
pytest.main(["./Filetest/"])

执行结果如下:

 

当然我们也可以执行目录里某个模块里所有的用例,代码如下:

pytest.main(["./Filetest/hello_py2_test.py"])

也可以执行模块里某个用例,代码如下:

pytest.main(["./Filetest/hello_py_test.py::test_01"])

我们还可以更加灵活的根据标记,双冒号,类名,类中的某个用例,关键字匹配,出现失败就停止等等方法去执行我们的用例,如下:

#执行某个模块里某个用例
pytest.main(["./Filetest/hello_py_test.py::test_01"])
#通过标记来执行某个模块里某几个用例
pytest.main(["./Filetest/slow_test.py","-s","-m","slow"])
#执行某个模块里某个类里的某个方法
pytest.main(["./Filetest/myclass_test.py::TestMaker::test_b","-s"])
#有执行到一个错误用例就停止
pytest.main(["./Filetest/",'-x'])
#出现2个失败就终止测试,数字可以变
pytest.main(["./Filetest/",'--maxfail=2'])
#通过关键字匹配执行用例
#1.执行Filetest目录里所有函数中有test_0字符串的用例
pytest.main(["./Filetest/",'-k',"test_0"])
#2.执行Filetest目录里所有类名中有Maker2
pytest.main(["./Filetest/",'-k',"Maker2"])
#3.不执行Filetest目录里所有类名中有Maker2里有test_b1字符串的用例
pytest.main(["./Filetest/",'-s','-k',"Maker2 and not test_b1"])
#4.不执行Filetest目录里所有函数中有test_0字符串的用例
pytest.main(["./Filetest/",'-k',"not test_0"])

想要更详细的代码,可以访问如下网站:

http://it.qfedu.com/oa.php/Public/share?c2lkPTEwOTM=

今天的pytest的技术就先到这啦,后面我们还会推出更多关于pytest的技术,小伙伴们可以持续的关注我们哦,当然我们发布的技术不只是只有测速框架哦,也不是只有测试技术,也有职场经验和职场技巧方面的知识的

总结:pytest作为比较流行的单元测试框架,还是比较多人使用的,其实测试框架不会太难学习,基本上学习了一种,其他的大部分都差不多,等积累了一定的测试知识,再学习其他的测试框架就很容易了。

最后我们测试人善于使用测试工具,提高测试效率才能在企业中不断进步,收获更多更好的企业资源,在职场中才能发展的越来越好。测试技术一直在更新,也鞭策我们测试人要不断的学习新的测试技术。

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走! 希望能帮助到你!【100%无套路免费领取】

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
毕业设计,基于SpringBoot+Vue+MySQL开发的影城管理系统,源码+数据库+论文答辩+毕业论文+视频演示 随着现在网络的快速发展,网上管理系统也逐渐快速发展起来,网上管理模式很快融入到了许多生活之中,随之就产生了“小徐影城管理系统”,这样就让小徐影城管理系统更加方便简单。 对于本小徐影城管理系统的设计来说,系统开发主要是采用java语言技术,在整个系统的设计中应用MySQL数据库来完成数据存储,具体根据小徐影城管理系统的现状来进行开发的,具体根据现实的需求来实现小徐影城管理系统网络化的管理,各类信息有序地进行存储,进入小徐影城管理系统页面之后,方可开始操作主控界面,主要功能包括管理员:首页、个人中心、用户管理、电影类型管理、放映厅管理、电影信息管理、购票统计管理、系统管理、订单管理,用户前台;首页、电影信息、电影资讯、个人中心、后台管理、在线客服等功能。 本论文主要讲述了小徐影城管理系统开发背景,该系统它主要是对需求分析和功能需求做了介绍,并且对系统做了详细的测试和总结。具体从业务流程、数据库设计和系统结构等多方面的问题。望能利用先进的计算机技术和网络技术来改变目前的小徐影城管理系统状况,提高管理效率。 关键词:小徐影城管理系统;Spring Boot框架,MySQL数据库
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值