自动化测试神器 之 python unittest 断言
自动化测试的最后一步需要判断结果是否正确,而正确设置断言可以帮助判断测试用例的执行结果,从而提高自动化测试的效率,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 |
- 首先导入unittest模块 ;
- 创建一个测试类,继承TestCase;
- 定义setUp和tearDown方法;
- setUp是进行测试前的初始化工作。
- tearDown是测试后的清除工作。
- 创建测试用例,测试用例需要以test开头,每个测试用例,测试目的和测试内容应很明确。通过调用断言来判断程序执行结果和预期值是否相符。
- 调用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 断言的更多相关文章
- selenium+python+unittest实现自动化测试(入门篇)
本文主要讲解关于selenium自动化测试框架的入门知识点,教大家如何搭建selenium自动化测试环境,如何用selenium+python+unittest实现web页面的自动化测试,先来看看se ...
- python接口自动化(二十三)--unittest断言——上(详解)
简介 在测试用例中,执行完测试用例后,最后一步是判断测试结果是 pass 还是 fail,自动化测试脚本里面一般把这种生成测试结果的方法称为断言(assert).用 unittest 组件测试用例的时 ...
- 简单实现接口自动化测试(基于python+unittest)
简单实现接口自动化测试(基于python+unittest) 简介 本文通过从Postman获取基本的接口测试Code简单的接口测试入手,一步步调整优化接口调用,以及增加基本的结果判断,讲解Pytho ...
- python接口自动化(二十四)--unittest断言——中(详解)
简介 上一篇通过简单的案例给小伙伴们介绍了一下unittest断言,这篇我们将通过结合和围绕实际的工作来进行unittest的断言.这里以获取城市天气预报的接口为例,设计了 2 个用例,一个是查询北京 ...
- 最完整的自动化测试流程:Python编写执行测试用例及定时自动发送最新测试报告邮件
今天笔者就要归纳总结下一整套测试流程,从无到有,实现零突破,包括如何编写测试用例,定时执行测试用例,查找最新生成的测试报告文件,自动发送最新测试报告邮件,一整套完整的测试流程.以后各位只要着重如何编写 ...
- Python3+Selenium2完整的自动化测试实现之旅(五):自动化测试框架、Python面向对象以及POM设计模型简介
前言 之前的系列博客,陆续学习整理了自动化测试环境的搭建.IE和Chrome浏览器驱动的配置.selenium-webdriver模块封装的元素定位以及控制浏览器.处理警示框.鼠标键盘等方法的使用,这 ...
- 华为五年自动化测试工程详细解说:unittest单元测试框架
一.单元测试框架说明 单元测试是指在编程中,针对程序模块的最小单元(类中的方法)进行正确性检验的测试工作.python+selenium自动化测试中通常使用unittest或者pytest作为单元 ...
- 《Selenium2自动化测试实战--基于Python语言》 --即将面市
发展历程: <selenium_webdriver(python)第一版> 将本博客中的这个系列整理为pdf文档,免费. <selenium_webdriver(python)第 ...
- RobotFramework自动化测试框架-使用Python编写自定义的RobotFramework Lib
使用Python构建Lib工程 可以用来开发Python Lib的IDE工具有很多,常见的有Pycharm,Eclipse with PyDev插件等,而且在RobotFramework官网中也已经提 ...
随机推荐
- 多点触控 TouchAction
#TouchAction #TouchAction方法是appium自已定义的新方法 # * 短按 (press) * 释放 (release) * 移动到 (moveTo) * 点击 (tap) * ...
- C# struct and enum
struct Person { public int age; public string name; public string fname; public string class; } enum ...
- requery.js使用姿势
最近在看requerjs,现在来总结下自己的收获,有不对的地方,望大家指正! 1.首先介绍下requirejs,引用中文官网http://www.requirejs.cn的一句话,requirejs是 ...
- shell脚本实例-判断主机存活 以及企业备份方案
1.上次写了一个脚本我那次考虑不是很周全,这次我将脚本改动了一下,这次是判断三次, 希望关注我的人可以经常交流哈.下面我写上代码. #!/usr/bin/bash while read ip do f ...
- python day 07-数据类型补充,集合,深浅拷贝
一.基础数据类型补充 1.列表转字符串 a='A'.join(['c','c','s']) print(a) 2.循环删除列表中的每⼀一个元素 lst=['asdf','dftgst','zsdrfs ...
- Python基础5--字符串
1 find().rfind().index().rindex().count() s = "this apple is red apple" s.find("apple ...
- CentOS6.x安装RabbitMQ
一.安装依赖文件 yum install build-essential openssl openssl-devel unixODBC unixODBC-devel make gcc gcc-c++ ...
- 【leetcode】344. Reverse String
problem 344. Reverse String solution: class Solution { public: void reverseString(vector<char> ...
- python2.7.9安装mysql-python模块
我使用的系统版本是: SLES12-sp2 使用python连接Mysql数据库,需要安装mysql-python模块: 1. 首先安装pip: 从python官方网站下载get-pipe.py,执行 ...
- [LeetCode&Python] Problem 830. Positions of Large Groups
In a string S of lowercase letters, these letters form consecutive groups of the same character. For ...