python之用unittest实现接口参数化示例
示例中获取参数的方法有三种:
1. 从文件(txt)中读取参数
2. 从Excel中读取参数
3. 在代码中直接写参数
def login(username,password):
return 'ok' import unittest
from parameterized import parameterized
import BeautifulReport as bf
import xlrd,xlwt def file_to_list(file_name): #从文件中读取参数
l = []
with open(file_name,encoding='utf-8') as fr:
for line in fr:
line_list = line.strip().split(',')
l.append(line_list)
return l def excel_to_list(file_name): #从Excel中读取参数
l=[]
book=xlrd.open_workbook(file_name)
sheet=book.sheet_by_index(0)
for row in range(1,sheet.nrows):#从第一行开始取值,取到最后一行
l.append(sheet.row_values(row))#将每行的数据存入大列表中,每行数据都是一个list
return l class TestLogin(unittest.TestCase): #在代码中写入参数
@parameterized.expand([
['admin','','ok'],
['admin','','ok'],
['admin','','success'],
['admin','','success'],
])
def test_login1(self,username,password,hope):
'''登录'''
result = login(username,password)
self.assertEqual(hope,result) @parameterized.expand(file_to_list('register_data.txt')) #从文件中读取参数
def test_reg(self,username,password):
'文件注册'
print(username,password) @parameterized.expand(excel_to_list('reg_data.xls')) #从Excel中读取数据
def test_reg1(self,username,password):
'Excel注册'
print(username,password) # unittest.main()
runner = bf.BeautifulReport(unittest.makeSuite(TestLogin))
runner.report(description='登录测试用例',filename='login.html')
以上代码执行结果:
..FF...............
测试已全部完成, 可前往E:\Python学习\pycharm\python脚本\day12查询测试报告
生成的报告如入:

python之用unittest实现接口参数化示例的更多相关文章
- python+requests+excel+unittest+ddt接口自动化数据驱动并生成html报告
1.环境准备: python3.6 requests xlrd openpyxl HTMLTestRunner_api 2.目前实现的功能: 封装requests请求方法 在excel填写接口请求参数 ...
- python+requests+excel+unittest+ddt接口自动化数据驱动并生成html报告(二)
可以参考 python+requests接口自动化完整项目设计源码(一)https://www.cnblogs.com/111testing/p/9612671.html 原文地址https://ww ...
- python+requests+excel+unittest+ddt接口自动化数据驱动并生成html报告(已弃用)
前言 1.环境准备: python3.6 requests xlrd openpyxl HTMLTestRunner_api 2.目前实现的功能: 封装requests请求方法 在excel填写接口请 ...
- python selenium 使用unittest 示例
python selenium 使用unittest 示例 并等待某个元素示例 from selenium.webdriver.support.ui import WebDriverWait from ...
- 对比3种接口测试的工具:jmeter+ant;postman;python的requests+unittest或requests+excel
这篇随笔主要是对比下笔者接触过的3种接口测试工具,从实际使用的角度来分析下3种工具各自的特点 分别为:jmeter.postman.python的requests+unittest或requests+ ...
- python 单元测试(unittest)
自动化测试在各大互联网公司全面铺开,那么针对于自动化测试好的设计思想有哪些呢?.....今天我们共同探讨下Unittest之数据驱动(DDT是 “Data-Driven Tests”的缩写). 对于接 ...
- unittest同时支持参数化和生成html报告
最近在用python3.6+unittest+requests做自动化接口测试.发现一个问题,unittest中使用第3方插件parameterized进行参数化,再生成html报告时,运行就会失败. ...
- 接口自动化 [授客]基于python+Testlink+Jenkins实现的接口自动化测试框架V3.0
基于python+Testlink+Jenkins实现的接口自动化测试框架V3.0 by:授客 QQ:1033553122 博客:http://blog.sina.com.cn/ishou ...
- 基于python+Testlink+Jenkins实现的接口自动化测试框架V3.0
基于python+Testlink+Jenkins实现的接口自动化测试框架V3.0 目录 1. 开发环境2. 主要功能逻辑介绍3. 框架功能简介 4. 数据库的创建 5. 框架模块详细介绍6. Tes ...
随机推荐
- SQL 数据类型
Microsoft Access.MySQL 以及 SQL Server 所使用的数据类型和范围. Microsoft Access 数据类型 数据类型 描述 存储 Text 用于文本或文本与数字的组 ...
- springboot整合mybatis的多数据源解决办法
最近项目有一个非解决不可的问题,我们的项目中的用户表是用的自己库的数据,但是这些数据都是从一个已有库中迁过来的,所以用户信息都是在那个项目里面维护,自然而然我们项目不提供用户注册功能,这就有个问题,如 ...
- c# throw和throw ex
c# throw和throw ex 我们在日常开发当中,经常会用到exception异常,并且我们会在exception中的catch块中throw exception,例如: static void ...
- Merge Sort(Java)
public static void main(String[] args) { Scanner input = new Scanner(System.in); int n = input.nextI ...
- OC调用c++函数
1.调用的时候我明明改成了 .mm , 也添加了libstdc++.dylib 调用自己(xcode )写的(cocoa static lib )c++ ,编译总是报找不到库里的函数, 最后我在 ...
- 【XSY2962】作业 数学
题目描述 有一个递推式: \[ \begin{align} f_0&=1-\frac{1}{e}\\ f_n&=1-nf_{i-1} \end{align} \] 求 \(f_n\) ...
- Django 视图系统
Django 视图系统 概念 一个视图函数,简称视图,是一个简单的Python函数,用于接受Web请求并返回Web响应. 通常将视图函数写在project或app目录中的名为views.py文件中 简 ...
- 满汉全席[2-SAT]
题面 对不起我又写了一个板题qvq 和洛谷那道模板题没区别...两样菜至少做一样即可 不过注意define和函数的区别!!! #include <cmath> #include <c ...
- hihoCoder #1770 : 单调数(数位dp)
题面 我们定义一个数是单调数,当且仅当构成这个数每一个数位都是单调不降或不增的. 例如 \(123\) 和 \(321\) 和 \(221\) 和 \(111\) 是单调的,而 \(312\) 不是单 ...
- properties文件操作
properties文件操作类 可以使用java.util.Properties读取.properties文件中的内容 import java.io.InputStream; import java. ...