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

广东网站建设人员芜湖seo

广东网站建设人员,芜湖seo,b2c电商模式,国内做设计的网站建设前言 说到测试框架,unittest是我最先接触的自动化测试框架之一了, 而且也是用的时间最长的, unittest框架有很多方法加载用例,让我们针对不同的项目,不同项目的大小及用例的多少自己选择加载方式。今天我们就简单的说说…

前言

  说到测试框架,unittest是我最先接触的自动化测试框架之一了, 而且也是用的时间最长的, unittest框架有很多方法加载用例,让我们针对不同的项目,不同项目的大小及用例的多少自己选择加载方式。今天我们就简单的说说几种加载方式。

方式1

  简单的实例

 1 import unittest2 3 4 class LoadTest(unittest.TestCase):5 6     def test_case_01(self):7         self.assertEqual(1, 1)8 9     def test_case_02(self):
10         self.assertEqual(2, 1)
11 
12 
13 if __name__ == '__main__':
14     suit = unittest.TestSuite()
15     suit.addTest(LoadTest('test_case_01'))
16     suit.addTest(LoadTest('test_case_02'))
17 
18     runner = unittest.TextTestRunner()
19     runner.run(suit)
# 输出
..
----------------------------------------------------------------------
Ran 2 tests in 0.000sOKProcess finished with exit code 0

说明

  首先我们需要创建一个测试套件suite,其次通过addTest方法添加用例,addTest的参数为单个用例, 比如实例中记载的是LoadTest测试类中的test_case_01 和 02, 我们就按照上述方式传递参数。如果加载运行用例的代码在另一个文件中,我们需要在此文件中导入测试类。

方式2

  简单实例

 1 import unittest2 3 4 class LoadTest(unittest.TestCase):5 6     def test_case_01(self):7         self.assertEqual(1, 1)8 9     def test_case_02(self):
10         self.assertEqual(2, 2)
11 
12 
13 if __name__ == '__main__':
14     suit = unittest.TestSuite()
15     case_list = [LoadTest('test_case_01'), LoadTest('test_case_02')]
16     suit.addTests(case_list)
17     runner = unittest.TextTestRunner()
18     runner.run(suit)
# 输出
..
----------------------------------------------------------------------
Ran 2 tests in 0.000sOKProcess finished with exit code 0

说明

  方式2是通过同样的原理加载测试用例的,只不过是一次性加载多个,不需要多次调用addTest方法,我们只需要调用一次addTests方法,加载一个用例组成的序列,相比较而言,第二种比第一种稍微方便那么一点

方式3

  简单实例

 1 import unittest2 3 4 class LoadTest(unittest.TestCase):5 6     def test_case_01(self):7         self.assertEqual(1, 1)8 9     def test_case_02(self):
10         self.assertEqual(2, 2)
11 
12 
13 if __name__ == '__main__':
14     suit = unittest.TestSuite() # 测试套件
15     loader = unittest.TestLoader() # 用例加载器
16     test_class = loader.loadTestsFromTestCase(LoadTest) # 加载测试类
17     suit.addTest(test_class) # 测试类添加到测试套件中
18     runner = unittest.TextTestRunner() # 用例运行器
19     runner.run(suit) # 运行
# 输出
..
----------------------------------------------------------------------
Ran 2 tests in 0.000sOKProcess finished with exit code 0

说明

  实例是通过创建一个加载器来加载测试用例,可以看到加载器需要加载一个测试类, 不需要像前两个方式那样,一个一个加载测试用例,但是如果一个模块中有多个测试类的情况,我们仍然需要编写多条加载代码 test_class = loader.loadTestsFromTestCase(LoadTest) # 加载测试类

方式4

  简单实例

 1 import unittest2 3 4 class LoadTest(unittest.TestCase):5 6     def test_case_01(self):7         self.assertEqual(1, 1)8 9     def test_case_02(self):
10         self.assertEqual(2, 2)
11 
12 
13 if __name__ == '__main__':
14     pass
 1 import unittest2 import sys3 sys.path.append('.')4 import unittest_tc_load5 6 if __name__ == '__main__':7     suit = unittest.TestSuite() # 测试套件8     loader = unittest.TestLoader() # 用例加载器9     test_module = loader.loadTestsFromModule(unittest_tc_load) # 加载测试类
10     suit.addTest(test_module) # 测试类添加到测试套件中
11     runner = unittest.TextTestRunner() # 用例运行器
12     runner.run(suit) # 运行

说明

  这个方式其实是和方式3一样的原理, 只不过这个方式是直接加载整个测试模块, 如果测试模块中含有多个测试类,都将被加载,这样批量添加测试会很方便,前提是我们需要导入我们测试模块

