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

来源:互联网 发布:加盟淘宝网店是真的吗 编辑:程序博客网 时间:2024/06/06 23:16

目录

1      开发环境

2      主要功能逻辑介绍

3      框架功能简介

4      框架模块详细介绍

5      Testlink相关的配置与用例管理

6      运行结果

7      源码下载

8      说明

 

1、  开发环境

win7

PyCharm 4.0.5

python 3.3.2

 

testlink-1.9.14

下载地址http://pan.baidu.com/s/1c16H50O

安装教程:http://blog.sina.com.cn/s/blog_13cc013b50102w9am.html

 

TestLink-API-Python-client-master

下载地址http://pan.baidu.com/s/1pLrcunT

 

2、  主要功能逻辑介绍

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

 

 

3、  框架功能简介

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

 

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

 

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

 

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

 

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

 

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

 

7、支持模块化开发

 

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

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

 

 

4、  框架模块详细介绍

a)   config

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

 

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

 

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

 

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

 

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

 

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

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

smtp.163.com:25

smtp.qq.com:465

 

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

 

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

 

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

 

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

 

runmodeconfig.py日志配置类

 

b)   globalpkg

 

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

log.py实现日志打印类

 

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

 

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

 

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

 

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

 

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

 

c)   logstestreport

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

 

d)   interface

封装接口测试方法类

 

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

 

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

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

 

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

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

 

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

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

对应用例配置:

 

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

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

 

 

更多案例烦自行查阅模块

 

e)   其它模块

如下,顾名思义

 

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

 

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

 

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

a)   配置

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

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

 

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

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

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

    点击生成新的密钥,如下

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

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

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

 

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

 

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

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

 

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

测试是否生效:

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'

 

      项目,计划,套件等相关配置
     Python <wbr>基于python+Testlink+Jenkins实现的接口自动化测试框架


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

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

b)   用例管理

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

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

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

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


 

6、  运行结果

见源码附件

 

7、  源码下载

下载地址:http://pan.baidu.com/s/1c2Av9FM

 

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

 

8、  说明

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

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

0 0
原创粉丝点击