您的位置:首页 > 理论基础 > 计算机网络

HTTP接口自动化和持续集成(ant+maven+JenKins)

2017-02-16 12:19 316 查看

1、APP性能测试和自动化测试

1.1、APP性能测试

 1.1.1、客户端

    主要测试以下8个指标,可通过Testin的标准兼容测试获取这些指标



    在终端列表-详情页的最下方可查看具体某台手机上的性能指标。



 1.1.2、服务器

    测试方法和Web服务端测试一样,大多都走的接口,有些项目是http接口,有些是webservice接口,针对接口的压力测试或者并发测试可以使用Jmeter、LoadRunner等工具。虽然有些性能测试工具比如Loadrunner高版本已经支持录制APP端的脚本,但实际操作起来还是比较困难的。

1.2、APP自动化测试

1.2.1、UI自动化测试

    UI测试是测试APP与一个真实或模拟用户的交互情况。确保应用程序在用户执行一系列手势(点击、长按、滑动或滚动等)操作之后返回的UI输出是否符合产品需求和设计稿,如键盘输入或按工具栏单、对话框、图像等UI控件,其中最重要产品操作流程是否符合需求。进行UI测试,一般有两个选择:

     一是在真机或模拟器中来使用这个APP,根据产品需求、设计稿和测试用例把这个APP的所有流程、每一页都尽可能走一遍,并且尝试各种方法来发现应用是否有不符合产品需求和设计稿的异常表现。

     二是使用UI自动化测试工具,在这些工具提供的框架里编写代码直接操作APP所用到的UI控件,模拟用户点击、长按、滑动或滚动等手势操作,编码之前可以先用uiautomatorviewer工具获取被测控件的属性,常用工具 uiautomato、Monkerunner、Robotium、Appium和Monkey(这个严格不算)等。

1.2.2、接口自动化

a、自己用Java编写接口自动化测试程序

b、详见《HTTP协议和接口测试》

c、详见《第2章以后》

1.2.3、持续集成

详见《第2章以后》

2、持续集成

    这是项目管理中的一个概念,通常大型项目都会有一个主线版本和很多个分支版本(可以理解为一个项目分为多个模块组),每一轮产品迭代都要把这些分支版本集成到主线中统一发布(就是合代码)。实际的项目管理中,要进行频繁的集成,几天就要一次或者一天一次(就是dailybuild),这样就能快速尽早发现问题,否则分支版本就会大幅度偏离主线,导致以后集成的难度变大,甚至难以集成。

    它的核心措施就是,集成之前,小组里的每个人必须通过自动化的构建(包括编译、发布、自动化测试),每个分支版本也必须通过自动化的构建,如果有测试用例失败就不能集成。集成之后对主线版本也进行dailybuild。这种自动化的构建通常由专门一个自动化测试团队来负责,编写用例、维护环境等,无需太多人工干预,让开发人员可以更专心的从事开发工作。

    以下介绍的就是自动化测试的一种---http接口自动化测试。使用的是Jmeter+ant+ maven+jinkens 组合。

3、安装JKD和Jmeter

   自动化框架的核心,每个接口测试用例还是由Jmeter来完成的。详见《Jmeter》和《接口测试》。这俩环境安装部署完成之后,就要编写接口测试脚本.jmx了,保证手动操作Jmeter运行这些脚本是能实现用例目的的。

4、安装Ant

  Apache-Ant是一个自动化部署、构建和测试的工具,已经可以实现自动化功能(dos里手动敲ant批量运行jmeter脚本)了,只往后面还能够更加智能。ant指令相当于Linux下的make命令,默认构建文件是builid.xml,相当于makefile文件,可使用Eclipse自动生成模板。

   第一、解压安装Ant,并配置ANT_HOME和PATH,完成后可使用ant  -version查看。

   第二、将JMeter所在目录下extras子目录里的ant-JMeter-1.1.1.jar复制到Ant安装目录lib子目录下。

   第三、准备测试报告的格式文件,我这里准备了两种格式文件,文件名不同,都放到jmeter的extras目录下。

   第四、修改jmeter/bin/jmeter.properties文件,找到jmeter.save.saveservice.output_format所在行,去掉注释并赋值为xml。

   第五、准备Ant脚本目录:

        


    第六、DOS里运行:进入D:/jmeter_test/目录,输入ant就会根据build.xml批量运行script下的所有jmx脚本,D:\jmeter_test\result_log\html\下可查看测试报告。



    第七、查看测试报告



5、安装Maven和Jenkins

    把Jmeter、ant、maven都集成在JenKins里,可以实现定时启动测试、在线查看测试报告的功能,Ant是软件构建工具,Maven的定位是软件项目管理工具,Jenkins是一个可扩展的持续集成引擎。

    第一、解压安装Maven,并配置MAVEN_HOME和PATH,完成后可使用maven  -version查看,如果不能查询相应信息,可以重启设备。

    第二、双击jenkins.msi安装,安装完成后会自动打开http://localhost:8080,第一次启动就如下图。



    第三、如何修改端口号。Jenkins的默认端口是8080,但是8080这个端口是安全端口,很多程序或者服务都需要使用这个端口(端口分公认端口、注册端口和动态/私有端口三类),对这种端口冲突,我们只能选择改变Jenkins的端口。方法是:在控制台中执行命令cd <JENKINS_HOME> 然后Java -jarjenkins.war --httpPort=8081。这样可以临时修改Jenkins端口,如果重启Jenkins会发现启动的还是8080端口。为了永远的解决这个问题,我们可以使用bat脚本或者shell脚本。bat脚本为例:set
JENKINS_HOME=C:\Jenkinscd <JENKINS_HOME>然后 java -jarjenkins.war --httpPort=8081。每次都通过运行这个脚本来启动Jenkins,其实就是每次都设置一次Jenkins的端口。

    第四、如何关闭和启动jenkens服务。jenkins服务默认是自启动的。首先dos通过netstop/start  jenkins两条命令关闭或开启jenkins服务了。

6、新建和运行任务

6.1、新建任务

1、先新建->输入item名称->ok,进入任务配置页



2、然后在任务配置页中,继续配置,最后保存。



3、保存后就创建给任务并默认进入该任务的“状态”页



4、点击“Jenkins”或者返回面板可以返回主面板,查看所有任务的最近一次构建状态



6.2、运行任务

1、手动随时构建,有三种方式



2、自动定时构建,等同Linux的Crontab定时任务



这两种方式都等同于dos里在ant安装目录下执行ant命令,完成后可查看以下信息......









7、后期扩展

7.1、集成测试报告

就是可以在Jenkins服务中查看ant的html测试报告。

第一、安装html publisher plugins插件



第二、配置该工程的“构建后操作”













7.2、集成邮件发送功能

通过设置以下两项,可以选择在什么情况下,Jenkins会发邮件给指定的邮箱

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: