断言如同在测试用例上,类似于预期结果与实际结果是否一致,如果一致则表示测试通过,Assert断言很好的用于测试结果判断上,更灵活的对预期结果和实际结果进行对比,下面简单的介绍一下unittest的Assert断言

unittest中基础的assert断言包括:

方法 用法 说明
assertEqual(a, b) a == b 用来判断a与b相等,如果相等则测试通过
assertNotEqual(a, b) a != b 用来判断a与b不相等,如果不相等则测试通过
assertTrue(x) bool(x) is True 用来判断条件是否为真,如果条件为真,测试通过(备注:最好使用assertEqual断言方法,代替)
assertFalse(x) bool(x) is False 用来判断条件是否为假,如果条件为假,测试通过(备注:最好使用assertNotEqual断言方法,代替)
assertIs(a, b) a is b 用来判断a和b是不是同一个对象,如果是,测试通过
assertIsNot(a, b) a is not b 用来判断a和b是不是同一个对象,如果不是,测试通过
assertIsNone(x) x is None 用来判断a是否空,如果为空,测试通过
assertIsNotNone(x) x is not None 用来判断a是否空,如果不为空,测试通过
assertIn(a, b) a in b 用来判断a字符串是否出现在b字符中,如果出现,测试通过
assertNotIn(a, b) a not in b 用来判断a字符串是否出现在b字符中,如果不出现,测试通过
assertIsInstance(a, b) isinstance(a, b) 用来判断a是否属于某一个数据类型,如果属于,测试通过
assertNotIsInstance(a, b) not isinstance(a, b) 用来判断a是否属于某一个数据类型,如果不属于,测试通过
# -*- coding:utf-8 -*-
import unittest
class MyAssertTest(unittest.TestCase): @classmethod
def setUpClass(self):
pass def setUp(self):
pass def tearDown(self):
pass
@classmethod
def tearDownClass(self):
pass def test_assertNotEqual(self):
a = 1
b = 2
self.assertNotEqual(a,b,msg="测试不通过,a是等于b的") #a不等于b是,测试通过 def test_assertTrue(self):
bool=True
self.assertTrue(bool,msg="测试不通过,bool值为假") def test_assertFalse(self):
bool=False
self.assertFalse(bool,msg="测试不通过,bool值为真") def test_assertIs(self):
a = [1]
b = a
self.assertIs(a,b,msg="测试不通过,a和b不是同一个obj") def test_assertNotIs(self):
a = [1]
b = [1]
self.assertIsNot(a,b,msg="测试不通过,a和b是同一个obj") def test_assertIsNone(self):
a = None
self.assertIsNone(a,msg="测试不通过,a变量不为空")
def test_assertIsNotNone(self):
a = 1
self.assertIsNotNone(a,msg="测试不通过,a变量为空") def test_assertIn(self):
a = "Hello"
str = 'Hello World'
self.assertIn(a,str,msg="测试不通过,%s字符串不在%s中"%(a,str)) def test_assertNotIn(self):
a = "hello"
str = 'Hello World'
self.assertNotIn(a,str,msg="测试不通过,%s字符串在%s中"%(a,str)) def test_assertIsInstance(self):
a = 1
self.assertIsInstance(a,str,msg="测试不通过,%s不是%s类型,%s是%s类型"%(a,str,a,type(a))) def test_assertIsNotInstance(self):
a = 1
self.assertNotIsInstance(a,str,msg="测试不通过")

