温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Python测试框架内容是什么

发布时间:2021-12-01 14:56:51 来源:亿速云 阅读:180 作者:iii 栏目:编程语言

本篇内容主要讲解“Python测试框架内容是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python测试框架内容是什么”吧!

下面进行有效的说明一下Python测试框架,Python是一种解释性的语言,但是这种说法是不正确的,其实他是一种可以让没有学习过编程或者并非计算机专业的编程学习的人,易于接受的语言。

PythonPython测试框架中具有标准的单元测试框架(从 Python 2.3 开始。在 Python 2.2 中这只是可选模块),与 Java jUnit 框架十分类似。测试用例的结构与 jUnit 采用相同的方式。每一个待测试的类和模块通常都具有自己的测试类。测试类中包含测试装置(fixture)。

import unittest  from pprint import pprint  import feedparser  class FeedparserTest(unittest.TestCase):      """      A test class for the feedparser module.      """            def setUp(self):          """          set up data used in the tests.          setUp is called before each test function execution.          """          self.developerWorksUrl = "testData/developerworks.rss"             def testParse09Rss(self):          """          Test a successful run of the parse function for a          0.91 RSS feed.          """          print "FeedparserTest.testParse09RSS()"                    result = feedparser.parse(self.developerWorksUrl)          pprint(result)          self.assertEqual(0, result['bozo'])                    self.assert_(result is not None)          channel = result['channel']          self.assert_(channel is not None)          chanDesc = channel['description']          self.assertEqual(u'The latest content from IBM developerWorks',              chanDesc)                    items = result['items']          self.assert_(items is not None)          self.assert_(len(items)> 3)          firstItem = items[0]          title = firstItem['title']          self.assertEqual(u'Build installation packages with               solution installation and deployment technologies',              title)          def tearDown(self):          """          tear down any data used in tests          tearDown is called after each test function execution.          """          pass                    if __name__ == '__main__':      unittest.main()

它们在 setUp 函数中初始化。每一个测试都编写为测试类中的一个独立的测试函数。unittest 框架会在测试函数之间循环往复,先调用 setUp 、再测试函数、然后清除( tearDown )测试函数。上述清单是实现 feedparser 模块基本测试功能的测试类。完整的测试类见 feedParserTest 项目下的 src/feedparserTest/FeedparserTest.py。

setUp 函数负责准备整个测试过程中需要使用的测试装置,在本例中只有测试用的 RSS 文件的目录,测试函数将对其进行解析。 testParse09Rss 是真正的测试函数。这个函数调用 feedparser.parse 函数,传递测试用的 RSS 文件,输出解析结果。

并通过 TestCase 类的 assert 函数执行基本的检查统作。如果任何 assert 的求值结果不是真,或是在执行过程中抛出任何异常。unittest 就会报告一次测试失败或错误。***的两行负责在这个测试类内部运行测试,方法是直接运行该模块即可。

要独立运行该测试类,可以按前面所说的相同方式运行 FeedparserTest.py 模块。在 Eclipse Navigator 视图中选择 FeedparserTest.py。然后通过 Python测试框架> Run 运行。此时显示启动配置窗口。除 Base 目录之外,其他都保持缺省值即可。Base 目录必须是 feedParserTest 项目的目录。

这样才能在当前目录下找到 RSS 文件(testData/developerworks.rss)。修改 base 目录的设置,然后点击“Run”。输出信息显示在 Console 上。 您也许希望我们编写的所有单元测试都能够作为构建的一部分自动执行。将下面清单 5 所示的构建片断加入构建脚本便可实现。

***行是目标声明,这与其他的脚本相同。第 2 至第 6 行调用 py-test 任务。这部分代码将在“src”目录下查找所有以“Test.py”结尾的所有文件,并运行所有测试。 PYTHONPATH 设置为“src”,测试执行的当前工作目录就是当前目录(‘.’)。

到此,相信大家对“Python测试框架内容是什么”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI