fix(UI自动化): 修复UI报告流程控制中步骤顺序错误
--bug=1014053 --user=刘瑶 【UI测试】UI报告,循环里套循环的时候,报告显示顺序不是循环的顺序 https://www.tapd.cn/55049933/s/1183488
This commit is contained in:
parent
a3276c7f18
commit
0fa1dd37ea
|
@ -412,8 +412,12 @@ export default {
|
||||||
if(data.reportType === "UI_INDEPENDENT"){
|
if(data.reportType === "UI_INDEPENDENT"){
|
||||||
this.tempResult = report.steps;
|
this.tempResult = report.steps;
|
||||||
//校对执行次序
|
//校对执行次序
|
||||||
|
try{
|
||||||
this.checkOrder(this.tempResult);
|
this.checkOrder(this.tempResult);
|
||||||
this.fullTreeNodes = this.tempResult;
|
this.fullTreeNodes = this.tempResult;
|
||||||
|
}catch(e){
|
||||||
|
this.fullTreeNodes = report.steps;
|
||||||
|
}
|
||||||
}else{
|
}else{
|
||||||
this.fullTreeNodes = report.steps;
|
this.fullTreeNodes = report.steps;
|
||||||
}
|
}
|
||||||
|
@ -437,19 +441,54 @@ export default {
|
||||||
if(!origin){
|
if(!origin){
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if(origin.children && Array.isArray(origin.children)){
|
if(Array.isArray(origin)){
|
||||||
origin.children.sort((m,n)=>{
|
this.sortChildren(origin);
|
||||||
let mTime = m.value ? m.value.startTime ? m.value.startTime : 0 : 0;
|
origin.forEach(v => {
|
||||||
let nTime = n.value ? n.value.startTime ? n.value.startTime : 0 : 0;
|
|
||||||
return mTime <= nTime;
|
|
||||||
})
|
|
||||||
origin.children.forEach(v => {
|
|
||||||
if(v.children){
|
if(v.children){
|
||||||
this.checkOrder(v.children)
|
this.checkOrder(v.children)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
sortChildren(source){
|
||||||
|
if(!source){
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
source.forEach( item =>{
|
||||||
|
let children = item.children;
|
||||||
|
if(children && children.length > 0){
|
||||||
|
let tempArr = new Array(children.length);
|
||||||
|
let tempMap = new Map();
|
||||||
|
for(let i = 0; i < children.length; i++){
|
||||||
|
if(!children[i].value || !children[i].value.startTime || children[i].value.startTime === 0){
|
||||||
|
//若没有value或未执行的,则step留在当前位置
|
||||||
|
tempArr[i] = children[i];
|
||||||
|
//进行标识
|
||||||
|
tempMap.set(children[i].stepId, children[i])
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//过滤出还没有指定好位置的step
|
||||||
|
let arr = children.filter(m => {
|
||||||
|
return !tempMap.get(m.stepId);
|
||||||
|
}).sort((m, n) => {
|
||||||
|
//按时间排序
|
||||||
|
return m.value.startTime - n.value.startTime;
|
||||||
|
});
|
||||||
|
//找出arr(已经有序,从头取即可)中时间最小的插入 tempArr 可用位置
|
||||||
|
for(let j = 0, i = 0; j < tempArr.length; j++){
|
||||||
|
if(!tempArr[j]){
|
||||||
|
//占位
|
||||||
|
tempArr[j] = arr[i];
|
||||||
|
i++;
|
||||||
|
}
|
||||||
|
//重新排序
|
||||||
|
tempArr[j].index = j + 1;
|
||||||
|
}
|
||||||
|
//赋值
|
||||||
|
item.children = tempArr;
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
buildReport() {
|
buildReport() {
|
||||||
if (this.report) {
|
if (this.report) {
|
||||||
if (this.isNotRunning) {
|
if (this.isNotRunning) {
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
Subproject commit 9a499be8ea905306f4aae866ee94a05d9f150293
|
Subproject commit 8e321b56d9cd47bf37db047b53cc9a76411a84af
|
Loading…
Reference in New Issue