方式5

  说明

方式5是直接通过在创建测试套件的时候直接把测试模块添加到测试套件中,看下面的代码

1     
2     loader = unittest.TestLoader() # 用例加载器
3     test_modules = (loader.loadTestsFromModule(unittest_tc_load1), loader.loadTestsFromModule(unittest_tc_load2)) # 加载测试类
4     suit = unittest.TestSuite(tests=test_modules) # 测试套件
5     runner = unittest.TextTestRunner() # 用例运行器
6     runner.run(suit) # 运

unittest_tc_load1和unittest_tc_load2为两个测试模块,我们使用这种方式的时候需要先导入这两个模块

方式6

  简单实例

 1 import unittest2 3 4 class LoadTest(unittest.TestCase):5 6     def test_case_01(self):7         self.assertEqual(1, 1)8 9     def test_case_02(self):
10         self.assertEqual(2, 2)
11 
12 
13 if __name__ == '__main__':
14     suite = unittest.makeSuite(LoadTest)
15     runner = unittest.TextTestRunner()
16     runner.run(suite)
# 输出
..
----------------------------------------------------------------------
Ran 2 tests in 0.000sOKProcess finished with exit code 0

说明

  方式6的方法同样只能加载一个测试类,但是相比前面几种方法,代码少了很多,同样,如果运行多个测试类仍然需要创建多个suite

方式7

  简单实例

 1 import unittest2 3 4 class LoadTest(unittest.TestCase):5 6     def test_case_01(self):7         self.assertEqual(1, 1)8 9     def test_case_02(self):
10         self.assertEqual(2, 2)
11 
12 
13 if __name__ == '__main__':
14     discover = unittest.defaultTestLoader.discover(start_dir='.', pattern='unittest*.py')
15     runner = unittest.TextTestRunner()
16     runner.run(discover)
# 输出
..
----------------------------------------------------------------------
Ran 2 tests in 0.000sOKProcess finished with exit code 0

说明

  方式7通过defaultTestLoader.discover()方法来发现用例,我们可以看到第一个参数start_dir 表示用例的目录, pattern 表示匹配什么样的文件搜索测试用例,比较上面几种方法,个人认为这种方法是最灵活的,我们可以通过规范测试模块文件的命名,使用这种方式一次性加载所有的用例

总结

  大概方法差不多就这些,其实还有很多其他加载方法, 比如通过TestLoader方法加载用例,我们可以看到他其他加载用例的方法。

最后呢还是需要根据个人实际中的一个需求选择不同的方法, 正确的方法往往会事半功倍。

感谢每一个认真阅读我文章的人!!!

我个人整理了我这几年软件测试生涯整理的一些技术资料,包含:电子书,简历模块,各种工作模板,面试宝典,自学项目等。欢迎大家点击下方名片免费领取,千万不要错过哦。

 

http://www.mmbaike.com/news/49276.html

相关文章:

  • 网站后台管理图片水印怎么做临沂头条新闻今日头条
  • 如何再国外网站做折扣做营销型网站哪家好
  • 企业网站建设报价表建网站的详细步骤
  • 做高级电工题的网站我赢网提供的高水平网页设计师
  • 中国建设银行西平支行网站中国广告网
  • 网站排名seo站长网站
  • 如何给自己做的网站加上域名seo网站优化课程
  • 做杂志的网站有哪些内容在哪里可以找到网站
  • 上海比较好的设计院信阳seo推广
  • 成都微信小程序商城广州seo优化排名公司
  • 世界大学排名吴忠seo
  • 做网站优化哪家好怎么找网站
  • 网站建设与网站开发宁德市中医院
  • 今天头条新闻下载优化大师并安装
  • 网站 流量 不够用seo的五个步骤
  • 深圳网站设计十年乐云seo网络营销与直播电商专业就业前景
  • 加盟型网站建设网络公关公司联系方式
  • 做篮球网站用的背景图如何做推广和引流
  • 青岛城乡建设委员会网站官网优化什么意思
  • 7一12岁手工简单又漂亮seo网站排名优化软件是什么
  • 网站建设的英文翻译360地图下载最新版
  • 营销式网站制作守游网络推广平台
  • 定制网站和模板网站的区别制作网页设计公司
  • 专业的公司网站制作服务我想创建一个网络平台
  • 中山网站建设 760企业网站的域名是该企业的
  • 网站优化外链怎么做资源平台
  • 成都专业网站建设如何免费搭建自己的网站
  • 滨州哪里有做网站的搜索引擎优化方法有哪些
  • 写论文的好网站关键词seo排名怎么样
  • 佛山小程序开发公司排名seo怎么样