面向对象+unittest+pytest
date:2018512+513 day07aft+day08mor
一.面向对象编程
1.定义类,类的继承
ps:与普通函数相比,在类中定义的函数第一个参数必须是类的本身实例变量self,在调用时,该参数不用传值

2.__init__方法+私有方法
__init__存在的意义:类中有必须要绑定的属性,可以使用python的内置方法__init__
__init__方法无需调用,创建类的实例时自动调用
__init__方法和类中函数一样,第一个参数必须是self,创建类的实例在__init__方法体内,可以将外部传参传递绑定到self,self.name指的是类的变量。需要在实例化的时候传参。
私有方法(方法前有两个下划线,只能类的方法调用,外面对象无法调用);类中私有方法调用,前面要加self

3.if __name__ == '__main__'
通俗的理解__name__ == '__main__':假如你叫小明.py,在朋友眼中,你是小明(__name__ == '小明');在你自己眼中,你是你自己(__name__ == '__main__')。
if __name__ == '__main__'的意思是:当.py文件被自己直接运行时,if __name__ == '__main__'之下的代码块将被运行;当.py文件以模块形式被导入时,if __name__ == '__main__'之下的代码块不被运行。
如果模块是被导入的,代码块(__name__ == '__main__')下的代码不会被运行;
如果模块是直接运行,代码块(__name__ == '__main__')下的代码会被运行。
参考链接:http://blog.konghy.cn/2017/04/24/python-entry-program/
二.轻量级框架unittest
对unittest二次开发,可以做web,app,api自动化测试
unittest=setUp()【前置条件】+tearDown()【扫尾操作】+测试用例(命名必须以test开头)+测试套件

三.Pytest
Pytest是python的一种单元测试框架。

四.Tips
1.python自带unittest,java有junit框架。
2.unittest框架测试报告 一个点代表成功 F代表失败 E代表异常 (一个位置代表一条测试用例)。
3.fixture:固定配置
把一个函数定义成fixture,在函数声明之前加上“@pytest.fixture”,其他函数要用这个fixture,只用把它做一个输入的参数即可。
面向对象+unittest+pytest的更多相关文章
- 自动化冒烟测试 Unittest , Pytest 哪家强?
前言:之前有一段时间一直用 Python Uittest做自动化测试,觉得Uittest组织冒烟用例比较繁琐,后来康哥提示我使用pytest.mark来组织冒烟用例 本文讲述以下几个内容: 1.Uni ...
- [转]Python测试框架对比----unittest, pytest, nose, robot framework对比
测试框架 什么是框架? 框架(Framework)是整个或部分系统的可重用设计,框架是用来解决代码的组织及运行控制问题的. 在我们编写自动化脚本的时候,经常需要读取配置文件,读取数据文件,发送请求 ...
- Python测试框架对比----unittest, pytest, nose, robot framework对比
什么是框架? 框架(Framework)是整个或部分系统的可重用设计, 框架是用来解决代码的组织及运行控制问题的. 在我们编写自动化脚本的时候,经常需要读取配置文件,读取数据文件,发送请求,记录日志, ...
- pycharm右键运行unittest、pytest文件
在实际学习过程中,有时候会出现右键运行文件,但没有任何结果的情况.这就是没有使用unittest/pytest 的方式运行. 解决方法: 添加好
- Pytest权威教程14-缓存:使用跨执行状态
目录 缓存:使用跨执行状态 使用方法 首先只重新运行故障或故障 上次运行中没有测试失败时的行为 新的config.cache对象 检查缓存内容 清除缓存内容 逐步修复失败用例 unittest.Tes ...
- 如何使用Pytest进行自动化测试
为什么需要自动化测试 自动化测试有很多优点,但这里有3个主要的点 可重用性:不需要总是编写新的脚本,除非必要,即使是新的操作系统版本也不需要编写脚本. 可靠性:人容易出错,机器不太可能.当运行不能跳过 ...
- Pytest自动化测试-简易入门教程(03)
今天分享内容的重点,和大家来讲一下我们的测试框架--Pytest 讲到这个框架的话呢,可能有伙伴就会问老师,我在学习自动化测试过程中,我们要去学一些什么东西? 第一个肯定要学会的是一门编程语言,比如说 ...
- Pytest自动化测试-简易入门教程(01)
我们今天主讲的内容,就是测试框架Pytest,讲到这个测试框架对于没有做过Web自动化的伙伴来说,会觉得这个东西是陌生的,那么到底什么是框架呢?什么又是自动化呢?自动化为什么又要用框架呢? 难道我学自 ...
- utittest和pytest中mock的使用详细介绍
头号玩家 模拟世界 单元测试库介绍 mock Mock是Python中一个用于支持单元测试的库,它的主要功能是使用mock对象替代掉指定的Python对象,以达到模拟对象的行为. python3.3 ...
随机推荐
- mysql使用sql语句根据经纬度计算距离排序
CREATE TABLE `locationpoint` ( `id` int(11) NOT NULL, `province` varchar(20) NOT NULL, `city` varcha ...
- vector底层实现
https://blog.csdn.net/u012658346/article/details/50725933 各个stl容器区别 https://blog.csdn.net/shawjan/ar ...
- poj-2689-素数区间筛
Prime Distance Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 22420 Accepted: 5954 Descr ...
- poj-1061-exgcd
青蛙的约会 Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 128285 Accepted: 27962 Descript ...
- nginx是什么,如何使用
一:nginx是什么? 二:nginx作为网关,需要具备什么?(nginx可以作为web服务器,但更多的时候,我们把它作为网关,因为它具备网关必备的功能:) 反向代理(反向代理就是服务器找来一个机器代 ...
- docker安装使用教程(Kali2.0)
一.apt安装 apt直接安装是最好的,因为apt源中的其他docker相关组件,也是与docker匹配的版本. apt-get install docker docker-compose 二.手动安 ...
- vue 跳外链
var host = window.location.host;var protocal = window.location.protocolwindow.location.href = protoc ...
- vm安装diagram
xxx1234ZZ xxx1234ZZ@
- sql根据年月日查询注册数或者和值
//公司需要我做一个根据每天用户注册数量生成一个折现图,sql如下,//亲测好用,只是如果某一天没有注册的话,就不会显示日期 SELECT DATE_FORMAT(f.registDate, '%Y- ...
- nyoj 0325 zb的生日(dp)
nyoj 0325 zb的生日 zb的生日 时间限制:3000 ms | 内存限制:65535 KB 难度:2 描述 今天是阴历七月初五,acm队员zb的生日.zb正在和C小加.never在武汉集 ...