vlambda博客
学习文章列表

性能测试教程[7] jmeter接口自动化回归测试

古树屋
Click to follow us

性能测试教程[7] jmeter接口自动化回归测试 SongTaste 用音乐倾听彼此

This browser does not support music or audio playback. Please play it in Weixin or another browser. 性能测试教程[7] jmeter接口自动化回归测试

假设有一个登陆接口,要定期回归测试以下几个案例:

1.正常登陆

2.密码没填

3.用户名没填

4.账户错误

5.密码错误

可以使用jmeter发起接口测试,并将测试结果写入到excel。定期执行测试脚本,检查执行结果。

 

第一步

下载jxl.jar

链接:https://pan.baidu.com/s/11LMFAK4lRlh44EHECSSO2A

提取码:414q

将jxl.jar放到jmeter安装目录下的lib\ext目录下

 

第二步

计划通过beanshell取样器调用java方法实现创建excel文件和写入结果到Excel文件。

故先引入jxl.jar包编写java代码

性能测试教程[7] jmeter接口自动化回归测试

import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.io.InputStream;import java.text.SimpleDateFormat;import java.util.Date;
import jxl.Cell;import jxl.LabelCell;import jxl.Workbook;import jxl.format.Alignment;import jxl.format.Colour;import jxl.format.VerticalAlignment;import jxl.read.biff.BiffException;import jxl.write.Label;import jxl.write.WritableCellFormat;import jxl.write.WritableFont;import jxl.write.WritableSheet;import jxl.write.WritableWorkbook;import jxl.write.WriteException;
public class CWOutputFile { /** * wOutputFile写结果文件 wOutputFile(文件路径、用例编号、用例标题、预期结果、实际结果、测试结果) * @throws IOException * @throws BiffException * @throws WriteException */ public void wOutputFile(String filepath,String caseNo,String testPoint,String testData,String preResult,String fresult) throws BiffException, IOException, WriteException{ File output=new File(filepath); String result = ""; InputStream instream = new FileInputStream(filepath); Workbook readwb = Workbook.getWorkbook(instream); WritableWorkbook wbook = Workbook.createWorkbook(output, readwb); //根据文件创建一个操作对象 WritableSheet readsheet = wbook.getSheet(0); //定位到文件的第一个sheet页签 int rsRows = readsheet.getRows(); //获取sheet页签的总行数 /******************设置字体样式***************************/ WritableFont font = new WritableFont(WritableFont.createFont("宋体"),10,WritableFont.NO_BOLD); WritableCellFormat wcf = new WritableCellFormat(font); /****************************************************/ Cell cell = readsheet.getCell(0,rsRows); //获取sheet页的单元格 if(cell.getContents().equals("")){ Label labetest1 = new Label(0,rsRows,caseNo); //第一列:用例编号 Label labetest2 = new Label(1,rsRows,testPoint);//第二列:用例标题 Label labetest3 = new Label(2,rsRows,testData); //第三列:测试数据 Label labetest4 = new Label(3,rsRows,preResult);//第四列:预期结果 Label labetest5 = new Label(4,rsRows,fresult); //第五列:实际结果 if(preResult.equals(fresult)){ result = "通过"; wcf.setBackground(Colour.BRIGHT_GREEN); //预期结果和实际结果相同,测试通过 } else{ result = "不通过"; wcf.setBackground(Colour.RED); //预期结果和实际结果不相同,测试不通过 } Label labetest6 = new Label(5,rsRows,result,wcf);//第六列:测试结果 readsheet.addCell(labetest1); readsheet.addCell(labetest2); readsheet.addCell(labetest3); readsheet.addCell(labetest4); readsheet.addCell(labetest5); readsheet.addCell(labetest6); } wbook.write(); wbook.close(); } /**cOutputFile 创建输出Excel文件 cOutputFile,tradeType为文件名称前缀,返回结果:文件路径,作为wOutputFile写入结果文件的入参 * @throws IOException * @throws WriteException */ public String cOutputFile(String tradeType) throws IOException, WriteException{ String temp_str = ""; Date dt = new Date(); SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss"); temp_str = sdf.format(dt); //获取时间戳 String filepath = "D:\\\\"+tradeType+"_output_" + "_" + temp_str + ".xls"; File output = new File(filepath); if(!output.isFile()){ //文件不存在,创建新文件 output.createNewFile(); //写文件 WritableWorkbook writeBook = Workbook.createWorkbook(output); WritableSheet sheet = writeBook.createSheet("输出结果", 0); //命名sheet WritableFont headfont = new WritableFont(WritableFont.createFont("宋体"),11,WritableFont.BOLD);//设置首行字体为宋体,11号,加粗 WritableCellFormat headwcf = new WritableCellFormat(headfont); headwcf.setBackground(Colour.GRAY_25); sheet.setColumnView(0, 11); //设置列宽 sheet.setColumnView(1, 20); sheet.setColumnView(2, 40); sheet.setColumnView(3, 10); sheet.setColumnView(4, 10); sheet.setColumnView(5, 10); headwcf.setAlignment(Alignment.CENTRE); //文字居中 headwcf.setVerticalAlignment(VerticalAlignment.CENTRE); Label labe00 = new Label(0,0,"用例编号",headwcf); //写入内容:Label(列号,行号,内容) Label labe10 = new Label(1,0,"用例标题",headwcf); Label labe20 = new Label(2,0,"测试数据",headwcf); Label labe30 = new Label(3,0,"预期结果",headwcf); Label labe40 = new Label(4,0,"实际结果",headwcf); Label labe50 = new Label(5,0,"执行结果",headwcf); sheet.addCell(labe00); sheet.addCell(labe10); sheet.addCell(labe20); sheet.addCell(labe30); sheet.addCell(labe40); sheet.addCell(labe50); writeBook.write(); writeBook.close(); } return filepath; }
}

导出jar包,将CWOutputFile.jar包置于jmeter安装目录下的lib\ext目录下

性能测试教程[7] jmeter接口自动化回归测试

性能测试教程[7] jmeter接口自动化回归测试

性能测试教程[7] jmeter接口自动化回归测试

性能测试教程[7] jmeter接口自动化回归测试


第三步

准备测试数据和测试案例

性能测试教程[7] jmeter接口自动化回归测试性能测试教程[7] jmeter接口自动化回归测试

 

第四步

编写测试脚本

性能测试教程[7] jmeter接口自动化回归测试

性能测试教程[7] jmeter接口自动化回归测试

性能测试教程[7] jmeter接口自动化回归测试

性能测试教程[7] jmeter接口自动化回归测试

性能测试教程[7] jmeter接口自动化回归测试

性能测试教程[7] jmeter接口自动化回归测试

性能测试教程[7] jmeter接口自动化回归测试

性能测试教程[7] jmeter接口自动化回归测试

 

第五步

执行脚本

性能测试教程[7] jmeter接口自动化回归测试性能测试教程[7] jmeter接口自动化回归测试

性能测试教程[7] jmeter接口自动化回归测试

如后续需要自动化定期回归测试,可以设置定时任务运行测试脚本,运行后检查一下excel的执行结果即可。

✩ 本文为古树屋科技频道原创,未经授权不得转载。


性能测试教程[7] jmeter接口自动化回归测试    推    广     性能测试教程[7] jmeter接口自动化回归测试

Bash shell教程合集





  1. 查询系统shell版本

  2. 命令行提示符

  3. 进入与退出bash

  4. 查看Bash版本

  5. echo命令

  6. 命令格式

  7. 空格与分号

  8. 命令的组合符&&和||

  9. type命令

  10. 快捷键


   ps :Bash shell教程合集获取请点击原文链接

性能测试教程合集





  1. Loadrunner安装

  2. nmon安装

  3. nmon analyser

  4. Windows性能监视器指标详解

  5. 记一次核心系统内部户并发开户的测试

  6. 使用jmeter造数(oracle篇)

  7. jmeter接口自动化回归测试


   To be continued ......