Python 中 unittest 框架加载测试用例的常用方法
unittest 当中为我们提供了许多加载用例的方法,这里说下常用的两种方法。。。推荐使用第二种
第一种加载测试用例的方法:使用加载器加载两个模块
需要把所有的模块加载到套件中
那么就可以自动的运行所有的模块
执行顺序是按照导入测试用例的先后来执行的,先执行 num_multi,在执行 num_add
import unittest # 导入写好的测试用例,可以使用 as 重新命名更加简短方便
from Python_0715_unittest import lemon_06_unittest_two_num_multi as num_multi
from Python_0715_unittest import lemon_07_unittest_two_num_add as num_add # 1. 创建测试套件,使用unittest当中的TestSuite (译:泰斯特速特)
one_suite = unittest.TestSuite() # 2.通过模块来批量加载测试用例
# 定义测试加载器对象,使用 unittest 当中的 TestLoader (译:泰斯特娄则儿)
one_loader = unittest.TestLoader() # 使用加载器中 loadTestsFromModule(译:楼的.泰斯特.福软木魔豆)从模块当中加载测试用例
# 然后使用 addTest 把用例放到 one_suite 套件当中
one_suite.addTest(one_loader.loadTestsFromModule(num_multi))
one_suite.addTest(one_loader.loadTestsFromModule(num_add)) # 3.执行用例
# 需要创建执行器对象,使用 unittest 当中的 TextTestRunner(译:泰斯特.泰斯特。软那儿)
one_runner = unittest.TextTestRunner()
# 使用执行器运行套件
one_runner.run(one_suite) # 执行的结果中, 大写的F代码失败的用例
# .代表的是执行成功的用例,F代表失败
加载测试用例的四种方法
一:unittest.TestLoader().loadTestsFromTestCase(类名)
一:unittest.TestLoader().loadTestsFromMoudule(模块名) 用的最广
三:unittest.TestLoader().loadTestsFromName(方法名)
四:unittest.TestLoader().loadTestsFromNames(方法名,复数形式)
第二种:自动识别加载测试用例的方法:discover (译:迪斯卡瓦)方法
import unittest # 先加载测试用例
# 使用unittest中defaultTestLoader(译:滴fao的.泰斯特.楼泽)中discover(迪斯卡瓦)方法
# 第一种,使用 . 代表当前py文件所在的路径,自动加载以 test 开头的 py 文件模块
# one_suite = unittest.defaultTestLoader.discover(".") # .代表当前py文件所在的路径 # 第二种,使用绝对路径加载,使用 r 进行转码
one_suite = unittest.defaultTestLoader.discover(r"D:\zj_danyuan\Python_0715_unittest") # 执行用例
# 1.需要创建执行器对象,使用 unittest 当中的 TextTestRunner(译:泰斯特.泰斯特.软那儿)
one_runner = unittest.TextTestRunner()
# 2.运行套件
one_runner.run(one_suite) # 执行的结果中, 大写的F代码失败的用例
# .代表的是执行成功的用例
*******请大家尊重原创,如要转载,请注明出处:转载自:https://www.cnblogs.com/shouhu/ 谢谢!!*******
Python 中 unittest 框架加载测试用例的常用方法的更多相关文章
- 第14.8节 Python中使用BeautifulSoup加载HTML报文
一. 引言 BeautifulSoup是一个三方模块bs4中提供的进行HTML解析的类,可以认为是一个HTML解析工具箱,对HTML报文中的标签具有比较好的容错识别功能.阅读本节需要了解html相关的 ...
- selenium + python自动化测试unittest框架学习(二)
1.unittest单元测试框架文件结构 unittest是python单元测试框架之一,unittest测试框架的主要文件结构: File >report >all_case.py &g ...
- selenium自动化测试、Python单元测试unittest框架以及测试报告和日志输出
部分内容来自:https://www.cnblogs.com/klb561/p/8858122.html 一.基础介绍 核心概念:test case, testsuite, TestLoder,Tex ...
- python之unittest框架使用
一.unittest框架 unittest属于python内置的单元测试框架. 二.unittest框架的核心概念 test case:指测试用例.unittest中提供了一个基本类TestCase, ...
- 关于asp.net中页面事件加载的先后顺序
一.ASP.NET 母版页和内容页中的事件 母版页和内容页都可以包含控件的事件处理程序.对于控件而言,事件是在本地处理的,即内容页中的控件在内容页中引发事件,母版页中的控件在母版页中引发事件.控件事件 ...
- EF中的贪婪加载和延迟加载(懒加载)
在上一章中,我们使用了Linq对Entity Framework进行了一个查询,但是通过学习我们却发现了懒加载给我来的性能上的开销是很到的,尤其是在循环中,如果数据量不是很多的情况下还可以接受,如果数 ...
- Python模块的动态加载机制
Python在运行环境初始化中,就将sys module加载到了内存中, 实际上,Python是将一大批的module加载到了内存中.但是为了使local名字空间能够达到最干净的效果,Python并没 ...
- 页面框架加载完自动执行函数$(function(){});
页面中有一些大的资源文件,如图片,声音等,如果一个事件绑定写在这些加载资源代码的下方,那么要等资源加载完才会绑定,这样体验不够好. 于是想不等资源加载完,只要框架加载完成就绑定事件,就可以把代码放在以 ...
- jquery-事件之页面框架加载后自动执行
jQuery事件之页面框架加载后自动执行 1)概述 HTML执行是按自上而下编译,而<script>一般写在body结束之前.如果在HTML加载的过程中卡住, 比如加载图片等,没有显示出来 ...
随机推荐
- 完全取代VC上原有的view
如果需要在这个VC上放置一个subviewA,作用相当于取代self.view,那么最好不要使用 [self.view addSubView: subviewA]; 而要使用 self.view = ...
- 神奇的navigationBar.translucent
初步实践所得: 当translucent属性为YES的时候,vc的view的坐标从导航栏的左上角开始: 当translucent属性为NO的时候,vc的view的坐标从导航栏的左下角开始: 深入探 ...
- OPCDA通信--工作在透明模式下的CISCO ASA 5506-X防火墙配置
尊重原创,转发请声名 inside OPCSERVER 一台 outside OPCCLIENT 一台 route模式 配置没成功,放弃,采用透明模式 !----进入全局配置-- configure ...
- 小陈WEB漏洞扫描器 V2.0
小陈WEB漏洞扫描器 V2.0 小陈WEB漏洞扫描器 V2.0 https://pan.baidu.com/s/1NSmFCyxowEa3YlOuhvtwwQ
- QQ企业通-----客户端消息发送模块设计---知识点
Guid.NewGuid 方法 初始化 Guid 结构的新实例. Guid 结构 表示全局唯一标识符 (GUID). Encoding..::.Unicode 属性 获取使用 Little- ...
- Java的equals方法实现及其细节
判断两个对象是否等价,是OOP编程中常见的需求(下面围绕Java来进行阐述). 考虑这样几种情况:通过某个特征值来判断两个对象是否“等价”,当这两个对象等价时,判断结果为true,否则结果为false ...
- 构建javascript array包
//像一个数组添加数组. copyArray = function(inSrcArray,inDestArray){ var i; for(i=0;i<inSrcArray.length;i++ ...
- 大数据篇:DolphinScheduler-1.2.0.release安装部署
大数据篇:DolphinScheduler-1.2.0.release安装部署 1 配置jdk #查看命令 rpm -qa | grep java #删除命令 rpm -e --nodeps xxx ...
- JSTL1.0和JSTL1.1的区别
这要从一个异常说起 According to TLD or attribute directive in tag file, attribute value does not accept any e ...
- 吴裕雄--天生自然JAVA数据库编程:事务处理
DROP TABLE user ; -- 删除表 CREATE TABLE user( id INT AUTO_INCREMENT PRIMARY KEY , name VARCHAR(30) NOT ...