jmeter 单接口测试方案(接口无业务关联)

前言

前面开了一篇讲了Jenkins+jmeter+ant的使用,但没有说到具体怎么投入到项目使用,主要介绍了接口测试定义,流程和环境部署,因此我今天要说的就是我是怎么将这个方案投入到实际中使用的。这套方案主要用于相互接口之间无业务关联的测试。html

结构设计与数据准备

接口测试的流程

  一、 项目启动后,测试人员要尽早找到开发人员拿到接口测试文档
  二、 获取接口测试文档后,就能够进行接口用例的编写和调试
  三、 接口用例编写调试完成后,部署到持续集成的测试环境中,
  四、 设定脚本运行频率,告警方式等基本参数,进行接口的平常监控
  五、 每日进行接口脚本的维护更新,接口异常的处理java

jmeter测试过程

 

jmeter+jmeter+ANT 总体结构设计

测试数据

 个人测试数据是用CSV管理的,包含域名、url、方法(get仍是post)、 参数 、预期结果(能够是多个),使用excel建立而后转化程csv格式,这样一来咱们只须要在excel中维护咱们的用例就行了架构

 从数据格式能够看出,作了用例的执行标识,选中为YES时才执行,NO时不执行,这是一个用例选择执行的简单设计,还有请求的方法也是能够选择的,目前项目中的主要用POST和GET,除此以外以后要获取的还有用例名,调用的接口和具体的测试请求数据,这就是使用excel管理测试用例的模块框架

 注意:包含中文字符jmeter取值可能会报错,修改${jmeterhome}/bin/jmeter.profile ide

# The encoding to be used if none is provided (default ISO-8859-1)
#sampleresult.default.encoding=ISO-8859-1
sampleresult.default.encoding=UTF-8

配置基本完成,以后就是项目的目录架构:post

  1. ./Test_Play/目录用来放Jmeter生成的Case文件(编写时注意,不要用绝对路径,不然后续维护成本会提升)
  2. ./Test_suit/目录用来放Jmeter测试须要的相关配置文件
  3. ./资源/目录用来存放项目相关的一些文档信息
  4. build.xml文件,Ant的配置文件
  5. 阅读build.xml文件,会发先还有一个自动生成的目录./report,该目录下有两个目录jtl以及html,用来放置不一样格式的测试报告。

脚本设计

添加一个CSV Data Set Config,把咱们的文本路径填进去测试

添加BeanShell PreProcessor和BeanShell PostProcessor,主要 目的是为了处理中文乱码ui

添加if控制器,根据case_satus判断该条用例是否执行,根据Ament判断是HTTP请求仍是JAVA请求,根据method,来判断执行get仍是post的请求url

设置断言,判断咱们的结果是否正确设计

根据用例数,设置循环次数

  • 可以使用java直接取值判断有多少条用例进行执行
  • String filename=vars.get("JF_API_data");
    String [] datalist=new String[20];
    String content;
    InputStream openfile = new FileInputStream(filename); 
    Workbook wb = Workbook.getWorkbook(openfile);
    Sheet FirstSheet = wb.getSheet(0);
    int totalRows=FirstSheet.getRows();
    int rows=totalRows-1;    //减1是由于我标题行不取,为了后面从第二行开始取
    String data=rows.toString();
    vars.put("row",data);   //用例行数
    wb.close();
    

     

运行调试,查看结果

接入jenkins

脚本设计完之后,接入jenkins用ant去执行jmx就能够了,至于怎么用能够看我上一篇文章,报告预览:

相关文章
相关标签/搜索