川石教育
全国咨询热线:136-9172-9932
  1. 首页 > 资讯与干货 > IT资讯

Unittest如何组织冒烟用例

作者:川石学院 日期:2022-06-17 17:32:43 点击数:

  一天一个关于测试知识点,5分钟内讲解你最关心的软件测试问题,今天就接着来谈谈关于软件测试中的“Unittest如何组织冒烟用例”。

JavaScript 在 selenium 自动化中的应用(图1)

环境准备:

  Python 3.x

  Pytest 5.x

  项目目录

  smoke_testing_demo

  test_case

  __init__.py

  test_case_with_unittest.py

  test_case_with_pytest.py

  run_unittest_smoke_testing.py

  Unittest如何组织冒烟用例

  当 import unittest 时 ,会自动导入TestLoader类

  TestLoader这个类下,封装了 5 种组织用例的方法

  本文主要讲解 loadTestsFromNames

  loadTestsFromNames 方法简介

  # loader.py 该文件在python3.7已不存在,建议使用python3.64 查看使用方法

  class TestLoader(object):

  """

  该类负责根据各种标准加载测试并将它们包装在TestSuite中

  """

  def loadTestsFromNames(self, names, module=None):

  """

  返回给定的一组用例名的测试用例的套件

  """

  loadTestsFromNames 组织冒烟用例

  # test_case_with_unittest.py

  #!/usr/bin/env python3

  # encoding:utf-8

  import unittest

  class TestUittestCase(unittest.TestCase):

  def test_case_with_unittest_1(self):

  '''冒烟测试用例'''

  print('I am Smoke Testing ')

  def test_case_with_unittest_2(self):

  pass

  if __name__ == '__main__':

  unittest.main(verbosity=2)

  # test_case_with_unittest2.py

  #!/usr/bin/env python3

  # encoding:utf-8

  import unittest

  class TestUittestCase2(unittest.TestCase):

  def test_case_with_unittest_3(self):

  '''冒烟测试用例'''

  print('I am Smoke Testing ')

  def test_case_with_unittest_4(self):

  pass

  if __name__ == '__main__':

  unittest.main(verbosity=2)

  冒烟测试用例集

  # run_unittest_smoke_testing.py

  #!/usr/bin/env python3

  # encoding:utf-8

  import unittest

  cases = [

  'test_case.test_case_with_unittest2.TestUittestCase2.test_case_with_unittest_3',

  'test_case.test_case_with_unittest.TestUittestCase.test_case_with_unittest_1'

  ]

  test_suit = unittest.TestLoader().loadTestsFromNames(cases)

  runner = unittest.TextTestRunner(verbosity=2)

  runner.run(test_suit)

  运行结果

  test_case_with_unittest_3(test_case.test_case_with_unittest2.TestUittestCase2)

  冒烟测试 ... ok

  test_case_with_unittest_1 (test_case.test_case_with_unittest.TestUittestCase)

  冒烟测试 ... ok

  ----------------------------------------------------------------------

  Ran 2 tests in 0.000s

  小结:

  通过loadTestsFromNames 可以从不同的模块组织特定的用例集

  使用loadTestsFromNames这个方法,需要传入一个数组

  数组里面里面的元素必须是字符串

  数组元素传入格式:'moudleName.testCaseClassName.testCaseName'

  执行用例是根据数组元素的的顺序执行


相关文章
  • 亚马逊运营成功转行软件测试,薪资13K表示很满意!2022-06-17 17:32:43
  • 西安川石的兰朋友喊你来当他的学弟学妹啦!2022-06-17 17:32:43
  • 国外的月亮也不一定比国内测试猿的年薪美~2022-06-17 17:32:43
  • 建筑工程专业朱同学成功转行为软件测试人!2022-06-17 17:32:43
  • 财务管理专业转行软件测试月薪甩会计几条街!2022-06-17 17:32:43
  • 只有技术沉淀才能成功上岸,深圳就业薪资13K!2022-06-17 17:32:43
  • 薪资11K!实现自我价值,从掌握一门IT技术开始...2022-06-17 17:32:43
  • 文科生转行软件测试照样拿下高薪15K!2022-06-17 17:32:43
  • 恭喜罗同学喜提19.5K,成功入行软件测试!2022-06-17 17:32:43
  • 毕业1年,迷茫的他最终选择转行软件测试2022-06-17 17:32:43