unittest断言方法的使用
unittest框架的TestCase类提供以下方法用于测试结果的判断
| 方法 | 检查 | 版本 |
| assertEqual(a, b) | a ==b | |
| assertNotEqual(a, b) | a !=b | |
| assertTrue(x) | bool(x) is True | |
| assertFalse(x) | Bool(x) is False | |
| assertIs(a, b) | a is b | 3.1 |
| assertIsNot(a, b) | a is not b | 3.1 |
| assertIsNone(x) | x is None | 3.1 |
| assertIsNotNone(x) | x is not None | 3.1 |
| assertIn(a, b) | a in b | 3.1 |
| assertNotIn(a, b) | a not in b | 3.1 |
| assertIsInstance(a, b) | isinstance(a,b) | 3.1 |
| assertNotIsInstance(a, b) | not isinstance(a,b) | 3.1 |
-assertEqual(first,second,msg=None)
断言第一个参数和第二个参数是否相等,如果不相等则测试失败
-assertNotEqual(first,second,msg=None)
assertNotEqueal()和assertEqual()相反,它用于第一个参数与第二个参数是否不相等,如果相等则测试失败
-assertTrue(expr,msg=None)
-assertFalse(expr,msg=None)
测试表达式是true(或false)
-assertIn(first,second,msg=None)
-assertNotIn(first,second,msg=None)
判断第一个参数是否在第二个参数中,反过来讲,第二个参数是否包含第一个参数
-assertIs(first,second,msg=None)
-assertIsNot(first,second,msg=None)
断言第一个参数和第二个参数是否为同一个对象
-assertIsNone(first,second,msg=None)
-assertIsNotNone(first,second,msg=None)
断言表达式是否为None对象
-assertIsInstance(first,second,msg=None)
-assertIsNotInstance(first,second,msg=None)
断言obj是否为cls的一个实例
unittest案例:
calculate.py:
class Math:
def __init__(self,a,b):
self.a = int(a)
self.b = int(b) def add(self):
return self.a + self.b
test_Math.py:
from calculator import Math
import unittest class TestMath(unittest.TestCase): def setUp(self):
print("test start") def test_add(self):
j = Math(5,10)
self.assertEquals(j.add(),15)
# self.assertEquals(j.add(),12) def test_add1(self):
j = Math(55,100)
self.assertNotEqual(j.add(),145) def test_add2(self):
j = Math(5,10)
self.assertTrue(j.add() > 10) def assertIs_test(self):
self.assertIs("abc","abc")
# self.assertIs("ab","abc") def assertIn_test(self):
self.assertIn("python","hello python")
# self.assertIn("abc","hello python") def tearDown(self):
print("test end") if __name__ == '__main__':
# unittest.main()
# 构造测试集
suit = unittest.TestSuite()
suit.addTest(TestMath("test_case"))
# 执行测试
runner = unittest.TextTestRunner()
runner.run(suit)
unittest断言方法的使用的更多相关文章
- (三)unittest断言方法的介绍
断言如同在测试用例上,类似于预期结果与实际结果是否一致,如果一致则表示测试通过,Assert断言很好的用于测试结果判断上,更灵活的对预期结果和实际结果进行对比,下面简单的介绍一下unittest的As ...
- unittest常用的断言方法
unittest常用的断言方法 #msg:判断不成立时需要反馈的字符串 assertEqual(self, first, second, msg=None) --判断两个参数相等:first == s ...
- 测试教程网.unittest教程.7. 各种断言方法
From: http://www.testclass.net/pyunit/assert/ 背景 unittest支持各种断言方法. 断言列表 官方文档 方法 检查点 assertEqual(a, b ...
- unittest 单元测试框架断言方法
unittest单元测试框架的TestCase类下,测试结果断言方法:Assertion methods 方法 检查 版本 assertEqual(a, b) a == b assertNotEqu ...
- Selenium实战(四)——unittest单元测试2(断言方法+discover()多测试用例的执行)
一.断言方法 方法 检查 版本 assertEqual(a,b) a==b assertNotEqual(a,b) a!=b assertTrue(x) bool(x) is True a ...
- unittest框架里的常用断言方法:用于检查数据
1.unittest框架里的常用断言方法:用于检查数据. (1)assertEqual(x,y) 检查两个参数类型相同并且值相等.(2)assertTrue(x) 检查唯一的参数值等于True(3)a ...
- python接口自动化(二十三)--unittest断言——上(详解)
简介 在测试用例中,执行完测试用例后,最后一步是判断测试结果是 pass 还是 fail,自动化测试脚本里面一般把这种生成测试结果的方法称为断言(assert).用 unittest 组件测试用例的时 ...
- 自动化测试神器 之 python unittest 断言
自动化测试的最后一步需要判断结果是否正确,而正确设置断言可以帮助判断测试用例的执行结果,从而提高自动化测试的效率,python unittest 提供了一个比较完整的断言方法.unittest框架测 ...
- Selenium 2自动化测试实战28(断言方法)
一.断言方法 执行用例的过程中,最终用例是否执行通过,是通过判断测试得到的实例结果与预期结果是否相等决定的.unittest框架的TestCase类提供下面这些方法用于测试结果的判断. -assert ...
随机推荐
- REST访问(RestTemplate)
https://www.cnblogs.com/softidea/p/6910198.html 经常需要发送一个GET/POST请求到其他系统(REST API),通过JDK自带的HttpURLCon ...
- C/C++程序员应聘常见面试题深入剖析(1)
摘自:http://blog.csdn.net/zhoudengqing 1.引言 本文的写作目的并不在于提供C/C++程序员求职面试指导,而旨在从技术上分析面试题的内涵.文中的大多数面试题来自各大论 ...
- Spring使用_进阶
概述 本文主要写了几个关于Spring Aware,多线程,计划任务(定时任务),条件注解,组合注解,元注解,Spring测试的小例子以及关于@Enable*注解的工作原理的理解. Spring Aw ...
- 导入动态Web项目到Eclipse中遇到的问题
问题一:创建动态网页项目时,项目报错而无文件报错 当时解决方法:直接右击项目->properties->project facets将jdk改为1.8版本即可 如图: 问题二:Tomcat ...
- 简述UML类图
注:本文摘自刘伟老师的博客http://blog.csdn.net/lovelion/article/details/7838679,如有侵权,请联系本人! 1.类的UML图示 在UML中,类使用包含 ...
- 关于一个app中数据库的问题
如果是不同名字的数据库,可以有多个数据库操作dao 如果是同样名字的数据库,只能有一个数据库操作dao,创建表的语句可以写在一个oncreate方法里面 例如 public class Address ...
- 百度地图 v2.1.3申请KEY Android签名证书的sha1值
今天研究下百度地图,没想到第一步就遇到了问题,升级2.13后,需要Android签名证书的sha1值,网上看了下,发现遇到这问题的童鞋还是很多,官方说的两种方法: 第一种:使用keytool keyt ...
- 欧拉回路/通路 Codeforces Round #288 (Div. 2)
http://codeforces.com/contest/508/problem/D 以上是题目链接 题目大意 给n个字符串看能不能链接在一起 因为 三个三个分割 所以字符串 如abc ab作为起点 ...
- Xcode4删除文件后missing file警告
1.运行终端,执行命令行进入missing file目录,然后运行 svn delete nameOfMissingFile 或 git rm nameOfMissingFile 2.删除隐藏的.sv ...
- CPP-练习
HW: 1.局部变量能否和全局变量重名? 答:能,局部会屏蔽全局.要用全局变量,需要使用"::" ;局部变量可以与全局变量同名,在函数内引用这个变量时,会用到同名的局部变量,而不会 ...