Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
kt-keystone
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
Matrix
kt-keystone
Commits
da160772
提交
da160772
authored
3月 24, 2022
作者:
mry
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix(web): 修改了报告样式
上级
43e98fb2
隐藏空白字符变更
内嵌
并排
正在显示
4 个修改的文件
包含
88 行增加
和
27 行删除
+88
-27
DataBeans.java
...src/main/java/org/matrix/testNg/web/entity/DataBeans.java
+4
-1
ReporterData.java
.../main/java/org/matrix/testNg/web/report/ReporterData.java
+27
-1
ReporterDataJob.java
...in/java/org/matrix/testNg/web/report/ReporterDataJob.java
+24
-0
overview.ftl
kt-base/src/main/resources/templates/overview.ftl
+33
-25
没有找到文件。
kt-base/src/main/java/org/matrix/testNg/web/entity/DataBeans.java
浏览文件 @
da160772
...
...
@@ -50,5 +50,8 @@ public class DataBeans {
*/
private
CheckPointResult
resultMessage
;
/**
* 结果信息转JSON
*/
private
String
str
;
}
kt-base/src/main/java/org/matrix/testNg/web/report/ReporterData.java
浏览文件 @
da160772
package
org
.
matrix
.
testNg
.
web
.
report
;
import
com.fasterxml.jackson.core.JsonProcessingException
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
org.matrix.actuators.checkpoint.CheckPointResult
;
import
org.matrix.actuators.checkpoint.CheckPointResultDetail
;
import
org.matrix.exception.GlobalException
;
import
org.matrix.testNg.web.entity.DataBean
;
import
org.matrix.testNg.web.entity.DataBeans
;
import
org.matrix.testNg.web.entity.DataMove
;
...
...
@@ -34,7 +39,27 @@ public class ReporterData {
* @return 报告中细节部分的信息
*/
public
List
<
DataBeans
>
testDataBeans
()
{
return
ReporterUtils
.
map
.
get
(
"dataBeansVo"
).
getDataBeanLists
();
List
<
DataBeans
>
dataBeansList
=
ReporterUtils
.
map
.
get
(
"dataBeansVo"
).
getDataBeanLists
();
ObjectMapper
objectMapper
=
new
ObjectMapper
();
for
(
DataBeans
dataBeans
:
dataBeansList
)
{
try
{
CheckPointResult
resultMessage
=
dataBeans
.
getResultMessage
();
List
<
CheckPointResultDetail
>
checkPointResultDetails
=
resultMessage
.
getCheckPointResultDetails
();
for
(
CheckPointResultDetail
checkPointResultDetail
:
checkPointResultDetails
)
{
if
(
checkPointResultDetail
.
getMatchExpression
()
==
null
){
checkPointResultDetail
.
setMatchExpression
(
""
);
}
if
(
checkPointResultDetail
.
getParseExpression
()
==
null
){
checkPointResultDetail
.
setParseExpression
(
""
);
}
}
dataBeans
.
setStr
(
objectMapper
.
writeValueAsString
(
resultMessage
));
}
catch
(
JsonProcessingException
e
)
{
e
.
printStackTrace
();
throw
new
GlobalException
(
"报告中结果信息,序列化失败"
);
}
}
return
dataBeansList
;
}
}
\ No newline at end of file
kt-base/src/main/java/org/matrix/testNg/web/report/ReporterDataJob.java
浏览文件 @
da160772
package
org
.
matrix
.
testNg
.
web
.
report
;
import
com.fasterxml.jackson.core.JsonProcessingException
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
org.matrix.actuators.checkpoint.CheckPointResult
;
import
org.matrix.actuators.checkpoint.CheckPointResultDetail
;
import
org.matrix.exception.GlobalException
;
import
org.matrix.testNg.web.entity.DataBean
;
import
org.matrix.testNg.web.entity.DataBeans
;
import
org.matrix.testNg.web.entity.DataMove
;
...
...
@@ -43,8 +48,27 @@ public class ReporterDataJob {
public
List
<
DataBeans
>
testDataBeans
()
{
List
<
DataBeans
>
dataBeansList
=
new
ArrayList
<>();
List
<
DataBeansMoveVo
>
dataBeansMoveVos
=
ReporterUtils
.
jobMap
.
get
(
"job"
).
getDataBeansMove
();
ObjectMapper
objectMapper
=
new
ObjectMapper
();
for
(
DataBeansMoveVo
dataBeansMoveVo
:
dataBeansMoveVos
)
{
dataBeansList
=
dataBeansMoveVo
.
getDataBeansList
();
for
(
DataBeans
dataBeans
:
dataBeansList
)
{
try
{
CheckPointResult
resultMessage
=
dataBeans
.
getResultMessage
();
List
<
CheckPointResultDetail
>
checkPointResultDetails
=
resultMessage
.
getCheckPointResultDetails
();
for
(
CheckPointResultDetail
checkPointResultDetail
:
checkPointResultDetails
)
{
if
(
checkPointResultDetail
.
getMatchExpression
()
==
null
){
checkPointResultDetail
.
setMatchExpression
(
""
);
}
if
(
checkPointResultDetail
.
getParseExpression
()
==
null
){
checkPointResultDetail
.
setParseExpression
(
""
);
}
}
dataBeans
.
setStr
(
objectMapper
.
writeValueAsString
(
resultMessage
));
}
catch
(
JsonProcessingException
e
)
{
e
.
printStackTrace
();
throw
new
GlobalException
(
"报告中结果信息,序列化失败"
);
}
}
}
return
dataBeansList
;
}
...
...
kt-base/src/main/resources/templates/overview.ftl
浏览文件 @
da160772
...
...
@@ -72,7 +72,7 @@
<td
style=
"color: red"
>
${failCase.result?c}
</td>
<td>
${failCase.duration!}
</td>
<td
class=
"clickClass"
data-message=
'${failCase.
resultMessage
}'
>
data-message=
'${failCase.
str!
}'
>
查看结果
</td>
</tr>
...
...
@@ -94,7 +94,7 @@
<td
style=
"color: green"
>
${passCase.result?c}
</td>
<td>
${passCase.duration!}
</td>
<td
class=
"clickClass"
data-message=
'${passCase.
resultMessage
}'
>
data-message=
'${passCase.
str!
}'
>
查看结果
</td>
</tr>
...
...
@@ -127,15 +127,7 @@
<script
src=
"./res/js/bootstrap.js"
></script>
<script>
function
handleData
(
data
)
{
let
a
=
data
let
b
=
a
.
split
(
'='
).
splice
(
1
,
a
.
split
(
'='
).
length
-
2
)
let
c
=
b
.
join
(
'='
).
split
(
'('
)[
1
].
split
(
')'
)[
0
]
let
d
=
c
.
split
(
','
)
let
e
=
[]
d
.
map
(
v
=>
{
e
.
push
({
key
:
v
.
split
(
'='
)[
0
]
+
":"
,
value
:
v
.
split
(
'='
)[
1
]})
})
return
e
return
data
}
$
(
".clickClass"
).
each
((
i
,
v
)
=>
{
...
...
@@ -144,24 +136,40 @@
alert
(
'该条测试数据执行失败'
)
return
}
let
data
=
handleData
(
v
.
getAttribute
(
'data-message'
))
let
data
=
JSON
.
parse
(
v
.
getAttribute
(
'data-message'
)).
checkPointResultDetails
$
(
'#myModal'
).
modal
()
if
(
data
)
{
let
oDiv
=
document
.
getElementById
(
'grp'
)
$
(
"#grp"
).
empty
();
data
.
map
(
v
=>
{
let
div1
=
document
.
createElement
(
'div'
)
let
lab1
=
document
.
createElement
(
'label'
)
let
lab2
=
document
.
createElement
(
'label'
)
div1
.
className
=
'form-group'
lab1
.
className
=
'col-sm-4 control-label w20'
lab2
.
className
=
'col-sm-6 control-label txtl'
lab1
.
innerText
=
v
.
key
lab2
.
innerText
=
v
.
value
div1
.
appendChild
(
lab1
)
div1
.
appendChild
(
lab2
)
oDiv
.
appendChild
(
div1
)
})
for
(
let
item
of
data
)
{
let
hr
=
document
.
createElement
(
'hr'
)
oDiv
.
appendChild
(
hr
)
for
(
let
j
in
item
)
{
let
content
=
null
if
(
j
==
'isSuccess'
)
{
content
=
'是否成功:'
}
else
if
(
j
==
'type'
)
{
content
=
'类型:'
}
else
if
(
j
==
'matchExpression'
)
{
content
=
'匹配前表达式:'
}
else
if
(
j
==
'parseExpression'
)
{
content
=
'匹配后表达式:'
}
else
if
(
j
==
'message'
)
{
content
=
'信息:'
}
let
div1
=
document
.
createElement
(
'div'
)
let
lab1
=
document
.
createElement
(
'label'
)
let
lab2
=
document
.
createElement
(
'label'
)
div1
.
className
=
'form-group'
lab1
.
className
=
'col-sm-4 control-label w20'
lab2
.
className
=
'col-sm-6 control-label txtl'
lab1
.
innerText
=
content
lab2
.
innerText
=
item
[
j
]
div1
.
appendChild
(
lab1
)
div1
.
appendChild
(
lab2
)
oDiv
.
appendChild
(
div1
)
}
}
}
}
})
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论