我们在做自动化测试的时候,有时候想要很清楚的看到每条用例执行的详细信息,我们可以通过unittest中verbosity参数进行设置

verbosity参数设置

verbosity表示在只执行用例的过程中可以把用例的执行情况根据配置的参数不同表示不同的详细程度,我们先看下源码中如何进行解释的。

 

通过观察可以看到我们verbosity默认为1,可以设置为0和2。

  • 0 (静默模式): 你只能获得总的测试用例数和总的结果。
  • 1 (默认模式): 非常类似静默模式 只是在每个成功的用例前面有个“.” 每个失败的用例前面有个 “E”
  • 2 (详细模式):测试结果会显示每个测试用例的所有相关的信息 并且 你在命令行里加入不同的参数可以起到一样的效果

看这么多,不如我们实践下。

小试牛刀

我们通过unittest和我们前面写的查询音乐的结果一起看看verbosity每个情况

verbosity=0

0 (静默模式): 你只能获得总的测试用例数和总的结果。

# 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的时候,只显示了执行错误了多少条用例

vervbosity=1

1 (默认模式): 非常类似静默模式 只是在每个成功的用例前面有个“.” 每个失败的用例前面有个 “E”

# 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表示

vervbosity=2

2 (详细模式):测试结果会显示每个测试用例的所有相关的信息 并且 你在命令行里加入不同的参数可以起到一样的效果

# 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设置各个参数表示的内容详细的展示给大家,大家也可以动手自己试一试

unittest---unittest中verbosity参数设置的更多相关文章

  1. vlc 详细使用方法:libvlc_media_add_option 函数中的参数设置

    vlc 详细使用方法:libvlc_media_add_option 函数中的参数设置 [转载自]tinyle的专栏 [原文链接地址]http://blog.csdn.net/myaccella/ar ...

  2. Tomcat中JVM参数设置

    Tomcat本身不能直接在计算机上运行,需要依赖于硬件基础之上的操作系统和一个Java虚拟机.Tomcat的内存溢出本质就是JVM内存溢出,所以在本文开始时,应该先对JavaJVM有关内存方面的知识进 ...

  3. Hibernate的HQL中in参数设置

    平时经常用Hibernate,由于习惯表间不建立关联,所以HQL查询时候经常要用in语句. 我最常用的情况有2种: 1.in后是个子查询,如 FROM A WHERE A.ID IN (SELECT ...

  4. Alsa中PCM参数设置⭐⭐

    1) PCM设备的句柄.2) 指定同时可供回放或截获的PCM流的方向3) 提供一些关于我们想要使用的设置选项的信息,比如缓冲区大小,采样率,PCM数据格式等4) 检查硬件是否支持设置选项.   4.1 ...

  5. struts2中constant参数设置

    序号 方法 说明 1 <constant name="struts.i18n.encoding" value="UTF-8"/> 指定web应用默认 ...

  6. java中获取接口(方法)中的参数名字(eclipse设置编译参数)(java8 javac -parameters)

    interface接口参数 jdk1.7及以前使用spring功能实现的: 注意: 1.该功能只能获取类的方法的参数名,不能获取接口的方法的参数名. public static void test() ...

  7. Swift语言中为外部参数设置默认值可变参数常量参数变量参数输入输出参数

    Swift语言中为外部参数设置默认值可变参数常量参数变量参数输入输出参数 7.4.4  为外部参数设置默认值 开发者也可以对外部参数设置默认值.这时,调用的时候,也可以省略参数传递本文选自Swift1 ...

  8. 用WIN7系统IIS的提示:数据库连接出错,请检查Conn.asp文件中的数据库参数设置

    我用科讯的从4.0开始,去年开始很少用科讯做新站了,今天拿来做一下,结果悲剧了,数据库路径老是不对,百度一番又一番的,,最后终于给度娘解决了.分享出来给遇到同样的问题的人. 用WIN7系统IIS的注意 ...

  9. Mysql : L闪存卡linux中的内核参数设置

    将 Nytro WarpDrive 加速卡配置为文件系统 本节说明的操作使您可调整 Nytro WarpDrive 加速卡,增强使用 Oracle Linux with Unbreakable Ent ...

随机推荐

  1. POJ 1325 Machine schedine (二分图-最小点覆盖数=最大匹配边数)

    As we all know, machine scheduling is a very classical problem in computer science and has been stud ...

  2. Dubbo加权轮询负载均衡的源码和Bug,了解一下?

    本文是对于Dubbo负载均衡策略之一的加权随机算法的详细分析.从2.6.4版本聊起,该版本在某些情况下存在着比较严重的性能问题.由问题入手,层层深入,了解该算法在Dubbo中的演变过程,读懂它的前世今 ...

  3. iSensor App Kit 测试之 MT9V111 MT9M111 MT9D111

    iSensor App Kit 可以调试测试一切常规的sensor,对于ccusb20底板,可以直接兼容官哥所有的dvp接口的摄像头,分辨率从30w到1400w均没问题. 今天又测试了三款sensor ...

  4. docker-compose编排参数详解

    一.前言 Compose是一个用于定义和运行多容器Docker应用程序的工具.使用Compose,您可以使用YAML文件来配置应用程序的服务.然后,使用单个命令,您可以从配置中创建并启动所有服务. C ...

  5. git 每次提交需要输入密码

    亲测可行(第一种) 原文:git每次提交都要输入密码怎么办 ================COPY=========================== 不少用户反映在使用Git时,经常会遇到需要频 ...

  6. c++之指针

    一.指针的基本概念 指针的作用:可以通过指针间接访问内存. 内存编号是从0开始记录的,一般用十六进制数字表示. 可以利用指针变量保存地址. 二.指针变量的定义和使用 指针变量定义语法:数据类型 *变量 ...

  7. ASP.NET+d3.js实现Sqlserver数据库的可视化展示

    效果: 数据库端: 前端展示: 实现原理: 1.在数据段建立两个存储过程 queryUserAnsawer(id) 根据用户ID返回每一题的得分,主要是bcp exe时不能直接在sqlserver中执 ...

  8. HCTF_2018-Writeup【web题】

    HCTF_2018-Writeup 赛题来自:BUUCTF By:Mirror王宇阳 WarmUp: 打开赛题的页面源码(F12) <!DOCTYPE html> <html lan ...

  9. sql手工注入1

    手工注入常规思路 1.判断是否存在注入,注入是字符型还是数字型 2.猜解 SQL 查询语句中的字段数 3.确定显示的字段顺序 4.获取当前数据库 5.获取数据库中的表 6.获取表中的字段名 7.查询到 ...

  10. DG重启之后主备数据不同步

    问题描述:本来配置好的DG第二天重启之后,发现主备库数据不能同步,在主库上执行日志切换以及创建表操作都传不到备库上,造成这种错误的原因是主库实例断掉后造成备库日志与主库无法实时接收 主库:orcl  ...