python接口自动化测试(七)-unittest-批量用例管理

简介:   我们日常项目中的接口测试案例肯定不止一个,当案例越来越多时我们如何管理这些批量案例?如何保证案例不重复?如果案例非常多(成百上千,甚至更多)时如何保证案例执行的效率?如何做(批量)测试数据的管理?如何做到数据与脚本分离?   以上这些问题才是我们自动化测试中要重点考虑的问题,单个用例其实并不难。
+关注继续查看

  我们日常项目中的接口测试案例肯定不止一个,当案例越来越多时我们如何管理这些批量案例?如何保证案例不重复?如果案例非常多(成百上千,甚至更多)时如何保证案例执行的效率?如何做(批量)测试数据的管理?如何做到数据与脚本分离?

  以上这些问题才是我们自动化测试中要重点考虑的问题,单个用例其实并不难。

来看一下在unittest框架中如何管理批量案例:

 

一、手工加载批量用例:

# -*- coding:utf-8 -*-
# 批量用例执行--手工加载

import unittest

class TestOne(unittest.TestCase):
    def setUp(self):
        print '\ncases before'
        pass

    def test_add(self):
        '''test add method'''
        print 'add...'
        a = 3 + 4
        b = 7
        self.assertEqual(a, b)

    def test_sub(self):
        '''test sub method'''
        print 'sub...'
        a = 10 - 5
        b = 5
        self.assertEqual(a, b)

    def tearDown(self):
        print 'case after'
        pass

if __name__ == '__main__':
    # 1、构造用例集
    suite = unittest.TestSuite()

    # 2、执行顺序是安加载顺序:先执行test_sub,再执行test_add
    suite.addTest(TestOne("test_sub"))
    suite.addTest(TestOne("test_add"))

    # 3、实例化runner类
    runner = unittest.TextTestRunner()
# 4、执行测试 runner.run(suite)

 

二、自动加载批量用例:

# -*- coding:utf-8 -*-
# 批量用例执行--自动加载
import unittest
import os

class TestOne(unittest.TestCase):
    def setUp(self):
        print '\ncases before'
        pass

    def test_add(self):
        '''test add method'''
        print 'add...'
        a = 3 + 4
        b = 7
        self.assertEqual(a, b)

    def test_sub(self):
        '''test sub method'''
        print 'sub...'
        a = 10 - 5
        b = 5
        self.assertEqual(a, b)

    def tearDown(self):
        print 'case after'
        pass

if __name__ == '__main__':
    # 1、设置待执行用例的目录
    test_dir = os.path.join(os.getcwd())

    # 2、自动搜索指定目录下的cas,构造测试集,执行顺序是命名顺序:先执行test_add,再执行test_sub
    discover = unittest.defaultTestLoader.discover(test_dir, pattern='test_*.py')

    # 实例化TextTestRunner类
    runner = unittest.TextTestRunner()

    # 使用run()方法运行测试套件(即运行测试套件中的所有用例)
    runner.run(discover)

 

以上只是解决了如何管理批量案例的问题,其它的问题如何做(批量)测试数据的管理?如何做到数据与脚本分离?后续在介绍。

 

目录
相关文章
|
8月前
|
存储 SQL 关系型数据库
Python玩转阿里云OSS对象存储,批量转存markdown和html图片
Python玩转阿里云OSS对象存储,批量转存markdown和html图片
|
9月前
|
文字识别 Python
7行python代码实现核算检测批量复查
7行python代码实现核算检测批量复查
50 0
7行python代码实现核算检测批量复查
|
9月前
|
编解码 Python
python 批量读取地转流速日资料绘制气候态年平均海表流场(填色为流速)
python 批量读取地转流速日资料绘制气候态年平均海表流场(填色为流速)
python 批量读取地转流速日资料绘制气候态年平均海表流场(填色为流速)
|
9月前
|
算法 数据处理 Python
python ——批量读取相同格式文件(多个文件夹/单个文件夹)---nc文件为例
在处理多个相同格式的文件时,python中的许多模块可以为我们提供很多遍历。 比如,我们想读取一个文件夹下多个相同格式的文件时 可以使用os模块,
python ——批量读取相同格式文件(多个文件夹/单个文件夹)---nc文件为例
|
9月前
|
数据安全/隐私保护 Python
python实用脚本:网络设备批量调试及备份
python实用脚本:网络设备批量调试及备份
418 0
python实用脚本:网络设备批量调试及备份
|
9月前
|
运维 安全 网络安全
python paramiko 批量运维管理详解
python paramiko 批量运维管理详解
|
9月前
|
测试技术 Python
python接口自动化(二十六)--批量执行用例 discover(详解)
我们在写用例的时候,单个脚本的用例好执行,那么多个脚本的时候,如何批量执行呢?这时候就需要用到 unittest 里面的 discover 方法来加载用例了。加载用例后,用 unittest 里面的 TextTestRunner 这里类的 run 方法去一次执行多个脚 本的用例。那么前边介绍那么多都是半道开始,半道出家,这篇就带大家从头到尾,一步一步给小伙伴们详细介绍一下。
170 0
python接口自动化(二十六)--批量执行用例 discover(详解)
|
9月前
|
机器学习/深度学习 XML 数据格式
深度学习之python给图片批量命名
深度学习之python给图片批量命名
深度学习之python给图片批量命名
|
10月前
|
Python
用Python实现批量高效文件处理 解放你的双手
有时候会有大量修改文件名的需求,比如修改文件后缀、文件名加前缀等,如果手动修改,效率极低,这时候可以使用Python来批量修改
用Python实现批量高效文件处理 解放你的双手
|
11月前
|
SQL 数据挖掘 Python
Python自动化:根据模板批量生成含指定数据的word文档
Python自动化:根据模板批量生成含指定数据的word文档
549 0
Python自动化:根据模板批量生成含指定数据的word文档
相关产品
云迁移中心
推荐文章
更多