当前位置: 首页 > news >正文

专业做外贸的网站临安区做网站的公司

专业做外贸的网站,临安区做网站的公司,个人免费网站,怎么用qq相册做网站简介  我们在写用例的时候,单个脚本的用例好执行,那么多个脚本的时候,如何批量执行呢?这时候就需要用到 unittest 里面的 discover 方法来加载用例了。加载用例后,用 unittest 里面的 TextTestRunner 这里类的 run 方…

简介 

  我们在写用例的时候,单个脚本的用例好执行,那么多个脚本的时候,如何批量执行呢?这时候就需要用到 unittest 里面的 discover 方法来加载用例了。加载用例后,用 unittest 里面的 TextTestRunner 这里类的 run 方法去一次执行多个脚

本的用例。那么前边介绍那么多都是半道开始,半道出家,这篇就带大家从头到尾,一步一步给小伙伴们详细介绍一下。

新建测试项目

1、pycharm 左上角 File>New Projetc>Pure Python,在 location 位置命名一个测试工程的名称:honggetest

2、然后点击“Create”

3、选中刚才新建的工程右键>New>Python Package>新建一个 case 文件夹

4、重复第 3 步的操作,新建一个 case 的文件夹,在里面添加一个 baidu 和一个 blog 的文件夹,里面分别有两个用例的脚本,如下图所示。test_01,test_02,test_03,test_04 是我们写用例的脚本

 

5、test_01创建完后,打开脚本,写入用例,其他的可以复制即可

6、参考代码

 1 # coding:utf-82 import unittest3 import time4 5 class Test(unittest.TestCase):6     def setUp(self):7         print ("start!")8     def tearDown(self):9         time.sleep(1)
10         print ("end!")
11     def test01(self):
12         print ("执行测试用例 01")
13     def test02(self):
14         print ("执行测试用例 02")
15     def test03(self):
16         print ("执行测试用例 03")
17 
18 if __name__ == "__main__":
19     unittest.main()

7、在 honggetest 这个项目下面创建一个脚本 run_all_case.py,接下来用这个脚本去批量执行所有的用例。

discover 加载测试用例

1、discover 方法里面有三个参数:

  -case_dir:这个是待执行用例的目录。

  -pattern:这个是匹配脚本名称的规则,test*.py 意思是匹配 test 开头的所有脚本。

  -top_level_dir:这个是顶层目录的名称,一般默认等于 None 就行了。

2、discover 加载到的用例是一个 list 集合,需要重新写入到一个 list 对象 testcase 里,这样就可以用 unittest 里面的 TextTestRunner 这里类的 run 方法去执行。

3、运行后结果入下,就是加载到的所有测试用例了:

参考代码

 1 # coding=utf-82 #1.先设置编码,utf-8可支持中英文,如上,一般放在第一行3 4 #2.注释:包括记录创建时间,创建人,项目名称。5 '''6 Created on 20237 @author: 8 Project:学习和使用discover批量执行测试用例9 '''
10 #3.导入unittest模块
11 import unittest
12 #4.编写测试用例和断言
13 def all_case():
14     # 待执行用例的目录
15     case_dir = "C:\\Users\\DELL\\PycharmProjects\\honggetest\\case"
16     testcase = unittest.TestSuite()
17     discover = unittest.defaultTestLoader.discover(case_dir,
18                                                    pattern="test*.py",
19                                                    top_level_dir=None)
20     #discover方法筛选出用例,循环添加到测试套件中
21     for test_suit in discover:
22         for test_case in test_suit:
23             #添加用力到testcase
24             testcase.addTests(test_case)
25     print(testcase)
26     return testcase
27 if __name__ == "__main__":
28     # 返回实例
29     runner = unittest.TextTestRunner()
30     # run 所有用例
31     runner.run(all_case())

run 测试用例

1、为了更方便的理解,可以把上面 discover 加载用例的方法封装下,写成一个函数

2、先返回 TextTestRunner()类的实例

3、调用 run 方法去执行 all_case()这个函数

 

参考代码

# coding=utf-8
#1.先设置编码,utf-8可支持中英文,如上,一般放在第一行#2.注释:包括记录创建时间,创建人,项目名称。
'''
Created on 2023
@author: 
Project:学习和使用discover批量执行测试用例
'''
#3.导入unittest模块
import unittest
#4.编写测试用例和断言
def all_case():# 待执行用例的目录case_dir = "C:\\Users\\DELL\\PycharmProjects\\honggetest\\case"testcase = unittest.TestSuite()discover = unittest.defaultTestLoader.discover(case_dir,pattern="test*.py",top_level_dir=None)testcase.addTests(discover)  # 直接加载 discover    可以兼容python2和3print(testcase)return testcase
if __name__ == "__main__":# 返回实例runner = unittest.TextTestRunner()# run 所有用例runner.run(all_case())

小结

1、unittest模块中的TestLoader类有一个discover方法(Python2.7之后)discover(start_dirpattern='test*.py',top_level_dir=None)递归查找指定目录(start_dir)及其子目录下的全部测试模块,将这些测试模块放入一个TestSuite 对象并返

回。只有匹配pattern的测试文件才会被加载到TestSuite中。如果一个测试文件的名称符合pattern,将检查该文件是否包含 load_tests() 函数,如果 load_tests() 函数存在,则由该函数负责加载本文件中的测试用例。如果不存在,就会执行

loadTestsFromModule(),查找该文件中派生自TestCase 的类包含的 test 开头的方法。

2、用例路径另一种写法

1 case_dir = os.path.join(os.getcwd(), "case")

总结:在测试行业摸爬滚打也有十几年了,在学习的途中也是收藏了很多的学习资源,下面是软件测试到测试开发全职业生涯全套学习资料

【需要的可以点击下方官方推广小卡片扫码备注000免费领取】

 

http://www.yayakq.cn/news/691695/

相关文章:

  • 郭仓镇做网站微信seo什么意思
  • 提交网站地图站长之家seo综合
  • 商城网站建设4262图怪兽在线制作
  • ssl 加密网站网站被黑了怎么恢复
  • 做公司网站利润108社区找工作
  • 万创网站建设上海有名的广告设计公司
  • 做网站还能赚钱吗网址升级访问
  • 高级设计网站wordpress 分类调用
  • 广州网站建设集团雄安 网站建设
  • 做淘宝导航网站网站代理维护
  • 大邑做网站网站建设添加汉语
  • 为什么不做网站做公众号药品包装设计
  • 市网站建设生肖竞猜网站建设
  • 哈尔滨网站制作费用海兴网站建设公司
  • 青海省建设网站价格低wordpress外链音乐
  • 什么网站做hevc松江做网站需要多少钱
  • 宁波网站建设公司立找亿企邦唐山网站建设赫鸣科技
  • 临时工200一天一结搜索引擎优化特点
  • c 网站开发数据库连接大宗商品交易平台解决方案
  • 五莲网站建设网站最近收录
  • 移动网站开发认证中国菲律宾最新局势
  • 萍乡土建设计网站网站无收录的原因
  • 西安网站建设gwordpress用户推广
  • 恒丰建设集团有限公司 网站中美最新军事新闻最新消息
  • 如何让网站自适应常州房地产网站建设
  • 开发网站监控推荐学计算机哪个培训机构好
  • 长沙哪些公司做网站网络程序开发
  • 网站建设公司3lue百度推荐现在为什么不能用了
  • 企业建设好一个网站后 如何进行网站推广网页设计背景制作
  • 制作网站设计的公司高端大气企业网站源码