unittest

Python接口自动化测试框架实战 从设计到开发

旧时模样 提交于 2019-12-21 01:00:35
第1章 课程介绍(不要错过) 本章主要讲解课程的详细安排、课程学习要求、课程面向用户等,让大家很直观的对课程有整体认知! 第2章 接口测试工具Fiddler的运用 本章重点讲解如何抓app\web的http\https请求包、如何模拟请求数据、过滤规则及修改响应数据、如何解决无法抓包问题 以及fiddler接口测试,让大家能应用好工具! 第3章 Requests常见方法实战运用 本章重点讲解 get\post请求测试、接口测试中结果处理、上传\下载文件接口测试、请求中header及cookie处理、登陆接口加秘密字段处理及session的管理,重点让大家掌握Requests常见的方法。 第4章 get\post接口开发实战 本章主要讲解开发接口环节搭建、flask开发get接口以及flask开发post接口,让大家深入掌握接口开发! 第5章 Mock服务如何实现 本章重点讲解Mock实现原理和实现、case中Mock的实现以及MockRunner的使用,重点让大家掌握Mock服务。 第6章 Unittest的使用 本章重点讲解unittest介绍及使用 、unittest中断言、unittest中case的管理、unittest和接口测试结合及接口测试之报告生成。 第7章 接口自动化框架设计 本章重点讲解持续集成环境搭建、 jenkins插件管理、Jenkins邮件配置

Web自动化之Unittest框架

情到浓时终转凉″ 提交于 2019-12-20 23:12:56
文章目录 UnitTest 框架 1. TestCase(测试用例) 2. TestSuite(测试套件) 3.TextTestRunner(测试用例执行) 4. TestLoader(组装测试用例) 5. Fixture 6. 断言 定位不到元素怎么处理? 今日目标 能够使用UnitTest定义测试用例并运行 记住TestSuite作用及使用方式 记住TextTestRunner作用及使用方式 了解TestLoader作用及使用方式 掌握定义方法级别的Fixture 掌握定义类级别的Fixture 了解定义模块级别的Fixture 了解断言的概念 能够使用assertEqual、assertIn进行断言 UnitTest 框架 什么是框架? 框架英语单词是framework 为解决一类事情的功能集合 什么是UnitTest框架? 概念:UnitTest是Python自带的一个单元测试框架,用它来做单元测试。 为什么使用UnitTest框架? 能够组织多个用例去执行 提供丰富的断言方法 能够生成测试报告 UnitTest核心要素 TestCase TestSuite TestRunner TestLoader Fixture 1. TestCase(测试用例) 代码步骤 1.导包:import unittest 2.定义测试类:新建测试类必须继承unittest.TestCase

python--unittest框架之testcase

