自动化计算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下的所有脚本相关推荐

  1. installshield 脚本 在卸载过程执行_Linux下运行Jmeter脚本

    1.为什么在linux下运行jmeter脚本? 答案:当然在windows下运行jmeter脚本也是可以的,但是因为linux系统的性能是优于Windows系统,我们在加载并发用户数时,是利用系统的线 ...

  2. linux安装运行jmeter,Linux下安装运行Jmeter程序

    Jmeter在linux系统中运行需要安装jdk和Jmeter两个软件: 1.安装JDK 先检查系统是否有安装jdk,在linux中执行如下命令:java -version  如果返回版本信息,说明系 ...

  3. jmeter怎么在服务器上运行,Jmeter必知必会(十四)-在服务器上运行脚本

    概述: 我们平时运行jmeter都是在windows上.但是如果做持续集成或者分布式,jmeter就必须在服务器上跑了 操作流程: 一:在Linux服务器先安装jdk 1:先下载jdk-8u74-li ...

  4. linux 定时运行脚本_教你如何在Linux下让Python脚本自启动和定时启动

    本文简单介绍如何在Linux下设置Python脚本自启动和定时启动. 一.Python开机自动运行 假如Python自启动脚本为auto.py.那么用root权限编辑以下文件: sudo vim /e ...

  5. 让SH/BAT脚本定位到运行目录的相对位置,实现其脚本可在任意运行目录下被正确执行...

    让SH/BAT脚本定位到运行目录的相对位置 实现其脚本可在任意运行目录下被正确执行 在Linux下的bash脚本 #!/bin/bash cd `dirname $0` 在Windows下的BAT脚本 ...

  6. jmeter html测试脚本,Jenkins如何实现自动运行jmeter脚本并出具报告

    背景:实现jmeter每30分钟执行一次,运行系统中所有接口或者性能脚本 或者后续更可以由系统部署来触发建构执行 1.配置jmeter测试环境,注意修改Jmeter的bin目录下jmeter.prop ...

  7. unity3d 非运行模式下执行脚本

    using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; ...

  8. linux下bash脚本常用的十个技巧:显示执行脚本花费的时间,在脚本退出时杀死后台运行的程序,在脚本退出时跳出循环,读取命令行参数来决定循环次数

    文章目录 1.显示执行脚本花费的时间 2.在脚本退出时杀死后台运行的程序 3.在脚本退出时跳出循环 4.读取命令行参数来决定循环次数 1.显示执行脚本花费的时间 网址:bash - How to ge ...

  9. 命令行运行jmeter脚本

    1.通过gui界面的jmeter创建一份脚本: 2.打开cmd,切换到jmeter程序的Bin目录: 3.执行jmeter.bat -n -t bookair_0613.jmx -l log_3.jt ...

最新文章

  1. 电脑重装系统文件会丢失吗_电脑黑屏,利用重装系统软件,把黑屏电脑里的文件拷出来...
  2. FlexRay车载网络标准
  3. 【Python】强烈建议你学这 3 个 Python AutoEDA 工具包!
  4. Kibana源码分析--Hapijs路由设置理解笔记
  5. 关于vue父子组件之间事件触发及数据传递问题
  6. JAVA牛客专项练习2020.12.31
  7. mysql 索引能不能太多,mysql索引太多了?
  8. 多线程编译linux,linux下多线程下载工具axel的编译安装
  9. 从java库学设计模式_java I/O库的设计模式
  10. 决定论的科学家认为,自我是大脑的随附现象,自由意志是一种幻觉
  11. Win10专业版开机自动拨号
  12. 杭州电子科技大学ACM-1094
  13. 五万字 | Hive知识体系保姆级教程
  14. Win11图标变成白色文件如何解决?
  15. TWINSNOW - Snowflakes 哈希
  16. Win8.1/Win8/Win7桌面图标无法拖动怎么办
  17. Seq2seq - End2end
  18. postgresql修改密码
  19. 解决MAC下MySQL忘记初始密码的方法
  20. 申请coursera助学金模板转载

热门文章

  1. 我今年大一,自学编程可行吗?
  2. AD10 如何在规则中设置过孔铺铜直连方式
  3. C语言笔记-连续赋值
  4. 手动解决浏览器主页被劫持的问题
  5. 【开源】基于Java+SpringBoot+Vue+ElementUI的超市管理系统
  6. 为什么程序员的工资比其他行业高这么多?
  7. CMMI 级别中和BUG率
  8. css预处理器Less
  9. 20~50K|智驾科技SLAM算法总监、深度学习、感知定位、高精地图等多个岗位
  10. el-date-picker限制只能选当天,当天之前,当天之后