代码拉取完成,页面将自动刷新
同步操作将从 车江毅/lmc-autotest 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
AutoTestAttribute注解的核心和主要接口的定时压测报告,主要解决自动化生成核心和主要接口的性能报告,方便开发人员及时优化。
公共函数库案例 My开头的为自定义的公共函数。
/*根据动态传入的url参数执行任务*/
var url = MyApiPsParams('url','commodity/queryShowDetail');/*默认测试url*/
var env= MyApiPsParams('env','test');
var author= MyApiPsParams('author','无');
var date = MyApiPsParams('date',api.nowFormat("yyyy_MM_dd"));
api.log(["url",url,"date",date]);
/*通过sql流处理分批获取样本数据,然后写入到本地样本(sample)文件中*/
api.streamSql2("select * from auto_tb_sample_"+date+" where url like '%"+ url+"%' and attribute->'$.env'='"+env+"' order by id desc limit 150",[],function (dataMap){
dataMap["url"]=MyReplaceUrl(dataMap);/*公共库函数执行*/
api.writeSample(dataMap);
})
/*查找作者*/
function GetAuthor(urlAuthor,url){
for(var i=0;i<urlAuthor.length;i++){
if(urlAuthor[i]["url"]==url){
return urlAuthor[i]["author"];
}
}
return "";
}
var taskid=35;/*此为任务id*/
var env = "pre";/*环境变量*/
var date = MyDateFormat(MyAddDays(new Date(),-1));/*前一天的样本数据*/
var sql = "select url,min(attribute->>'$.author') as author from auto_tb_sample_"+date+" where attribute->'$.env'='"+env+"' and attribute->'$.apiType'='查询' and attribute->'$.test'='需要' and (attribute->'$.level'='核心' or attribute->'$.level'='主要') and operator_type='仅查询' group by url";
api.log(["查询",sql]);
var dataMap = api.querySql(sql,[]);
var urls =[];var urlAuthors=[];
for(var i=0;i<dataMap.length;i++){
var url =MyUrlRelativePath(dataMap[i]["url"]);
var author=dataMap[i]["author"];
urlAuthors.push({"url":url,"author":author});
urls.push(url);
}
api.log(["需要压测的接口信息",urlAuthors]);
urls = MyDistinctUrlPath(urls);
api.log(["需要压测的接口有",urls]);
for(var i=0;i<urls.length;i++){
var url =urls[i];
if(api.isTaskExist(taskid)&&!api.isTaskRunning(taskid))
{
var author=GetAuthor(urlAuthors,url);
var info="任务:"+taskid+",url:"+url+",author:"+author;
api.openTask2(taskid,{"url":url,"env":env,"author":author,"date":date});/*传参方式开启任务*/
api.log(info+"已启动");
/*等待当前压测结束*/
while(api.isTaskRunning(taskid)){
api.sleep(5000);
}
}
}
if(urls.length==0){
api.error("无法获取到url信息");
}
by 车江毅
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。