(三)unittest断言方法的介绍的更多相关文章

  1. unittest断言方法的使用

    unittest框架的TestCase类提供以下方法用于测试结果的判断 方法 检查 版本 assertEqual(a, b) a ==b   assertNotEqual(a, b) a !=b   ...

  2. unittest框架里的常用断言方法:用于检查数据

    1.unittest框架里的常用断言方法:用于检查数据. (1)assertEqual(x,y) 检查两个参数类型相同并且值相等.(2)assertTrue(x) 检查唯一的参数值等于True(3)a ...

  3. unittest常用的断言方法

    unittest常用的断言方法 #msg:判断不成立时需要反馈的字符串 assertEqual(self, first, second, msg=None) --判断两个参数相等:first == s ...

  4. 测试教程网.unittest教程.7. 各种断言方法

    From: http://www.testclass.net/pyunit/assert/ 背景 unittest支持各种断言方法. 断言列表 官方文档 方法 检查点 assertEqual(a, b ...

  5. unittest 单元测试框架断言方法

    unittest单元测试框架的TestCase类下,测试结果断言方法:Assertion methods 方法 检查 版本 assertEqual(a, b)  a == b assertNotEqu ...

  6. Selenium实战(四)——unittest单元测试2(断言方法+discover()多测试用例的执行)

    一.断言方法 方法 检查 版本 assertEqual(a,b) a==b   assertNotEqual(a,b) a!=b   assertTrue(x) bool(x) is True   a ...

  7. python接口自动化(二十三)--unittest断言——上(详解)

    简介 在测试用例中,执行完测试用例后,最后一步是判断测试结果是 pass 还是 fail,自动化测试脚本里面一般把这种生成测试结果的方法称为断言(assert).用 unittest 组件测试用例的时 ...

  8. Python单元测试框架unittest使用方法讲解

    这篇文章主要介绍了Python单元测试框架unittest使用方法讲解,本文讲解了unittest概述.命令行接口.测试案例自动搜索.创建测试代码.构建测试套件方法等内容,需要的朋友可以参考下   概 ...

  9. Selenium 2自动化测试实战28(断言方法)

    一.断言方法 执行用例的过程中,最终用例是否执行通过,是通过判断测试得到的实例结果与预期结果是否相等决定的.unittest框架的TestCase类提供下面这些方法用于测试结果的判断. -assert ...

随机推荐

  1. D-query SPOJ - DQUERY 主席树查询区间内不同数出现的次数

    我们不以权值建立主席树,而是区间端点作为值建立线段树,一个个插入a[i],我们发现这个数之前是存在的,就需要在上个版本的主席树上减去原来的位置,并加上现在的位置,这样我们在i版本的主席树,维护1-r中 ...

  2. H3C路由器SSH服务配置命令

  3. js循环遍历数组(对象)

    1,for循环 对于循环应该是最常用的一种遍历方式了,通常用来遍历数组结构. let arr = [a,b,d];for (let i=0; i<arr.length; i++){ consol ...

  4. 【转载】.NET中使用Redis

    Redis是一个用的比较广泛的Key/Value的内存数据库,新浪微博.Github.StackOverflow 等大型应用中都用其作为缓存,Redis的官网为http://redis.io/. 最近 ...

  5. 代码片段 Powershell修改桌面壁纸

    其实只不过是利用了win32函数 function Set-Wallpaper($image){ $source = @" using System; using System.Runtim ...

  6. Git 取消跟踪已版本控制的文件(亲测可行)

    git 不再追踪文件改动 git update-index --assume-unchanged filePath git 恢复追踪文件改动 git update-index —no-assume-u ...

  7. java 反射实现框架功能

    框架与框架要解决的核心问题 我做房子卖给用户住,由用户自己安装门窗和空调,我做的房子就是框架,用户需要使用我的框架,把门窗插入进我提供的框架中.框架与工具类有区别,工具类被用户的类调用,而框架则是调用 ...

  8. 原生PHP实现Mysql数据分页功能

    一. 思路整理 实现一个数据分页功能,需要有数据的总条数,每页展示的条数,和当前在第几页这三个参数 通过⌈总条数/每页展示的条数⌉可以得到总页数,比如某留言板有101条留言,每页展示10条,一那就需要 ...

  9. ASP.NET MVC 实现页落网资源分享网站+充值管理+后台管理(4)之业务仓储工厂

    在创建业务层之前,我们先来熟悉一下业务仓储工厂Bobo.Repository.dll程序集,后续的业务操作,我们都将通过这个程序集中的方法传递数据库操作,其介于数据库操作与业务层之间,详情可前往< ...

  10. C# 字典 Dictionary 的 TryGetValue 与先判断 ContainsKey 然后 Get 的性能对比

    本文使用 benchmarkdotnet 测试字典的性能,在使用字典获取一个可能存在的值的时候可以使用两个不同的写法,于是本文分析两个写法的性能. 判断值存在,如果值存在就获取值,可以使用下面两个不同 ...