自动化运行JMeter下的所有脚本
自动化计算jmeter下的所有脚本
package com.utils;import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;public class FIleNumber {public static List fileNumber() {//创建文件目录File file = new File("./scprit");List list = new ArrayList();//调用方法打印所有的Java文件名printFileName(file, list);return list;}//定义方法打印给定目录下的所有的Java文件,参数为文件的目录,返回值为空public static void printFileName(File file, List list) {if (file.isDirectory() && file.exists()) {//参数file是目录并且存在//生成File数组File[] fileList = file.listFiles();//遍历集合for (File f : fileList) {if (f.isDirectory()) {//次元素是目录printFileName(f, list);//递归调用} else {if (f.getName().endsWith(".jmx")) {//如果是以.jmx结尾
// System.out.println(f.getName());//打印该文件的名字StringBuffer a = new StringBuffer(f.getName());a.delete(a.length() - 4, a.length());list.add(a);}}}} else {System.out.println("未找到scprit文件夹");}}// 删除文件夹,和文件夹中的所有文件public static void deleteFolder(File folder) throws IOException, InterruptedException {File[] files = folder.listFiles();if (files != null) {for (File f : files) {if (f.isDirectory()) {deleteFolder(f);} else {f.delete();}}}folder.delete();}}
自动化启动JMeter进行运行脚本
package com.utils;import java.io.*;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;public class Command {public static void exeCmd(String commandStr) throws IOException {System.out.println("JMeter开始执行脚本:");System.out.println(commandStr);BufferedReader br = null;try {Process p = Runtime.getRuntime().exec(commandStr);br = new BufferedReader(new InputStreamReader(p.getInputStream()));String line = null;StringBuilder sb = new StringBuilder();while ((line = br.readLine()) != null) {sb.append(line + "\n");}System.out.println(sb.toString());} catch (Exception e) {e.printStackTrace();}finally{if (br != null){try {br.close();} catch (Exception e) {e.printStackTrace();}}}}public static void main(String[] args) throws IOException, InterruptedException {File f1 = new File("./jtl");if (f1.exists()) {FIleNumber.deleteFolder(f1);f1.mkdirs();} else {f1.mkdirs();}File file = new File("./report");if (file.exists()) {FIleNumber.deleteFolder(file);file.mkdirs();} else {file.mkdirs();}long startTime = System.currentTimeMillis();List list = FIleNumber.fileNumber();String jmx = null;Date date = new Date();SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");System.out.println("--------------------------------------------------------");System.out.println("JMeter开始运行时间是:" + simpleDateFormat.format(date));System.out.println(" ");System.out.println("JMeter本次一共需要执行" + list.size() + "个脚本:");for (int i = 0; i < list.size(); i++) {jmx = list.get(i).toString();for (int j = 1; j < 5; j++) {}
// jmeter -JthreadCount=2 -Jcycle=200 jmeter执行的线程数 ,jmeter执行的循环数String commandStr = "jmeter.bat -n -t ./scprit/" +jmx+".jmx"+ " -l ./jtl/" +jmx+ ".jtl"+ " -e -o ./report/" + jmx;System.out.println("第" + (i + 1) + "次开始运行:");Command.exeCmd(commandStr);long wait = 120000;System.out.println("休息" + (wait / 1000) + "秒!");Thread.sleep(wait);}Date date1 = new Date();SimpleDateFormat simpleDateFormat1 = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");System.out.println("JMeter运行结束时间是:" + simpleDateFormat1.format(date1));long endTime = System.currentTimeMillis();System.out.println("一共运行了" + (endTime - startTime) / 1000 + "s");}
}
自动化运行JMeter下的所有脚本相关推荐
- installshield 脚本 在卸载过程执行_Linux下运行Jmeter脚本
1.为什么在linux下运行jmeter脚本? 答案:当然在windows下运行jmeter脚本也是可以的,但是因为linux系统的性能是优于Windows系统,我们在加载并发用户数时,是利用系统的线 ...
- linux安装运行jmeter,Linux下安装运行Jmeter程序
Jmeter在linux系统中运行需要安装jdk和Jmeter两个软件: 1.安装JDK 先检查系统是否有安装jdk,在linux中执行如下命令:java -version 如果返回版本信息,说明系 ...
- jmeter怎么在服务器上运行,Jmeter必知必会(十四)-在服务器上运行脚本
概述: 我们平时运行jmeter都是在windows上.但是如果做持续集成或者分布式,jmeter就必须在服务器上跑了 操作流程: 一:在Linux服务器先安装jdk 1:先下载jdk-8u74-li ...
- linux 定时运行脚本_教你如何在Linux下让Python脚本自启动和定时启动
本文简单介绍如何在Linux下设置Python脚本自启动和定时启动. 一.Python开机自动运行 假如Python自启动脚本为auto.py.那么用root权限编辑以下文件: sudo vim /e ...
- 让SH/BAT脚本定位到运行目录的相对位置,实现其脚本可在任意运行目录下被正确执行...
让SH/BAT脚本定位到运行目录的相对位置 实现其脚本可在任意运行目录下被正确执行 在Linux下的bash脚本 #!/bin/bash cd `dirname $0` 在Windows下的BAT脚本 ...
- jmeter html测试脚本,Jenkins如何实现自动运行jmeter脚本并出具报告
背景:实现jmeter每30分钟执行一次,运行系统中所有接口或者性能脚本 或者后续更可以由系统部署来触发建构执行 1.配置jmeter测试环境,注意修改Jmeter的bin目录下jmeter.prop ...
- unity3d 非运行模式下执行脚本
using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; ...
- linux下bash脚本常用的十个技巧:显示执行脚本花费的时间,在脚本退出时杀死后台运行的程序,在脚本退出时跳出循环,读取命令行参数来决定循环次数
文章目录 1.显示执行脚本花费的时间 2.在脚本退出时杀死后台运行的程序 3.在脚本退出时跳出循环 4.读取命令行参数来决定循环次数 1.显示执行脚本花费的时间 网址:bash - How to ge ...
- 命令行运行jmeter脚本
1.通过gui界面的jmeter创建一份脚本: 2.打开cmd,切换到jmeter程序的Bin目录: 3.执行jmeter.bat -n -t bookair_0613.jmx -l log_3.jt ...
最新文章
- 电脑重装系统文件会丢失吗_电脑黑屏,利用重装系统软件,把黑屏电脑里的文件拷出来...
- FlexRay车载网络标准
- 【Python】强烈建议你学这 3 个 Python AutoEDA 工具包!
- Kibana源码分析--Hapijs路由设置理解笔记
- 关于vue父子组件之间事件触发及数据传递问题
- JAVA牛客专项练习2020.12.31
- mysql 索引能不能太多,mysql索引太多了?
- 多线程编译linux,linux下多线程下载工具axel的编译安装
- 从java库学设计模式_java I/O库的设计模式
- 决定论的科学家认为,自我是大脑的随附现象,自由意志是一种幻觉
- Win10专业版开机自动拨号
- 杭州电子科技大学ACM-1094
- 五万字 | Hive知识体系保姆级教程
- Win11图标变成白色文件如何解决?
- TWINSNOW - Snowflakes 哈希
- Win8.1/Win8/Win7桌面图标无法拖动怎么办
- Seq2seq - End2end
- postgresql修改密码
- 解决MAC下MySQL忘记初始密码的方法
- 申请coursera助学金模板转载