搭建自动化框架「面试题」

"""
- 配置文件
- yaml
- python
- ini
"""
# 111.ini
[default]
host= http://www.yuz.com
hobby=[1,2,3]
[database]
host= http://www.yuz.com
port= 3306
name=py
connected= True## ini
- 有一些老旧的项目还在失业ini 配置
- 格式,开头有 [],host=woziji
- 类型:一般就是字符串,如果想表示其他的数据类型,读取后需要自己转换
- 用的ConfigParser 这个类稍微麻烦一点
- 不支持注释
## 数据驱动
data driver testing  = data-driver-testing ==简称:DDT
数据   驱动    测试
一种设计模式
数据:测试数据,用例数据  Excel 文件,
自动化测试代码:一组用例数据带动一个自动化测试函数的执行
虽然说有多个数据,但是只需要一个测试函数来执行
## 项目框架搭建
目标:执行接口自动化测试
- 必须支持编写自动化用例(测试函数)
- 用例数据,存储测试数据;Excel,yaml,py
- 大多数的自动化用例都是手工测试转成的
- 读取Excel的操作
- 收集用例,运行,生成报告
- 支持日志处理
- 支持配置文件处理
- 支持邮件发送(框架实现,jenkins)
- 支持数据驱动
- 支持接口的访问# 项目框架的分层
项目工程
- testdata- api_case.xlsx
- testcase- test_register.py- test_login.pytest06_login.py
from configparser import ConfigParserparser = ConfigParser()
parser.read(d1.ini,encoding='utf-8')
# 读取配置项
host=parser.get('default','host')
print(host)port = parser.get('db','port')
print(type(port)
print(port)hobby = parser.get('db','port')
print(hobby)
print(type(hobby))# tes_login1.py
cases= [case1, case2, case3, case4]
import unittestclass TestLogin(unittest.TestCase):def test_login_1(self):for case in cases:actual = login(case['username'],case['passwd'])expected = case['expected']self.asserEqual(expected,actual)
## test_login_7_ddt.py
import unittest
from unittestreport import ddt,list_data
@ddt
class TestLogin(unittest.TestCase):
# 相关地方调试:查看data的类型:str
# 字符串转换成字典
# 调试类型;值@list_data(cases)def test_login_1(self,case):data_str =  case['data']data = eval(data_str)# case 表示每次从cases 当中取出来一个元素actual = login(case['username'],case['passwd'])expected = case['expected']self.asserEqual(expected,actual)
# test_login8.py
# 读取case.xlsx 表格相关的数据 openpy
from def read_excel_dict(file,sheet_name="Sheet"):"""读取Excel"""# 打开文件workbook = openpyxl.load_workbook(file)# 选择表单,表格 Sheet1data = list(sheet.values)title = data[0]rows = data[1:]data = [dict(zip(title, row)) for row in rows]return data
data_file = r'case的path'
cases = read_excel_dict('')

day17_自动化的框架搭建相关推荐

  1. pytest接口自动化框架搭建

    目录: 一.设计思路-整体框架: 二.具体框架搭建 1.公共方法-common 1.1.yaml_util.py 1.2.excel_util.py 1.4.text_ util.py 1.5.exc ...

  2. Windows下搭建ant+jenkins+jmeter自动化接口测试框架

    Windows下搭建ant+jenkins+jmeter自动化接口测试框架 引言 为什么要持续集成? 1.减少风险 2.减少假定 3.减少重复过程 4.增强项目的可见性 5.持续集成可以带来两点积极效 ...

  3. Windows下搭建ant+jenkins+jmeter自动化接口测试框架(详细篇)

    引言 为什么要持续集成? 1.减少风险 2.减少假定 3.减少重复过程 4.增强项目的可见性 5.持续集成可以带来两点积极效果: (1)有效决策:持续集成系统为项目构建状态和品质指标提供了及时的信息, ...

  4. 接口自动化测试之框架模型搭建

    一.前言 小伙伴们大家好呀,今天笔者给大家带来了一篇关于python接口自动化测试的文章,这篇文章主要讲解Python接口自动化测试框架模型的搭建,主要介绍如何设计框架,以及基础的框架运行等,话不多说 ...

  5. rf框架搭建_RF框架—自动化UI框架解决方案模版

    RF框架-自动化UI框架解决方案模版 第一章 项目特色 基于WEBUI自动化项目企业实战经验总结搭建的属于自己的一套自动化开发脚手架. 技术框架选用Robot Framework用于验收测试和验收测试 ...

  6. 【App自动化框架搭建流程及其思路】

    App自动化框架搭建流程 之前公司我所在的业务是关于sdk的一些业务,为了缓解我们sdk组的功能测试大量重复性业务.我搭建了一套App自动化框架,现已投入日常的使用.这篇文章简单的介绍下我这个App自 ...

  7. python自动化(五)接口自动化:4.接口自动化框架搭建实战

    一.业务分析 我们这里以企业微信的添加成员业务为例,来讲解我们的自动化测试框架. 企业微信接口文档:https://work.weixin.qq.com/api/doc/90000/90135/901 ...

  8. Appnium(三)企业微信UI自动化框架搭建

    前言 本章主要讲述针对[企业微信App]进行AppUI自动化测试框架的搭建 ps:这里底层用的是Appnium,另外写了一下底层Uiautomator2的简单搭建 UIautomator2框架搭建实战 ...

  9. python安装robotframework报错_Python3+RIDE+RobotFramework自动化测试框架搭建过程详解

    Python2.7已于2020年1月1日开始停用,之前RF做自动化都是基于Python2的版本. 没办法,跟随时代的脚步,我们也不得不升级以应用新的控件与功能. 升级麻烦,直接全新安装. 一.Pyth ...

最新文章

  1. C++_STL——stack
  2. 进度条(python 实现)
  3. php重置指针,PHP数组指针函数 current,end,next,prev,reset,each
  4. 云上的可观察性数据中台,如何构建?
  5. day34 数据库入门
  6. 4. linux调用文件计算阶乘前5项和_【题解循环】1091:求阶乘的和
  7. 蓝芯保护卡_有个网友问偶蓝芯卡是目前最好的还原卡?它与传统还原卡的区别在哪里?...
  8. IDEA如何将上传项目到SVN
  9. U2000V1R2安装部署工作日报
  10. 打开 cmd 的方式
  11. Low-Code is Low—— 低代码的使用
  12. PHP请求示例API接口,商品详情数据的获取
  13. 淘宝的直播视频怎么下载啊?有好的方法没有,越简单越好
  14. Camera两种快门方式区别
  15. 听觉外围分析matlab,扫描附近的低功耗 Bluetooth 外围设备 - MATLAB blelist - MathWorks 中国...
  16. 电脑无法开机一直滴滴响
  17. 《Mahout实战》
  18. 《李开复:人工智能十讲》
  19. ipxe u盘启动linux内核,[转载]笔记: SYSLINUX PXE gPXE iPXE PXELINUX D
  20. 咸鱼ZTMR实例—自动浇花器

热门文章

  1. android eventlog监听,Android EventLog总结
  2. 快速将Word文件转换成PPT的方法
  3. 07数据库设计(概念结构、逻辑结构)
  4. Android自带图标大全
  5. android 隐藏虚拟键盘,android隐藏全面屏虚拟键盘实现
  6. Word文档在前台页面展示
  7. 计算机网络毕业设计,计算机网络毕业设计
  8. scrapy爬取豆瓣电影列表
  9. html表格中加下拉,怎样在iview的Table表格中添加下拉菜单?
  10. B2B行业的支付的那些事。