代码拉取完成,页面将自动刷新
AutoTestAttribute注解的不同等级的接口的定时压测报告,主要解决不同级别的常用接口的性能报告,方便开发人员及时优化。
公共函数库案例 My开头的为自定义的公共函数。
/*根据动态传入的level参数执行任务*/
var level=MyApiPsParams('level','核心');/*公共库函数执行,动态参数*/
var env=MyApiPsParams('env','test');
var date = MyApiPsParams('date',api.nowFormat("yyyy_MM_dd"));
api.log(["level",level]);
/*通过sql流处理分批获取样本数据,然后写入到本地样本(sample)文件中*/
var sql="select * from auto_tb_sample_"+date+" where attribute->'$.env'='"+env+"' and attribute->'$.apiType'='查询' and attribute->'$.test'='需要' "+
"and (attribute->'$.level'='"+level+"') and operator_type='仅查询' order by id desc limit 1000";
api.log(["查询条件",sql]);
api.streamSql2(sql,[],function (dataMap){
dataMap["url"]=MyReplaceUrl(dataMap);/*公共库函数执行*/
api.writeSample(dataMap);
})
var taskid=36;/*此为任务id*/
var env="pre";
var date = MyDateFormat(MyAddDays(new Date(),-1));/*前一天的样本数据*/
var levels = ["核心","主要","普通","报表"];
for(var i=0;i<levels.length;i++){
var level=levels[i];
if(api.isTaskExist(taskid)&&!api.isTaskRunning(taskid))
{
var info="任务:"+taskid+"level:"+level;
api.openTask2(taskid,{"level":level,"env":env,"date":date});/*传参方式开启任务*/
api.log(info+"已启动");
/*等待当前压测结束*/
while(api.isTaskRunning(taskid)){
api.sleep(5000);
}
}
}
by 车江毅
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。