• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

关于python:unittest系统四测试套件

python 搞代码 3年前 (2022-02-20) 25次浏览 已收录 0个评论

在后面的分享,咱们分享了原理,断言,执行。这次咱们分享测试套件。

测试套件,咱们利用它能够组织测试运行。那么如何实现呢

<code class="js">def suite():
    suite = unittest.TestSuite()
    suite.addTest(TestDemo('testone'))
    suite.addTest(TestDemo('testtwo'))
    return suite
​
if __name__ == '__main__':
    runner = unittest.TextTestRunner()
    runner.run(suite())

  这样,咱们就组织好了,咱们的测试套件,退出了两个用例。而后 利用TextTestRunner来执行用例,咱们看下后果

其实,咱们还能够依据文件夹组织咱们的测试套件。咱们能够将之前的测试用例再复制一下。

而后就有两个测试用例文件,那么如何通过文件夹加载组织咱们的测试套件呢。

<code class="js">def suite():
    import  os
    path=os.getcwd()
    suite=unittest.TestLoader().discover(path, pattern='test*.py', top_level_dir=None)
    return suite
​
if __name__=="__main__":
    runner = unittest.TextTestRunner()
    runner.run(suite())

其实很简略,咱们只须要从TestLoader 加载。匹配test结尾的py文件,而后组合成测试套件。而后示例化TextTestRunner,去执行测试套件,咱们来看下执行后果

如果咱们在测试过程中,须要获取suite的测试用例个数,怎么操作呢,间接操作如下:

print(suite.countTestCases())
  运行下:


除了下面加载测试套件的形式,咱们还能够用上面的形式加载。

<code class="js">def suite():
    suit=unittest.TestSuite()
    suit.addTests([TestDemo('testone'),TestDemo('testtwo')])
    return suit
​
if __name__=="__main__":
    runner = unittest.TextTestRunner()
    runner.run(suite())

  执行的后果是一样的

还有其余办法:

def suite():
    suite = unittest.TestSuite()
    suite.addTests(unittest.TestLoader().loadTestsFromTestCase(TestDemo))
    return suite
if __name__=="__main__":   
    suitone=suite()
    name=unittest.TextTestRunner()
    name.run(suitone)
  

def suite():
    suite = unittest.TestSuite()
    suite.addTests(unittest.TestLoader().loadTestsFromName("testdemoone.TestDemo"))
    return suite
 if __name__=="__main__":   
    suitone=suite()
    name=unittest.TextTestRunner()
    name.run(suitone)

  下面两个形式都执行后果如下

咱们在执行的时候还能够配置展现详细信息。

suitone=suite()
name=unittest.TextTestRunner(verbosity=2)
name.run(suitone)

  
后果就能展现详细信息

如果你有问题能够留言或者加我微信:952943386。2021,一起牛转钱坤,一起牛逼。

欢送扫码关注,文章首发在公众号


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:关于python:unittest系统四测试套件

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址