设计思路:

获取成员变量class.__dict__.keys()

filter过滤符合要求成员,由于3.x成员dict属性是支持有序的

# coding=utf-8
import unittest
from inspect import isfunction

def raw_members(class_name:object):
"""
get all unsort members test_* name list
eg it also work well :
list(filter(lambda x: not x.startswith("__") and not x.endswith("__")
and x.startswith("test_") ,TestHetero.__dict__.keys()))

"""
return list(filter(lambda x: not x.startswith("__") and not x.endswith("__") and x.startswith("test_")
and isfunction(eval(class_name.__name__+".%s"%x)) and callable(eval(class_name.__name__+".%s"%x )),
class_name.__dict__.keys()))

第二步:
制作suite原始顺序添加的suite:

suite=unittest.TestSuite()

suite.addTests([TestHetero("%s"%value) for value in raw_members(TestHetero)])
print(suite)
unittest.TextTestRunner(verbosity=2).run(suite)

结果验证:并没有按照ascii 0-9 A-Z a-z自动排序而是按自己书写顺序执行,改装结束

<unittest.suite.TestSuite tests=[<__main__.TestHetero testMethod=test_Account>, <__main__.TestHetero testMethod=test_user>, <__main__.TestHetero testMethod=test_001>, <__main__.TestHetero testMethod=test_002>]>
test_Account (__main__.TestHetero) ... ok
Account
user
001
test_user (__main__.TestHetero) ... ok
002
test_001 (__main__.TestHetero) ... ok
test_002 (__main__.TestHetero) ... ok

----------------------------------------------------------------------
Ran 4 tests in 0.001s

OK

测试类:

class TestHetero(unittest.TestCase):

    @classmethod
def setUpClass(cls):
pass
@classmethod
def tearDownClass(self):
pass def test_Account(self):
print("Account") def test_user(self):
print("user")
def test_001(self):
# unittest.TestLoader.getTestCaseNames()
print("001")
def test_002(self): print("002")

  

unittest 改装框架ascii 排序执行用例,按照自己书写先后顺序执行的更多相关文章

  1. unittest执行顺序,使用unittest.main()按照test开头,由0-9,A-Z,a-z的顺序执行; 可使用TestSuite类的addTest方法改变执行顺序;

    import unittestclass Study(unittest.TestCase): # def setUp(self): # print('start') # def tearDown(se ...

  2. unittest自动化测试框架核心要素以及应用

    1. unittest核心要素 unittest介绍 测试框架,不仅仅用于单元测试 python自动的测试包 用法和django.test.TestCase类似 1.1.unitest介绍和核心要素 ...

  3. unittest单元测试框架

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

  4. Selenium(十五):unittest单元测试框架(一) 初识unittest

    1. 认识unittest 什么是单元测试?单元测试负责对最小的软件设计单元(模块)进行验证,它使用软件设计文档中对模块的描述作为指南,对重要的程序分支进行测试以发现模块中的错误.在python语言下 ...

  5. Java中如何保证线程顺序执行

    只要了解过多线程,我们就知道线程开始的顺序跟执行的顺序是不一样的.如果只是创建三个线程然后执行,最后的执行顺序是不可预期的.这是因为在创建完线程之后,线程执行的开始时间取决于CPU何时分配时间片,线程 ...

  6. js的并行加载与顺序执行

    javaScript文件(下面简称脚本文件)需要被HTML文件引用才能在浏览器中运行.在HTML文件中可以通过不同的方式来引用脚本文件,我们需要关注的是,这些方式的具体实现和这些方式可能会带来的性能问 ...

  7. Python流程控制-1 顺序执行

    流程控制指的是代码运行逻辑.分支走向.循环控制,是真正体现我们程序执行顺序的操作.流程控制一般分为顺序执行.条件判断和循环控制. 顺序执行 Python代码在执行过程中,遵循下面的基本原则: 普通语句 ...

  8. python unittest单元测试框架-3用例执行顺序、多级目录、装饰器、fixtures

    1.用例执行顺序 unittest默认会按照ascii码的顺序,依次执行.类名--方法名排序,使用discover也是默认排序.如果不想使用默认排序,就使用testsuite测试集的方式. impor ...

  9. 【Android自动化】unittest测试框架关于用例执行的几种方法

    # -*- coding:utf-8 -*- import unittest class test(unittest.TestCase): def setUp(self): print 'This i ...

随机推荐

  1. IntelliJ IDEA 2019.1.3 最新破解教程【最强 可用至2099年】

    本文包括最新[2019.1.2]安装 和[2018.3.2](推荐)安装 ①IntelliJ IDEA 2018.3.2安装永久安装[最强]  一. 在官网下载IDEA安装包  链接:https:// ...

  2. pick the stone game

    我该如何去触摸这类问题嘞! 取石子游戏 1堆石子有n个,两人轮流取. 先取者第1次可以取任意多个,但不能全部取完. 以后每次取的石子数不能超过上次取子数的2倍. 取完者胜.先取者负输出"Se ...

  3. JS代码的位置

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  4. javascript入门(1)

    目录 Javascript认识(1) JavaScript 常见事宜 JavaScript介绍 Javascript内容 Javascript书写位置 变量 变量是什么 变量的命名规则 变量提升 数据 ...

  5. flask操作

    models.py class CompanyGoodsModel(Base): id=Column(Integer, primary_key=True) company_id = Column(In ...

  6. AcWing 187. 导弹防御系统

    //dp+dfs+贪心 //记一个全局变量 #include<iostream> using namespace std ; ; int n; int ans; int q[N]; int ...

  7. xshell连接本地虚拟机中的centos

    1. 一开始Xshell连接不上(设置为DHCP 动态IP)虚拟机上的centos8 参考这篇博文,将centos上的DHCP改为static 静态IP xshell连接本地虚拟机中的centos 2 ...

  8. Linux - Shell - 参数获取

    概述 参数 背景 复习一下 shell 脚本的参数获取 场景 os centos7 1. 参数: 基础 概述 简单描述 参数 1. 获取参数 获取 第一个 参数 获取参数 使用 ${num} 获取参数 ...

  9. 【音乐欣赏】《I Don't Even Care About You》 - Missio

    曲名:I Don't Even Care About You 作者:Missio [00:31.18]Depressed again [00:34.66]Morning comes too fast ...

  10. Application Comparison Of LED Holiday Light And Traditional Incandescent Lights

    Obviously, LED holiday lights are leading the competition in economical Christmas decorations, but t ...