接口自动化 基于python+Testlink+Jenkins实现的接口自动化测试框架

Posted 自动化测试馆长

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了接口自动化 基于python+Testlink+Jenkins实现的接口自动化测试框架相关的知识,希望对你有一定的参考价值。

1、  开发环境

win7

PyCharm 4.0.5

python 3.3.2

 

testlink-1.9.14

下载地址

安装教程:

 

TestLink-API-Python-client-master

下载地址

 

2、  主要功能逻辑介绍

 

 

3、  框架功能简介

1、框架集成了Testlink,可使用Testlink灵活对测试项目,测试计划,测试用例进行管理

 

2、可通过配置文件灵活配置运行模式,支持按测试项目、测试计划、测试套件批量运行执行用例

 

3、支持HTTPS,HTTP,WebService协议,支持POST, GET方法,支持JSON,非JSON数据格式的请求,支持多种形式的数据校验

 

4、可自动生成html可视化接口测试报告

 

5、可根据配置在测试完成后,自动发送测试报告邮件

 

6、支持文件、控制的日志打印,可分别控制开关

 

7、支持模块化开发

 

8、可集成Jenkins自动运行脚本

参考文章:为Jenkins添加Windows Slave远程执行python项目脚本

 

 

4、  框架模块详细介绍

a)   config


 

dbconfig.conf包含测试数据库,应用数据库的配置信息

 

logconfig.conf包含日志配置信息,具体如下:



 

mail.conf包含邮件发送配置信息,如下,


 

注:不同类型的邮箱(发件人邮箱),需要修改配置文件为对应的host和端口

smtp.163.com:25

smtp.qq.com:465

 

report.conf包含测试报告文件配置信息,如下



 

runmodeconfig.conf包含运行模式配置信息



 

runmodeconfig.py日志配置类

 

b)   globalpkg


 

log.py实现日志打印类

 

mydb.py实现数据库类,封装数据库相关操作

 

mytestlink.py主要用于获取testlink连接实例

 

othertools.py实现其它通用功能,比如数据转换,批量创建目录等

 

globalpy.py主要提供全局变量,全局实例等



 

c)   logstestreport

可分别用于存放日志文件,测试报告

 

d)   interface

封装接口测试方法类



 

说明:可根据需要,每个接口对应一个模块,对应一个类;也可以多个接口对应一个模块,对应一个类

需要注意的是,这里添加的模块及类,需要在casestep.py中导入

目前框架中的模块给出了一些案例,如下:



 

对应用例配置:



 

 

更多案例烦自行查阅模块

 

e)   其它模块

如下,顾名思义

 


 

 

5、  Testlink必要的配置与用例管理

为了批量设置接口ip,端口(主要是这两个),协议信息(仅用于展示),需要对项目,计划,套件等必要的配置,以及客户端环境变量配置

a)   配置

如下,登陆Testlink,进入用户管理-查看用户,如下


 

   点击目标用户(例中为admin),打开如下界面


 

    点击生成新的密钥,如下


 

在运行python脚本端进行环境变量的配置,如下:

1、新建系统环境变量“TESTLINK_API_PYTHON_DEVKEY”,变量值为上述秘钥



 

2、新建“TESTLINK_API_PYTHON_SERVER_URL”系统环境变量,变量值为“

http://host/testlink/lib/api/xmlrpc/v1/xmlrpc.php”,其中host为testlink的访问地址


 

测试是否生效:

C:\\Users\\laiyu>python

Python 3.3.2 (v3.3.2:d047928ae3f6, May 16 2013, 00:03:43) [MSC v.1600 32

tel)] on win32

Type "help", "copyright", "credits" or "license" for more information.

>>> import testlink

>>> tls = testlink.TestLinkHelper().connect(testlink.TestlinkAPIClient)

>>> tls.testLinkVersion()

'1.9.14'

      项目,计划,套件等相关配置
     


 


 

b)   用例管理


 


 






 

6、  运行结果

见源码附件

 

7、  源码下载

下载地址:

 

下载后解压,用pycharm导入项目即可

 

8、  说明

时间有限,精力有限,暂且就到这吧,有需要的可以自己扩展、修改框架。

注:目前还存在个bug,测试报告中,类似xml格式数据没显示出来,有兴趣的烦先自己解决下。

最后:下方这份完整的自动化测试视频学习教程已经整理上传完成,朋友们如果需要可以自行免费领取 【保证100%免费】

以上是关于接口自动化 基于python+Testlink+Jenkins实现的接口自动化测试框架的主要内容,如果未能解决你的问题,请参考以下文章

testlink+python实现测试自动化(1)

CI/CD

常见的自动化测试框架

Python接口自动化

Python接口自动化

Python实现将Excel编写的用例上传到testlink指定用例集