Python unittest基本使用方法代码实例

基本使用

import unittest
class Testcase(unittest.TestCase):
  @classmethod
  def setUpClass(cls):
    pass
  @classmethod
  def tearDownClass(cls):
    pass

  def setUp(self):
    pass
  def tearDown(self):
    pass
  def test01(self):
    print("01")
  def test02(self):
    print("02")
if __name__ == "__main__":
  unittest.main()

断言的使用

unittest的执行顺序:

并不是按照代码顺序,而是按照函数名称顺序;

通过添加执行的顺序

if __name__ == "__main__":
#unittest.main()
suite = unittest.TestSuite()
'''
suite.addTest(TestCase01('test_06'))
suite.addTest(TestCase01('test_04'))
suite.addTest(TestCase01('test_02'))
suite.addTest(TestCase01('test_05'))
suite.addTest(TestCase01('test_01'))
suite.addTest(TestCase01('test_07'))
'''
tests =[TestCase01('test_06'),TestCase01('test_02'),TestCase01('test_03'),TestCase01('test_05'),TestCase01('test_01')]
suite.addTests(tests)
runner = unittest.TextTestRunner()
runner.run(suite)

unittest中套件的运用

有多个测试脚本py文件时,需要一次性执行测试脚本

import unittest
import sys
sys.path.append("dir")添加当前工程目录
from Unittest.test_case01 import Testcase01
from Unittest.test_case01 import Testcase02
testcase01 = unittest.TestLoader().loadTestsFromTestCase(Testcase01)
testcase02 = unittest.TestLoader().loadTestsFromTestCase(Testcase02)
suote = unittest.TestCase([testcase01,testcase02])
unittest.TextTestRunner().run(suote)

unittest 中条件控制跳过case

@unittest.skip("这个case不执行")
def test_07(self):
  print("执行case07")
  flag = "adfadfadfadfadsfaqeewr"
  s = "fads"
  self.assertIn(s, flag, msg="不包含")
@unittest.skipIf(4==5,"执行")
def test_01(self):
  print("执行case01")
  # res = requests.get(url=url,params=data).json()
  data1 = {
    "user": "11111"
  }
  self.assertDictEqual(data1, data)

unittest中case的批量管理

import unittest
import sys
import os
sys.path.append("dir")添加当前工程目录
from Unittest.test_case01 import Testcase01
from Unittest.test_case01 import Testcase02

case_path = os.getcwd() + '/Unittestcase'
discover = unittest.defaultTestLoader.discover(case_path)

