自动化测试的最后一步需要判断结果是否正确,而正确设置断言可以帮助判断测试用例的执行结果,从而提高自动化测试的效率,python unittest  提供了一个比较完整的断言方法。unittest框架测试框架提供的方法比较多,而且很多方法在自动化测试的时候不会使用到,所以我这边总结一下我认为比较常用的测试方法,用最直白的话解释了一下。

序号 方法 解释
1 assertEqual(a, b) 判断ab是否相等
2 assertNotEqual(a, b) 判断ab不相等
3 assertIs(a, b)  判断a是b
4 assertIsNot(a, b) 判断a不是b
5 assertIsNone(a) 判断a是不是None
6 assertIsNotNone(a) 判断a不是None
 7 assertIn(a,b) 判断a在b中,此时a与b可以相等
 8 assertNotIn(a, b) 判断a不在b中
 9 assertIsInstance(a, b) 判断a是否属于b的实例
 10 assertNotIsInstance(a, b) 判断a不属于b的实例 
 11 assertGreater(a, b) 判断a > b
 12 assertGreaterEqual(a, b) 判断a >= b 
 13 assertLess(a, b) 判断a < b 
 14 assertLessEqual(a, b) 判断a <= b 
  1. 首先导入unittest模块 ;
  2. 创建一个测试类,继承TestCase;
  3. 定义setUp和tearDown方法;
    • setUp是进行测试前的初始化工作。
    • tearDown是测试后的清除工作。
  4. 创建测试用例,测试用例需要以test开头,每个测试用例,测试目的和测试内容应很明确。通过调用断言来判断程序执行结果和预期值是否相符。
  5. 调用unittest.main()启动测试。
#-*- coding:utf-8 -*-
import unittest class WANGYI(unittest.TestCase):
def setUp(self):
self.verifyString = 'test' def test01(self):
'''测试方法'''
self.assertEqual('test',self.verifyString,msg='两个值不相等') #msg 定义出错信息 def tearDown(self):
pass if __name__ == '__main__':
unittest.main()

自动化测试神器 之 python unittest 断言的更多相关文章

  1. selenium+python+unittest实现自动化测试(入门篇)

    本文主要讲解关于selenium自动化测试框架的入门知识点,教大家如何搭建selenium自动化测试环境,如何用selenium+python+unittest实现web页面的自动化测试,先来看看se ...

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

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

  3. 简单实现接口自动化测试(基于python+unittest)

    简单实现接口自动化测试(基于python+unittest) 简介 本文通过从Postman获取基本的接口测试Code简单的接口测试入手,一步步调整优化接口调用,以及增加基本的结果判断,讲解Pytho ...

  4. python接口自动化(二十四)--unittest断言——中(详解)

    简介 上一篇通过简单的案例给小伙伴们介绍了一下unittest断言,这篇我们将通过结合和围绕实际的工作来进行unittest的断言.这里以获取城市天气预报的接口为例,设计了 2 个用例,一个是查询北京 ...

  5. 最完整的自动化测试流程:Python编写执行测试用例及定时自动发送最新测试报告邮件

    今天笔者就要归纳总结下一整套测试流程,从无到有,实现零突破,包括如何编写测试用例,定时执行测试用例,查找最新生成的测试报告文件,自动发送最新测试报告邮件,一整套完整的测试流程.以后各位只要着重如何编写 ...

  6. Python3+Selenium2完整的自动化测试实现之旅(五):自动化测试框架、Python面向对象以及POM设计模型简介

    前言 之前的系列博客,陆续学习整理了自动化测试环境的搭建.IE和Chrome浏览器驱动的配置.selenium-webdriver模块封装的元素定位以及控制浏览器.处理警示框.鼠标键盘等方法的使用,这 ...

  7. 华为五年自动化测试工程详细解说:unittest单元测试框架

    一.单元测试框架说明 ​ 单元测试是指在编程中,针对程序模块的最小单元(类中的方法)进行正确性检验的测试工作.python+selenium自动化测试中通常使用unittest或者pytest作为单元 ...

  8. 《Selenium2自动化测试实战--基于Python语言》 --即将面市

    发展历程: <selenium_webdriver(python)第一版>   将本博客中的这个系列整理为pdf文档,免费. <selenium_webdriver(python)第 ...

  9. RobotFramework自动化测试框架-使用Python编写自定义的RobotFramework Lib

    使用Python构建Lib工程 可以用来开发Python Lib的IDE工具有很多,常见的有Pycharm,Eclipse with PyDev插件等,而且在RobotFramework官网中也已经提 ...

随机推荐

  1. nodejs .http模块, cheerio模块 实现 小爬虫.

    代码: var http = require("http"); var cheerio = require("cheerio"); var url = 'htt ...

  2. uwsgi理解

    uwsgi uWSGI 是一个 Web 服务器,它实现了 WSGI 协议.uwsgi.http 等协议.Nginx 中HttpUwsgiModule 的作用是与 uWSGI 服务器进行交换.WSGI ...

  3. 50_流程控制函数-case结构

    case函数的使用一:switch case 的效果 /* Java中 switch(变量或表达式){ case 常量1:语句1:break: ... default:语句n;break; } MyS ...

  4. 本周java学习

    本周学习的内容让我又进一步实践了java语言,我本周学到的内容是   循环: 强制结束命令行 //Ctrl+c for 循环的无限循环形式: for( ; ; )() while循环的无限循环形式: ...

  5. 微软Power BI 每月功能更新系列——7月Power BI 新功能学习

    Power BI Desktop 7月产品功能摘要 7月是Power BI Desktop团队的重要发布!但由于官方延迟更新,我们的讲述也就更晚了一点,也许大家觉得没有必要了,都8月了,谁还看7月的? ...

  6. Oracle自我补充之Decode()函数使用介绍

    decode()函数是ORACLE PL/SQL是功能强大的函数之一,目前还只有ORACLE公司的SQL提供了此函数,其他数据库厂商的SQL实现还没有此功能.   DECODE函数是ORACLE PL ...

  7. 机器学习: 共轭梯度算法(PCG)

    今天介绍数值计算和优化方法中非常有效的一种数值解法,共轭梯度法.我们知道,在解大型线性方程组的时候,很少会有一步到位的精确解析解,一般都需要通过迭代来进行逼近,而 PCG 就是这样一种迭代逼近算法. ...

  8. Python学习笔记第十二周

    目录: 数据库介绍 mysql 数据库安装使用 mysql管理 mysql 数据类型 常用mysql命令事务 索引 创建数据库 外键 增删改查表 权限 python 操作mysql  ORM sqla ...

  9. 20165228 2017-2018-2 《Java程序设计》第7周学习总结

    20165228 2017-2018-2 <Java程序设计>第7周学习总结 教材学习内容总结 MySQL数据库管理系统安装和初始化 使用MySQL建立连接和数据库.表 使用JDBC:(1 ...

  10. base标签对svg的影响

    页面地址:http://127.0.0.1:8080/fullLink_node.html?project_id=2 base:<base href="http://127.0.0.1 ...