单元测试框架之unittest(一)】的更多相关文章

1. Unittest 是 python 自带的单元测试框架,可以用其作为自动化框架来组织测试用例(测 试用例的执行顺序)的执行. 2. Unittest 框架的流程: 写好 TestCase 通过 TestLoader 加载 TestCase 到 TestSuite 中 通过 TextTestRunner 来原型 TestSuite,结果保存在 TextTestResult 中,我们通过命 令行或者 unittest.main()来执行 3.通过 TextTestRunner 来原型 Test…
一.摘要 前篇文章已经详细介绍了unittest框架的特性,足以满足我们日常的测试工作,但那并不是unittest的全部,本片博文将介绍一些应该知道但未必能经常用到的内容 然而,想全部掌握unittest还远远不够 二.命令行模式执行用例 unittest框架支持命令行执行测试模块.测试类甚至单独的测试方法 执行测试模块:python -m unittest test_module1 test_module2 ...... 也可以采用路径的方式 python -m unittest tests/…
一.单元测试的含义 unittest单元测试框架的设计灵感来源于Junit(Java语言的单元测试框架),它与其他语言的单元测试框架风格相类似,支持自动化测试.为测试共享setUp和shutDown.它可以在将测试用例聚合到一起形成一个集合一起执行的同时在测试报告中展示独立的测试结果. 为了达到此目的,unittest支持几个重要的面向对象式的概念: 1.test fixture 一个test fixture所做的事情是执行单个或多个测试用例时的准备工作和执行结束后的一些相关清理工作,这包括:创…
Python单元测试框架unittest使用方法讲解 主要介绍了Python单元测试框架unittest使用方法讲解,本文讲解了unittest概述.命令行接口.测试案例自动搜索.创建测试代码.构建测试套件方法等内容   概述 1.测试脚手架(test fixture) 测试准备前要做的工作和测试执行完后要做的工作.包括setUp()和tearDown(). 2.测试案例(test case) 最小的测试单元. 3.测试套件(test suite) 测试案例的集合. 4.测试运行器(test r…
unittest 下的属性 1.Unittest.TestCase:所有测试用例类继承的基本类 2.Unittest.main():将一个单元测试模块变为可直接运行的测试脚本 If __name__ == “__main__”: Unittest.main() 3.Unittest.TestSuite:创建测试套件 4.unittest.TextTestRunner():unittest 框架的 TextTestRunner()类,通过该类下面的 run()方 法来运行 suite 所组装的测试…
一.摘要 本片博文将介绍unittest框架的一些轻便有效的特性,在我们的测试中经常可以用到 如果有一些测试方法不想执行,如果有些测试方法在某些条件下不执行 该当如何? 如果有些方法未在unittest框架下编写,又想使用unittest框架执行,该当如何? 如果想自定义一个执行顺序该当如何? 二.代码实例 如果有一些测试方法不想执行,如果有些测试方法在某些条件下不执行 该当如何? # coding : utf-8 import unittest import random import sys…
一.摘要 本章笔者将详细介绍组织测试代码的相关内容,所用的测试例子会是冒泡排序,笔者在从业这么久之后回想很多面试都要问冒泡排序,虽然不知道为什么要问这个,但还是希望大家掌握,它与自动化测试关系不大属于python的基础范畴 在上一篇内容中我们展示了一个小例子,在代码的前两行是如下内容 import unittest class TestStringMethods(unittest.TestCase): 它的意义何在呢? import unittest 导入unittest模块,使得我们可以使用它…
一.摘要 单元测试里很重要的一个部分就是断言,unittest为我们提供了很多断言方法,断言方法分为三类,一种是用来断言被测试的方法的,另一种是测试是否抛正确异常的,第三种是用来断言日志是否包含应有信息的,方法很多 第一种很好理解,是用来判断我们的被测点是否达到预期用的. 第二种用来判断在某种情况下是否会抛出特定的异常,如果会抛出该特定异常,则会判断为断言成功,如果没抛出这种特定异常则会判断为断言失败. 第三种是用来断言日志是否包含应有信息的 assertEqual(a, b, msg=None…
一.摘要 假设我们有一组测试方法差别非常小,比如仅仅是所需要的参数有少许变化时,我们的自动化测试如何进行?unittest框架为这种场景提供了一种方式,它允许我们用subTest()上下文管理器在一个测试方法内识别这种细小的不同,这么说可能有点晕 实际上我觉得还不如直接看代码更能清晰的表达它为我们的测试带来了什么 二.代码实例 # coding:utf-8 import unittest class NumbersTest(unittest.TestCase): def test_even(se…
1. import unittest 引入unittest模块:   2. class SearchTest (unittest.TestCase): 定义一个继承于TestCase类的子类:   3. def setUp(self): 测试执行器在每次执行测试方法之前优先执行该方法(这样做有助于确保每个测试方法都能够依赖相同的环境): 此方法没有参数,而且不返回任何值:   4. def test_search_by_category(self): test()方法也是在TestCase类中实…
1.Unittest 核心组件 test case.test suite.test runner.test fixture 2.unittest 静态图 Testcase:一个 testcase 就是一个测试用例.Setup(测试环境的准备).run(测试 执行).teardown(测试环境的还原). Testsuite(集合或套件):多个测试用例的集合就是 suite,一个 suite 可以包含多个 测试用例,也可以嵌套 suite. testLoader:用来加载 testcase 到 te…
1.待测方法: # 加法,返回 a+b 的值 def add(a,b): return a+b # 减法,返回 a-b 的值 def minus(a,b): return a-b # 乘法,返回 a*b 的值 def multi(a,b): return a*b # 除法,返回 a/b 的值 def divide(a,b): return a/b 2.测试用例 import unittest from UnittestDemo.mathfunc import * class TestMathFu…
一.摘要 前边的文章我们看到执行测试用例的是通过调用unittest.mian()函数,它会将模块的测试用例收集起来并执行,然而当我们的测试用例增多了以后,这样的执行非常不灵活而且没有效率,我们更愿意看到自由组合的一组用例,只执行这组用例的方式,unittest.TestSuite能够满足我们这个需求,笔者将一random类作为被测试类来详细展示unittest.TestSuite 二.代码示例 以前的执行方式 # encoding = utf-8 import random import un…
一.直接使用TestCase 注意所有测试方法都需要以test开头.代码如下: import unittest class Test1(unittest.TestCase): @classmethod def setUpClass(self): print("execute setUpClass") @classmethod def tearDownClass(self): print("execute tearDownClass") def setUp(self)…
Python中有一个自带的单元测试框架是unittest模块,用它来做单元测试,它里面封装好了一些校验返回的结果方法和一些用例执行前的初始化操作. 单元测试框架即一堆工具的集合. 在说unittest之前,先说几个概念: TestCase 也就是测试用例 TestSuite 多个测试用例集合在一起,就是TestSuite TestLoader是用来加载TestCase到TestSuite中的 TestRunner是来执行测试用例的,测试的结果会保存到TestResult实例中,包括运行了多少测试…
一.简介 unittest是Python单元测试框架.unittest它支持自动化测试,在测试中使用setup(初始化)和shutdown(关闭销毁)操作,组织测试 用例为套件(批量运行),以及把测试和报告独立开来. 测试脚手架(test fixture):为了开展一项或多项测试所需要进行的准备工作,以及所有相关的清理操作. 测试用例(test case):一个测试用例是一个独立的测试单元.检查输入特定的数据时的响应. unittest 提供一个基类: TestCase ,用于新建测试用例. 测…
分享一个比较基础的,系统性的知识点.Python+selenium+unittest+HTMLTestReportCN单元测试框架分享 Unittest简介 unittest是Python语言的单元测试框架,在Python的官方文档中,对unittest单元测试框架进行了详细的介绍,感兴趣的读者可以到 https://www.python.org/doc/网站了解.本章重点介绍unittest单元测试框架在自动化测试中的应用.unittest 单元测试框架提供了创建测试用例.测试套件和批量执行测…
目录 1.unittest基本简介 2.unittest基本概念 (1)unittest核心的四个概念 (2)如何创建一个测试类 (3)test fixture常用的四个方法 (4)unittest编写测试方法(用例)规范 (5)执行测试脚本 3.unittest入门示例 1.unittest基本简介 unittest是Python自带的一个单元测试框架,unittest又被称为PyUnit,是由Java的JUnit衍生而来,基本结构是类似的.对于单元测试,需要设置预先条件,对比预期结果和实际结…
pytest: Python的一个单元测试框架,基于UnitTest二次开发,语法上更加简洁,可以用来做Python开发项目的单元测试,UI自动化.接口自动化测试等,有很多的插件访问Pytest插件汇总,对Pytest进行扩展. pytest是一个框架,它使构建简单且可伸缩的测试变得容易.测试具有表达性和可读性,不需要样板代码.在几分钟内开始对应用程序或库进行小的单元测试或复杂的功能测试. -- 来自Pytest官方文档(由谷歌翻译) https://docs.pytest.org/en/lat…
python 测试框架(本文只涉及 PyUnit) https://wiki.python.org/moin/PythonTestingToolsTaxonomy 环境准备 首先确定已经安装有Python,之后通过安装PyUnit,Python版本比较新的已经集成有PyUnit(PyUnit 提供了一个图形测试界面UnittestGUI.py) 参考: https://wiki.python.org/moin/PyUnit 代码实例 使用的IDE为 PyCharm,DEMO结构如图 1.简单地一…
unittest单元测试框架不仅可以适用于单元测试,还可以适用WEB自动化测试用例的开发与执行,该测试框架可组织执行测试用例,并且提供了丰富的断言方法,判断测试用例是否通过,最终生成测试结果.今天笔者就总结下如何使用unittest单元测试框架来进行WEB自动化测试. 目录 一.unittest模块的各个属性说明 二.使用unittest框架编写测试用例思路 三.使用unittest框架编写测试用例实例 一.unittest模块的各个属性说明 点击返回目录 先来聊一聊unittest模块的各个属…
当我们在使用TestNG时,发现它有一个非常好用的参数化功能.当你的测试用例有固定的参数和断言结果时,它可以相似用例的节省用例的个数. 例子如下: import static org.testng.Assert.assertEquals; import org.testng.annotations.DataProvider; import org.testng.annotations.Test; /** * Created by fnngj on 2017/3/19. */ public cla…
unittest单元测试框架不仅可以适用于单元测试,还可以适用WEB自动化测试用例的开发与执行,该测试框架可组织执行测试用例,并且提供了丰富的断言方法,判断测试用例是否通过,最终生成测试结果.今天笔者就总结下如何使用unittest单元测试框架来进行WEB自动化测试. 目录 一.unittest模块的各个属性说明 二.使用unittest框架编写测试用例思路 三.使用unittest框架编写测试用例实例 一.unittest模块的各个属性说明 先来聊一聊unittest模块的各个属性,所谓知己知…
1.免登录在进行测试的过程中难免会遇到登录的情况,给测试工作添加了工作量,本文仅提供一些思路供参考解决方式:手动请求中添加cookies.火狐的profile文件记录信息实现.人工介入.万能验证码.去掉验证码1.1.手动在请求中添加cookies信息 url = "http://www.baidu.com" driver = webdriver.Firefox() driver.get(url) time.sleep(3) #添加cookies的方式 c1 = {'domain': '…
一.Pyhon工作原理-- 核心概念:test case, testsuite, TestLoder,TextTestRunner,TextTestResult, test fixture TestCase(测试用例): 所有测试用例的基类,它是软件 测试中最基本的组成单元. 一个test case就是一个测试用例,是一个完整的测试流程,包括测试前环境的搭建setUp,执行测试代码(run),以及测试后环境的还原(tearDown).测试用例是一个完整的测试单元,可以对某一问题进行验证. Tes…
一.什么是unittest 这里我们将要用的unittest是python的单元测试框架,它的官网是 https://docs.python.org/2/library/unittest.html,在这里我们可以得到全面的信息. 当我们写的用例越来越多时,我们就需要考虑用例编写的规范与组织,以便于后期的维护,而unittest正是这样一款工具.我们这里用一个示例来展示用unittest脚本是什么样子的 # -*- coding: utf-8 -*- from selenium import we…
学习接口自动化测试时接触了unittest单元测试框架,学习时参照了虫师编写的<selenium2自动化测试实战>,个人觉得里面讲的例子还比较容易理解的. 一.基础 1.main()和框架的简单使用,例: import unittest #导包 import calculator import Count class TestCount(unittest.TestCase): #继承unittest def setUp(self): print("test start")…
unittest单元测试框架 概述: 单元测试框架主要用来完成以下三件事: 提供用例组织与执行:当测试用例只有几条时,可以不必考虑用例的组织,但是当用例达到成百上千条时,大量的用例堆砌在一起,就产生了扩展性与维护性等,单元测试框架就是用来解决用例的规范与组织问题: 提供了丰富的比较方法:不论是功能测试,还是单元测试,在用例执行完成之后都需要将实际结果与预期结果进行比较(断言),从而判定用例是否执行通过.单元测试框架一般会提供丰富的断言方法.例如:判断相等/不等.包含/不包含.True/False…
一.unittst单元测试框架 概念参考:https://docs.python.org/2/library/unittest.html 使用方法:import unittest (引入unittest模块) 二.步骤 1.定义一个测试类,继承unittest.TestCase class TestCompare(unittest.TestCase): 2.定义测试方法,在test类中所有以test开头的方法都是测试用例,不是以test开头的不会执行 def test_1_compare_1(s…
用Python搭建自动化测试框架,我们需要组织用例以及测试执行,这里博主推荐Python的标准库——unittest. unittest是xUnit系列框架中的一员,如果你了解xUnit的其他成员,那你用unittest来应该是很轻松的,它们的工作方式都差不多. unittest核心工作原理 unittest中最核心的四个概念是:test case, test suite, test runner, test fixture. 下面我们分别来解释这四个概念的意思,先来看一张unittest的静态…