初探接口测试框架--python系列7
点击标题下「蓝色微信名」可快速关注
坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注、转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是我们期待的方向,有更多兴趣的欢迎切磋,我们微信订阅号,联系方式如下:
更多书籍,敬请期待
背景说明
python系列课程也有段时间了,我们坚持,一步步来,今天是最后一课的分享,看看接口测试框架的神秘,小怪带领着大家一起完成第7课,希望能看完知识点,自己动手练习,然后和给出的例子代码对比,最后看看作业感悟篇,想学的就往下看吧(本期是第7课,对应的作业是第6题)。
1作业内容
题目6:
第6次作业需求:(完成个人HTTP协议的接口的框架,在第5次作业基础上)
1、包含GET和POST请求,并以天气预报这个接口为例子
2、脚本数据分离,公用方法封装,结果存入mysql数据库,同时统计测试用例成功率,失败率(生成html格式)
3、数据库表自己设计,字段要求和excel中一致(名称可以不一样)
4、提交时间:2016-4-6 中午前
5、参考信息:
通过传入CityName 和 CountryName,获取天气情况
URL:http://www.webservicex.net/globalweather.asmx/GetWeather
参数:CityName=“beijing” 和CountryName=“china”
方法:post
思路:
1、在上次作业的基础上,把结果文件写入mysql数据库;
2、在上次作业的基础上,提取信息生成html report;
3、python生成html可以使用第三方库:pyH,也可以使用普通方法,纯写。
4、判断method时:“if method == 'POST'”:,始终未成立,是因为读取excel是返回的值为text:u'POST',改为 TestDataDict['Method'].value就好了。
5、简单的报告:
参考资料:进QQ群(283440449)下载
2同事作业小结
1、安装MySQLdb
1、安装报错,提示:pythonversion 2.7 required which was not found in the registry。
根据网上搜到的方法,粘贴一个注册python的代码运行后可以安装。
安装后测试import MySQLdb 报错:import_mysql ImportError: DLL load failed: %1 不是有效的 Win32 应用程序。
2、根据搜索问题,原因在于使用了64位python和32位MySQLdb。
3、重新下载MySQL-python-1.2.3.win-amd64-py2.7.exe 安装后可以使用。
2、搞定数据库
1、自己下载mysql太慢,找开发要了一个(不是开发、测试环境的),是日常使用的。
2、自己创建了库,创建表
create table weatherdata( ID int(4) notnull primary key auto_increment, Description char(20) not null, Method char(20)not null, CityName char(20) not null, CountryName char(20) not null, Expchar(20) not null, Act char(20) not null, Result char(20) not null, ResTimedouble(16,4));
3、添加写入mysql表的方法
新建InsertMysqlTable函数,获取指针,传入编写的sql,执行,插入传参的数据。
4、添加读取mysql表输出html的方法
1、新建ReadMysqlTable函数,获取指针,传入编写的sql,执行,读取表内容。
2、读取表每一行,按样式写入html中。另写了几个小函数处理表头、表尾等。
5、修改原有函数
1. 在GetRequest中添加传入Methods的判断,分POST和GET处理。处理获取不到数据的情况,并修改其他细节。
2. 修改ReadTable,添加读取Method并传入字典。
3. 修改EditTable,修改对表进行操作时选择的位置。
6、待改进的地方
1. 作业写得比较仓促,很多细节都没深入考虑,包括一些容错处理等。
2. 对于数据库结构,过于简单,应该加上时间字段。
3. 输出html较为难看,也没有考虑数据过多时的分页。
3后语
到此,我们python系列的课程分享全部完成,可以仔细回味下,这个是从0开始,一步步,无形中走进了 接口测试框架的课程,当然,到这里只是一个开始,框架需要的知识点我们都基本涉及,并练习,修行靠个人,今后的优化思路,我们可以继续探讨,今后使用的经验需要我们大家一起交流和分享,从事python这块的,用我们的行动来点燃我们的热情,参与了收获是用钱买不来的,action起来,希望下一个分享的是你,没错就是你!
推荐的文章
jmeter随笔(20)如何在写入jtl文件时同步写入数据库
↓↓↓ 点击"阅读原文" 【查看更多信息】
初探接口测试框架--python系列7的更多相关文章
- 初探接口测试框架--python系列2
点击标题下「蓝色微信名」可快速关注 坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注.转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是 ...
- 初探接口测试框架--python系列3
点击标题下「微信」可快速关注 坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注.转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是我们期 ...
- 初探接口测试框架--python系列4
点击标题下「蓝色微信名」可快速关注 坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注.转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是 ...
- 初探接口测试框架--python系列5
点击标题下「蓝色微信名」可快速关注 坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注.转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是 ...
- 初探接口测试框架--python系列6
点击标题下「蓝色微信名」可快速关注 坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注.转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是 ...
- 初探接口测试框架--python系列1
点击标题下「蓝色微信名」可快速关注 坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注.转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是 ...
- http接口测试框架-python
简单分解一下 接口测试框架设计: 主入口 -> 遍历接口/用例 -> 发送请求+接收响应 ->结果的对比 -> 生成报告 ->发送email 分成几大类:主入口的py文件 ...
- Macaca 自动化框架 [Python 系列]
介绍 Macaca是一套完整的自动化测试解决方案,基于node.js开发.由阿里巴巴公司开源: 地址:http://macacajs.github.io/macaca/ 特点: 同时支持PC端和移动端 ...
- 【转】基于Python的接口测试框架实例
下面小编就为大家带来一篇基于Python的接口测试框架实例.小编觉得挺不错的,现在就分享给大家,也给大家做个参考.一起跟随小编过来看看吧 背景 最近公司在做消息推送,那么自然就会产生很多接口,测试 ...
随机推荐
- [转]UOS 中的虚拟网络设备
随着网络技术,虚拟化技术的发展,越来越多的高级网络设备被加入了到了 Linux 中,这些设备在 UOS 中起到了广泛而关键的作用,包括 Open vSwitch.TAP 设备.Veth 设备等等,梳理 ...
- 请使用GameBench.jar 文件启动 GameBench服务
请使用GameBench.jar 文件启动 GameBench服务 电脑上安装JAVA JRE:http://www.oracle.com/technetwork/java/javase/downlo ...
- 加了GO后报 'GO' 附近有语法错误
单独运行SQL无问题,了加GO就报错. 是你的SQL语句中,有些行的结尾处只有Char(13)没有Char(10),即:只有回车符没有换行符,这种状态在视觉上是没办法区分的. 参考:http://ww ...
- android学习笔记15——Galley
Gallery==>画廊视图 Gallery和Spinnery父类相同——AbsSpinner,表明Garrey和Spinner都是一个列表框. 两者之间的区别是:Spinner显示的是一个垂直 ...
- jQuery formValidator使用入门
使用插件必须加载的文件 //加载jQuery类库 <script type="text/javascript" src="jquery-1.7.1.min.js&q ...
- 我的Android最佳实践之—— Android更新UI的两种方法:handler与runOnUiThread()
在Android开发过程中,常需要更新界面的UI.而更新UI是要主线程来更新的,即UI线程更新.如果在主线线程之外的线程中直接更新页面 显示常会报错.抛出异常:android.view.ViewRoo ...
- MVC 介绍
1>.NUGET,发布软件,管理平台: 2>.Razor,mvc视图引擎,集中生成HTML代码模板@开始,有自己的格式,语法,如同web forms视图引擎web forms view e ...
- PLSQL_基础系列08_操作符标LPAD / TRUNC / DECODE / TRIM / INSTR(案例)
2014-12-09 Created By BaoXinjian
- NeHe OpenGL教程 第五课:3D空间
转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...
- 基于redis的分布式锁
<?php /** * 基于redis的分布式锁 * * 参考开源代码: * http://nleach.com/post/31299575840/redis-mutex-in-php * * ...