在接口测试过程中,循环逻辑控制器+计数器组合时,发现一个问题:
就是如果多次循环时,希望每次循环都从0或1开始时,计数器就不太好用了,因为他本身属于配置元件,脚本运行前会先进行预加载,就导致多次循环时,计数器的值是递增或递减的;
下面就是通过JSR223 预处理程序来实现--每次循环都从1开始:
String img_init = vars.get("img_init");//img_init为自定义变量,默认为0
System.out.println("初始值:"+img_init);
int cc_int = Integer.parseInt(img_init);//转为int
cc_int = cc_int +1; //递增1
String ccaaint = cc_int + ""; //转换字符串
vars.put("num_fileupload_index",ccaaint); //num_fileupload_index 下面接口需要引用的变量
vars.put("img_init",ccaaint);//img_init等价于num_fileupload_index
String aa = vars.get("img_init");
String bb =vars.get("num_fileupload");//得到本次需要循环的最大次数
System.out.println("img_init--------:"+aa);
System.out.println("num_fileupload--------:"+bb);
if (aa.equals(bb)) {//如果等于了当前循环最大次数,则把img_init置为0
vars.put("img_init","0");
System.out.println("cc--------:"+vars.get("img_init"));
}