unittest框架是python中一个标准的库中的一个模块,该模块包括许多的类如 test case类、test suit类、texttest runner类、texttest resuite类、test loader类test case类的话一个test case 就是一个测试用例,一个测试用例包含一个完成的流程,包括setup()表示初始化用例,run()表示运行,teardown表示还原测试场景。Test suit类在自动化中往往一个场景需要编写一个或者多个测试用例,那么就需要把这些多个用例一起执行,这时候需要把用例收集起来,就可以通过testsuite来处理,可以把testsulte当成一个用例容器,而在testsuite中就有一个addtest方法可以将用例添加到这个容器里面形成一个套件。Texttextrunner类该类是用来执行用例的,其中包含一个run()方法,该方法不但可以运行单个用例,也可以运行testsuite中的多个用例,并将执行结果保存到texttestresult里。Testloader类,该类帮我们搜索所有test开头的测试用例并将搜索到的方法用testsuite收集起来所以使用unittest框架编写测试用例的时候用例命名需要用test打头。Unittest框架结构分为三部分,首先是setup部分用于设计初始化环境的,该类中方法执行的时候都会先执行setup中的代码。运行部分:这里是编写测试用例的地方所有的用例命名都需要用test开头最后是teatdown部分:这里是用例执行完后还原测试环境的。

unittest框架原理:一个py文件里面有多个测试用例(testcase),通过testloader方法或者addtest方法加入到testsuit套件容器中。然后通过texttestrunner方法来执行测试用例,执行后然后,生成的测试结果自动保存在texttestresult中

一、框架的作用

1、随着用例的增加,我们就要考虑用例的编写的规范和组织,以便后续的维护,同时对后续用例执行完成生成报告的,这时我们就需要用到unittest框架进行用例管理

二、unittest框架中常见的模块

1、TestCase类(测试用例): 所有测试用例的基类,它是软件 测试中最基本的组成单元。

2、TestSuite类(测试套件):多个测试用例test case集合就是TestSuite,常用addTest()方法将一个测试用例添加到测试套件中(对一个功能的测试往往需要多测试用例的,可以把多的测试用例集合在一起执行,这就是TestSuite的概念。常用addTest()方法将一个测试用例添加到测试套件中)

3、TestLoader类:是用来搜索所有以test开头的测试用例,然后将其加入到testsuite中

4、TextTestRunner类:是用来执行测试用例的,其中的run(test)用来执行(是用来执行测试用例的,其中的run(test)用来执行TestSuite/TestCase。测试的结果会保存在TextTestResult实例中)

5、TextTestResult类(测试结果报告)测试的结果会保存在TextTestResult实例中

6、TestFixtrue类:测试准备前要做的工作和测试执行完后要做的工作.包括setUp()和tearDown()。通过覆盖TestCase的setUp和tearDown来实现。

三、框架编写用例的结构:后续使用框架来执行用例,那么在用例命名时都要以test打头如:test_case,结尾也一样

框架中用例执行顺序:setUp()-----testcase-----teardown()

unittest介绍的更多相关文章

  1. selenium3 web自动化测试框架 四:Unittest介绍及项目实战中的运用

    unittest介绍及运用,可以参考之前写的文章,除了未结合web自动化演示,基础知识都有了 https://www.cnblogs.com/wuzhiming/p/8858305.html unit ...

  2. Python web自动化测试框架搭建(功能&接口)——unittest介绍

    Python UnitTest测试框架介绍 1)         TestCase:所有测试用例类继承的基本类, TestCase的实例就是测试用例 2)         TestSuite:测试套件 ...

  3. 多测师讲解unittest介绍及自动化测试实现流程_高级讲师肖sir

    unittest框架介绍 unittest框架是python中一个标准的库中的一个模块,该模块包括许多的类如 test case类.test suit类.texttest runner类.textte ...

  4. (一)unittest介绍

    一.unittest框架四要素: test fixture 测试脚手架 test case 测试用例 test suite 一系列的测试用例,测试套件,用于组合一系列测试用例 test runner ...

  5. 一、unittest介绍与基础使用

    一.unittest为单元测试框架,系统标准库 import unittest

  6. unittest单元测试框架

    unittest单元测试框架 概述: 单元测试框架主要用来完成以下三件事: 提供用例组织与执行:当测试用例只有几条时,可以不必考虑用例的组织,但是当用例达到成百上千条时,大量的用例堆砌在一起,就产生了 ...

  7. unittest的使用一

    selenium: (1).firefox官方下载驱动geckodriver,windows:放在\python36或者是27的目录下 Mac: /usr/local/bin (2).firefox的 ...

  8. unittest测试

    标签(空格分隔): unittest unittest介绍: python里面也有单元测试框架-unittest,相当于是一个python版的junit. 一.unittest简介 1.先导入unit ...

  9. 基于unittest测试框架的扩展

    1 unittest介绍 Unittest,Python自带的单元测试框架,PyUnit类包含TestResult,TestCase, TestSuite,TextTestResult,TextTes ...

随机推荐

  1. 致初学者(三): HDU 2033~ 2043题解

    下面继续给出HDU 2033~2043的AC程序,供大家参考.2033~2043这10道题就被归结为“ACM程序设计期末考试(2006/06/07) ”和“2005实验班短学期考试 ”. HDU 20 ...

  2. (1)jsoncpp库的使用

        本节主要介绍 json是什么以及jsoncpp库的使用. (1)JSON是什么 json 是一种轻量级的文本数据交换格式: json 独立于语言.平台,使用java script语法来描述对象 ...

  3. Net基础篇_学习笔记_第十一天_面向对象(练习)

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  4. .Net基础篇_学习笔记_第五天_流程控制while循环

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  5. 数据库(DDL,DML,DQL、DCL)

    1.数据查询语言DQL 数据查询语言DQL基本结构是由SELECT子句,FROM子句,WHERE   子句组成的查询块:   SELECT <字段名表>   FROM <表或视图名& ...

  6. Spring Boot 入门之基础构建篇(一)

    博客地址:http://www.moonxy.com 一.前言 随着 Spring 的功能越来越强,在使用 Spring 的时候,门槛也变得高了起来,诸如搭建一个基于 Spring 的 Web 程序却 ...

  7. linux语句速查

    一.netstat -a或--all:显示所有连线中的Socket -A<网络类型>或--<网络类型>:列出该网络类型连线中的相关地址 -c或--continuous:持续列出 ...

  8. Centos7 快速安装Docker

    写在前面 Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的.可移植的.自给自足的容器.开发者在笔记本上编译测试通过的容器可以轻松批量地在生产环境中部署. 网上的安装教程也很多这里我推 ...

  9. Hadoop核心组件之YARN

    YARN概述 Yet Another Resource Negotiator:另外资源的协调者 通用的资源管理系统 为上层应用提供统一的资源管理和调度 操作系统级别的调度框架,可以让各种计算框架运行在 ...

  10. Fresco添加HTTP请求头

    项目中用Fresco来管理图片由于服务器图片有不同的版本需要根据客户端的屏幕密度来选择不同的图片共享一份用OkHttp下载图片并添加HTTP头代码. public class OkHttpNetwor ...