unittest.TextTestRunner().run(discover)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Python Unittest自动化单元测试框架详解

    本文实例为大家分享了Python Unittest自动化单元测试框架的具体代码,供大家参考,具体内容如下 1.python 测试框架(本文只涉及 PyUnit) 参考地址 2.环境准备 首先确定已经安装有Python,之后通过安装PyUnit,Python版本比较新的已经集成有PyUnit(PyUnit 提供了一个图形测试界面UnittestGUI.py) 参考:查看地址 3.代码实例 使用的IDE为 PyCharm,DEMO结构如图 1.简单地一个实例 # Test002_Fail.py #

  • python+unittest+requests实现接口自动化的方法

    前言: Requests简介 Requests 是使用Apache2 Licensed许可证的 HTTP 库.用 Python 编写,真正的为人类着想. Python 标准库中的 urllib2 模块提供了你所需要的大多数 HTTP 功能,但是它的 API 有点落后了.它是为另一个时代.另一个互联网所创建的.它需要巨量的工作,甚至包括各种方法覆盖,来完成最简单的任务. 总之,大家建议大家用Requests吧. Requests的官方文档:http://cn.python-requests.org

  • Python unittest 简单实现参数化的方法

    Python unittest 理论上是不建议参数驱动的,其用例应该专注单元测试,确保每个method的逻辑正确. 引用Stack Overflow的一个答案, "单元测试应该是独立的,没有依赖项的.这确保了每个用例都有非常具体而专一的测试反应.传入参数会破坏单元测试的这个属性,从而使它们在某种意义上无效.使用测试配置是最简单的方法,也是更合适的方法,因为单元测试不应该依赖外部信息来执行测试.那应该集成测试要做的." 但是实际操作过程中,时不时还是有控制入参的需求的.比如,我想简单实现

  • Python 单元测试(unittest)的使用小结

    测试目录 项目的整体结构可以参考"软件目录开发规范",这里单说测试目录.一般都是在项目里单独创建一个测试目录,目录名就是"tests". 关于目录的位置,一种建议是,在项目名(假设项目名是Foo)的一级子目录下创建二级子目录 "Foo/foo/tests" .但是这样可能是因为用起来不方便,有很多是按下面的做法.不过下面的示例我还是用这个方法来创建测试目录. 还可以把测试目录向上移一层,作为一级子目录,直接创建在项目之下 "Foo/te

  • python unittest实现api自动化测试

    项目测试对于一个项目的重要性,大家应该都知道吧,写python的朋友,应该都写过自动化测试脚本. 最近正好负责公司项目中的api测试,下面写了一个简单的例子,对API 测试进行梳理. 首先,编写restful api接口文件 testpost.py,包含了get,post,put方法 #!/usr/bin/env python # -*- coding: utf-8 -*- from flask import request from flask_restful import Resource

  • Python Unittest根据不同测试环境跳过用例的方法

    前言 在利用单元测试框架执行测试用例的过程中,有时只需要执行一部分用例,或者跳过某些暂不需要执行的用例,python的unittest框架就内置这样的功能. 本文章会讲述以下几个内容: 1.Unittest 如何跳过用例 2.如何使用sys.argv 3.自动化测试项目中如何一套代码多套环境运行 一.Unittest跳过用例 @unittest.skip(reason) , 直接跳过被装饰的用例 ,reason用于填写跳过用例的原因 @unittest.skipIf(condition, rea

  • Python中Unittest框架的具体使用

    Unittest 1.环境 Unittest为Python内嵌的测试框架,不需要特殊配置,仅需要在File---settings---Tools----Python Intergrated Tools下配置框架为Unittest 2.编写规范 需要导入 import unittest 测试类必须继承unittest.TestCase 测试方法以 test_开头 模块和类名没有要求 3.Unittest介绍 import unittest def add(x, y): return x + y d

  • Python unittest单元测试框架总结

    什么是单元测试 单元测试是用来对一个模块.一个函数或者一个类来进行正确性检验的测试工作. 比如对于函数abs(),我们可以编写的测试用例为: (1)输入正数,比如1.1.2.0.99,期待返回值与输入相同 (2)输入复数,比如-1.-1.2.-0.99,期待返回值与输入相反 (3)输入0,期待返回0 (4)输入非数值类型,比如None.[].{}.期待抛出TypeError 把上面这些测试用例放到一个测试模块里,就是一个完整的单元测试  unittest工作原理 unittest中最核心的四部分

  • Python unittest基本使用方法代码实例

    基本使用 import unittest class Testcase(unittest.TestCase): @classmethod def setUpClass(cls): pass @classmethod def tearDownClass(cls): pass def setUp(self): pass def tearDown(self): pass def test01(self): print("01") def test02(self): print("0

  • Python csv模块使用方法代码实例

    这篇文章主要介绍了Python csv模块使用方法代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 import csv def openSCV(filename): with open("renting.csv",'r',encoding = 'utf_8_sig') as f: f_csv = csv.reader(f) for row in f_csv: print(row) def Test1(): headers =

  • Python class的继承方法代码实例

    这篇文章主要介绍了Python class的继承方法代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 class parent(object): def implicit(self): print("Parent implicit()") def override(self): print("Parent override()") def altered(self): print("Parent a

  • python sort、sort_index方法代码实例

    本文实例为大家分享了python sort.sort_index的具体代码,供大家参考,具体内容如下 对Series进行排序 #生成序列obj obj=pd.Series([4,9,6,20,4],index=['d','a','e','b','c']) d 4 a 9 e 6 b 20 c 4 dtype: int64 #按obj的索引排序,默认升序,降序可在括号加ascending=False obj.sort_index() a 9 b 20 c 4 d 4 e 6 dtype: int6

  • Python unittest discover批量执行代码实例

    代码如下 import unittest dir = "D:\\work_doc\\pycharm2\\python_Basics" #自动化用例所存放的路径 suit = unittest.defaultTestLoader.discover(dir,pattern="XFS*.py",top_level_dir=None) #匹配出需要执行的py文件 runner = unittest.TextTestRunner() #TextTestRunner类实例化,目

  • Python getattr()函数使用方法代码实例

    getatter()通过方法名字符串调用方法,这个方法最主要的作用就是实现反射机制,也就是说可以通过字符串获取方法实例,这样就可以把一个类可能要调用的方法放到配置文件里,需要的时候进行动态加载. 1: 可以从类中获取属性和函数 新建test.py文件,代码如下: # encoding:utf-8 import sys class GetText(): def __init__(self): pass @staticmethod def A(): print("this is a staticme

  • Python extract及contains方法代码实例

    一,extract方法的使用 extract函数主要是对于数据进行提取.场景一般对于DataFrame中的一列中的数据进行提取的场合比较多. 例如一列中包含了很长的字段,我们希望在这些字段中提取出我们想要的字段时,就可以通过extract方法进行数据的提取了. 好了,废话不多说直接上代码. 数据源 序号 姓名 服务卡卡号 消费地点 消费时间 理赔金额(元) 交易明细 数量 1 张三 8100001 我爱花钱连锁有限公司 2020/3/1 8:02 605 珍牡肾骨胶囊(珍泉)0.63g*48粒*

  • python各层级目录下import方法代码实例

    这篇文章主要介绍了python各层级目录下import方法代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 以前经常使用python2.现在很多东西都切换到了python3,发现很多东西还是存在一些差异化的.跨目录import是常用的一种方法,并且有不同的表现形式,新手很容易搞混.有必要这里做个总结,给大家科普一下: 1 同级目录下的调用: 同级目录下的调用比较简单,一般使用场景是不同类的相互调用.不用考虑路径问题,常用的格式是:from

  • python实现杨辉三角的几种方法代码实例

    方法一:迭代 def triangle_1(x): """ :param x: 需要生成的杨辉三角行数 :return: """ triangle = [[1], [1, 1]] # 初始化杨辉三角 n = 3 # 从第三行开始计数,逐行添加 while n <= x: for i in range(0, n-1): if i == 0: # 添加初始列表[1,1],杨辉三角每行的首位和末位必为1 triangle.append([1, 1

  • Python文件操作基本流程代码实例

    文件操作之基本流程 #文本 近日,上市药企--浙江莎普爱思药业股份有限公司频遭质疑. 12月2日,一篇名为<一年卖出7.5亿的洗脑"神药",请放过中国老人>的文章称, 多位眼科医生并不认可莎普爱思滴眼液的"白内障防治功效".质疑者认为, 莎普爱思滴眼液是"假科普,真营销",通过广告误导患者. 针对质疑,莎普爱思3日晚发布的公告称, 0.5%苄达 赖氨酸滴眼液已于上世纪90年代通过了临床试验, 是一种安全的.有效的抗白内障药物.假的 #

随机推荐