咱们在作自动化测试的时候,有时候想要很清楚的看到每条用例执行的详细信息,咱们能够经过unittest中verbosity参数进行设置json
verbosity表示在只执行用例的过程当中能够把用例的执行状况根据配置的参数不一样表示不一样的详细程度,咱们先看下源码中如何进行解释的。api
经过观察能够看到咱们verbosity默认为1,能够设置为0和2。 post
看这么多,不如咱们实践下。测试
咱们经过unittest和咱们前面写的查询音乐的结果一块儿看看verbosity每一个状况url
0 (静默模式): 你只能得到总的测试用例数和总的结果。spa
# coding:utf-8 import unittest import requests class Music(unittest.TestCase): def select(self,name): url = 'https://api.apiopen.top/searchMusic' data = { "name":name } r = requests.post(url,data=data) b = r.json()['result'][0]['title'] return b # 错误的用例 def test01(self): b = '断桥残雪的故事' a = self.select(b) self.assertEqual(b,a) print('这个是用例一') # 错误的用例 def test02(self): a = '说好不哭的剧情' b = self.select(a) self.assertEqual(a,b) print('这个是用例二') # 正确的用例 def test03(self): a = '芒种' b = self.select(a) self.assertEqual(a,b) print('这个是用例三') if __name__ == '__main__': unittest.main(verbosity=0)
经过执行后咱们能够看到当vervbosity=0的时候,只显示了执行错误了多少条用例命令行
1 (默认模式): 很是相似静默模式 只是在每一个成功的用例前面有个“.” 每一个失败的用例前面有个 “E”3d
# coding:utf-8 import unittest import requests class Music(unittest.TestCase): def select(self,name): url = 'https://api.apiopen.top/searchMusic' data = { "name":name } r = requests.post(url,data=data) b = r.json()['result'][0]['title'] return b # 错误的用例 def test01(self): b = '断桥残雪的故事' a = self.select(b) self.assertEqual(b,a) print('这个是用例一') # 错误的用例 def test02(self): a = '说好不哭的剧情' b = self.select(a) self.assertEqual(a,b) print('这个是用例二') # 正确的用例 def test03(self): a = '芒种' b = self.select(a) self.assertEqual(a,b) print('这个是用例三') if __name__ == '__main__': unittest.main(verbosity=1)
经过执行后咱们能够看到当vervbosity=1的时候,成功的用例用.表示,失败的用E表示code
2 (详细模式):测试结果会显示每一个测试用例的全部相关的信息 而且 你在命令行里加入不一样的参数能够起到同样的效果blog
# coding:utf-8 import unittest import requests class Music(unittest.TestCase): def select(self,name): url = 'https://api.apiopen.top/searchMusic' data = { "name":name } r = requests.post(url,data=data) b = r.json()['result'][0]['title'] return b # 错误的用例 def test01(self): b = '断桥残雪的故事' a = self.select(b) self.assertEqual(b,a) print('这个是用例一') # 错误的用例 def test02(self): a = '说好不哭的剧情' b = self.select(a) self.assertEqual(a,b) print('这个是用例二') # 正确的用例 def test03(self): a = '芒种' b = self.select(a) self.assertEqual(a,b) print('这个是用例三') if __name__ == '__main__': unittest.main(verbosity=2)
执行后发现verbosity=2,执行完用例把用例执行详情详细的打印出来了
这一篇重复代码较多,只是为了方便理解verbosity设置各个参数表示的内容详细的展现给你们,你们也能够动手本身试一试