匆匆过客 提交于 2019-12-17 23:09:16
** 一 unittest是什么? ** unittest是python内置的单元测试框架,具备编写用例、组织用例、执行用例、输出报告等自动化框架的条件。是标准库,安装方式:pip install unittest 使用unittest前需要了解该框架的五个概念: 即test case,test suite,testLoader,test runner,test fixture。 test case :一个完整的测试单元,执行该测试单元可以完成对某一个问题的验证,完整体现在: 测试前环境准备(setUp),执行测试代码(run),以及测试后环境还原(tearDown); test suite :多个测试用例的集合,测试套件或测试计划; testLoader :加载TestCase到TestSuite中的,其中loadTestsFrom__()方法用于寻找TestCase, 并创建它们的实例,然后添加到TestSuite中,返回TestSuite实例; test runner :执行测试用例,并将测试结果保存到TextTestResult实例中,包括运行了多少测试用例, 成功了多少,失败了多少等信息; test fixture:一个测试用例的初始化准备及环境还原,主要是setUp() 和 setDown()方法; ** 1.unittest的属性如下: [‘BaseTestSuite

pytest使用简介

淺唱寂寞╮ 提交于 2019-12-17 16:46:27
pytest是基于py unittest的一个单元测试框架,用起来比unittest简单不少,不过和unittest使用不太一样,总结如下: 格式: case的py文件名必须是test开头 def用例必须是test开头 class名必须是Test开头,注意大写 class中的def用例必须是test开头 pytest提供了很多运行参数,比较常用的有: -k:只执行指定的用例-s:命令行显示测试代码的输出,如果需要输出html结果最好不要-s -v:显示详细信息 -q:不显示详细信息 --html=path:输出测试结果到html 初始化,pytest提供了如下初始化和清理环境方法: setup_function、teardown_function setup_module、teardown_module setup、teardown setup_class、teardown_class setup_method、teardown_method @pytest.fixture() 对于class用例集类来说: setup_function、teardown_function 不能用 setup_module、teardown_module 放在类外可以使用、放在类内不能使用,只在最前和最后调用 setup、teardown 放在类内可以使用、放在类外不能使用,每个case都会调用

python 驱动开发环境实践

余生长醉 提交于 2019-12-17 15:58:25
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 我平常使用Gvim来写代码,所以先配置Vim的python开发环境。 一、配置Vim环境 模版文件准备 为了在vim中能够自动建立测试文件框架,需要建立模版文件,假设我在 ~/.vim/skeleton 目录下建立需要的模版文件,目录结构如下: /home/bl/.vim/skeleton |---test.py |---skeleton_top.py |---alltests.py |---skeleton_bottom.py alltest.py 模版文件 import unittest import sys import os CUR_DIR = os.path.abspath(os.path.dirname(__file__)) PAR_DIR = os.path.abspath(os.path.join(CUR_DIR, os.path.pardir)) sys.path.append(os.path.abspath(PAR_DIR)) sys.path.append(os.path.abspath(CUR_DIR)) sys.path.append(os.path.join(CUR_DIR, 'tests')) tests = os.listdir(os.curdir) tests = [n[:-3

Flask-单元测试

时光总嘲笑我的痴心妄想 提交于 2019-12-16 13:47:39
Flask-单元测试 敏捷开发(agile development) scrum 结对编程 测试驱动开发(TDD): Test driven development 单元测试(unit testing)是开发者自己编写的一小段代码,用于检验被测代码的一个很小的、很明确的功能是否正确。通常而言,一个单元测试是用于判断某个 特定条件(或者场景)下某个特定函数 的行为。 注意单元测试是开发人员自己负责 unittest Pytest是 python的一种unittest框架,与python自带的unittest测试框架类似,但是比unittest框架使用起来更简洁,效率更高。 执行测试过程中可以将某些测试跳过,或者对某些预期失败的case标记成失败 能够支持简单的单元测试和复杂的功能测试 支持重复执行失败的case 支持运行由nose, unittest编写的测试case 具有很多第三方插件,并且可以自定义扩展 方便的和持续集成工具集成 支持参数化 pytest fixture用途 1.做测试前后的初始化设置,如测试数据准备,链接数据库,打开浏览器等这些操作都可以使用fixture来实现 2.测试用例的前置条件可以使用fixture实现 3.支持经典的xunit fixture ,像unittest使用的setup和teardown 4

unittest 执行airtest 脚本

十年热恋 提交于 2019-12-16 13:22:46
参考: https://blog.csdn.net/gzh00001/article/details/93331399 #!/user/bin/python3#coding=utf-8#2019/12/14 --17:21#author :huifrom airtest.core.api import *import unittestfrom BeautifulReport import BeautifulReportimport osauto_setup(__file__)class WTestcase(unittest.TestCase): @classmethod def setUpClass(cls): init_device("Android", "OALEP004751") def setUp(self): print('ui测试开始') # start_app("team.driver.dev") def test_1(self): """ui冒烟测试""" # 热启动吊起app touch(Template(r"tpl1576313993828.png", record_pos=(-0.336, 0.024), resolution=(720, 1440))) sleep(6) # 错误登录 text("12341234") sleep(5) touch

Selenium 4 Python的最佳测试框架

亡梦爱人 提交于 2019-12-14 10:56:11
随着Python语言的使用越来越流行,基于Python的测试自动化框架也越来越流行。在项目选择最佳框架时,开发人员和测试人员会有些无法下手。做出选择是应该判断很多事情,框架的脚本质量,测试用例的简单性以及运行模块并找出其缺点的技术。这篇文章总结了测试自动化领域,适合Web端自动化框架(基于Python语言)以及它们相对于其他方面的优缺点。因此,可以帮助一些人根据需要和实际情况选择合适的的Python框架进行测试自动化。 Robot Framework Robot Framework主要用于测试驱动的开发以及验收测试,它是最好的测试框架之一。虽然是用Python开发的,它也可以运行的 IronPython ,这是 .NET 为基础的和基于 Java 的 Jython 的。Robot Framework作为Python框架可在所有平台上兼容:Windows,MacOS或Linux。 前提 首先,只有安装了Python 2.7.14或更高版本的Python,您才能使用Robot Framework(RF)。 您还需要安装“pip”或其他python软件包管理器。 最后,必须下载一个IDE。在开发人员中流行的工具是PyCharm社区版。 Robot Framework的优缺点是什么?让我们看一下与其他Python框架相比,作为测试自动化框架的Robot的优缺点是什么。 优点

Selenium Webdriver 学习(1)--install

你。 提交于 2019-12-14 10:34:11
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> step 1 首先当然是安装,这边先要安装python www.python.org/download里面有两个版本可以选,一个是python3, 一个是python2,由于之前一直在用2,所以仍然选择2.7.11 step 2 安装setup-tools,这个工具在安装python第三方软件时非常有用 https://pypi.python.org/pypi/setuptools python setup.py install step 3 进入C:\Python27\Scripts easy_install pip step 4 进入C:\Python27\Scripts pip install selenium 此时python和selenium都已经安装完毕 创建第一个selenium脚本进行测试,在百度首页中查找python关键字 #encoding:utf-8 from selenium import webdriver from selenium.webdriver.common.keys import Keys import time driver = webdriver.Firefox() #初始化Firefox浏览器对象 driver.get("http://www.baidu.com")

Python测试语法

余生颓废 提交于 2019-12-11 23:26:40
单元测试用于核实函数的某个方面没有问题;测试用例是一组单元测试,核实函数在各种情形下的行为都符合要求。 全覆盖式测试用例包含一整套单元测试,涵盖了各种可能的函数使用方法。 模块unittest提供了代码测试工具。 要为函数编写测试用例,可先导入模块unittest以及要测试的函数,再创建一个继承unittest.TestCase的类,并编写一系列方法对函数行为的不同方法进行测试。 import unittest from mokuai import get_def class NamesTestCase ( unittest . TestCase ) : def test_first_name ( self ) : formatted_name = get_def ( 'lin' , 'he' ) self . assertEqual ( formatted_name , 'lin he' ) #断言方法 unittest . main ( ) 所有以test打头的方法都将自行运行。 断言方法用来核实得到的结果是否与期望的一致。 各种断言方法 assertEqual(a,b) assertNotEqual(a,b) assertTrue(a,b) assertFalse(a.b) assertIn(item,list) assertNotIn(item,list) unittest