Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
A
auto-test
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
黄承天
auto-test
Commits
7f970097
提交
7f970097
authored
3月 30, 2020
作者:
孙洁清
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
路由规则
上级
dba76e58
隐藏空白字符变更
内嵌
并排
正在显示
2 个修改的文件
包含
80 行增加
和
72 行删除
+80
-72
TestTask.java
src/main/java/com/zjty/autotest/mq/TestTask.java
+76
-69
application.properties
src/main/resources/application.properties
+4
-3
没有找到文件。
src/main/java/com/zjty/autotest/mq/TestTask.java
浏览文件 @
7f970097
...
...
@@ -38,7 +38,8 @@ public class TestTask {
private
TestReportService
testReportService
;
@Autowired
private
SeleniumExecutor
seleniumExecutor
;
private
static
Object
o
=
new
Object
();
private
static
Object
o
=
new
Object
();
@Scheduled
(
cron
=
"0/5 * * * * ?"
)
@Async
(
"asyncServiceExecutor"
)
public
void
getMessage
()
{
...
...
@@ -58,16 +59,16 @@ public class TestTask {
if
(
testChannel
!=
null
)
{
log
.
info
(
"testChannel不为空:{}"
,
testChannel
);
try
{
Project
project
=
new
Project
();
Project
project
=
new
Project
();
project
.
setBrowser
(
testChannel
.
getBrowser
().
toLowerCase
());
project
.
setName
(
testChannel
.
getName
());
project
.
setUrl
(
testChannel
.
getUrl
());
List
<
RuleSet
>
ruleSets
=
testChannel
.
getRuleSets
();
List
<
Input
>
inputs
=
new
ArrayList
<>();
List
<
Input
>
inputs
=
new
ArrayList
<>();
project
.
setInputs
(
null
);
if
(
ruleSets
!=
null
)
{
if
(
ruleSets
!=
null
)
{
for
(
RuleSet
ruleSet
:
ruleSets
)
{
Input
input
=
new
Input
();
Input
input
=
new
Input
();
input
.
setKey
(
ruleSet
.
getDes
());
input
.
setAttrName
(
ruleSet
.
getCommand
());
input
.
setAttrValue
(
ruleSet
.
getTarget
());
...
...
@@ -82,8 +83,8 @@ public class TestTask {
Report
report
=
seleniumExecutor
.
execute
(
project
);
System
.
out
.
println
(
report
);
List
<
Measure
>
measures
=
report
.
getMeasures
();
if
(
measures
!=
null
&&
measures
.
size
()>
0
)
{
long
count
=
measures
.
stream
().
filter
(
m
->
m
.
getSuccess
()
!=
true
).
count
();
if
(
measures
!=
null
&&
measures
.
size
()
>
0
)
{
long
count
=
measures
.
stream
().
filter
(
m
->
m
.
getSuccess
()
!=
true
).
count
();
System
.
out
.
println
(
report
);
EvaReport
evaReport
=
new
EvaReport
();
evaReport
.
setBrowser
(
report
.
getBrowser
());
...
...
@@ -117,11 +118,11 @@ public class TestTask {
pageContentTest
.
setResponseTime
(
measure
.
getResponseTime
());
pageContentTest
.
setScreenshot
(
measure
.
getScreenshot
());
pageContentTest
.
setSuccess
(
0
);
if
(
measure
.
getSuccess
())
{
if
(
measure
.
getSuccess
())
{
pageContentTest
.
setSuccess
(
1
);
}
List
<
ElementDetail
>
elementDetails
=
measure
.
getElementDetails
();
if
(
elementDetails
!=
null
)
{
if
(
elementDetails
!=
null
)
{
List
<
PageContent
>
contents
=
new
ArrayList
<>();
for
(
ElementDetail
elementDetail
:
elementDetails
)
{
PageContent
pageContent
=
new
PageContent
();
...
...
@@ -139,12 +140,12 @@ public class TestTask {
pageContents
.
add
(
pageContentTest
);
}
evaReport
.
setPageContents
(
pageContents
);
List
<
PageRoute
>
pageRoutes
=
new
ArrayList
<>();
List
<
PageRoute
>
pageRoutes
=
new
ArrayList
<>();
for
(
Measure
measure
:
measures
)
{
PageRoute
pageRoute
=
new
PageRoute
();
PageRoute
pageRoute
=
new
PageRoute
();
pageRoute
.
setPageName
(
measure
.
getUrl
());
pageRoute
.
setSuccess
(
0
);
if
(
measure
.
getSuccess
())
{
if
(
measure
.
getSuccess
())
{
pageRoute
.
setSuccess
(
1
);
}
pageRoute
.
setMessage
(
"无/有"
);
...
...
@@ -154,12 +155,17 @@ public class TestTask {
}
List
<
String
>
sourceUrls
=
getSourceUrls
(
testChannel
,
pageContents
);
List
<
PageRoute
>
allPageRoutes
=
getAllPageRoutes
(
pageRoutes
,
sourceUrls
);
List
<
PageRoute
>
collect
=
allPageRoutes
.
stream
().
distinct
().
collect
(
Collectors
.
toList
());
if
(
collect
!=
null
&&
collect
.
size
()>
0
){
evaReport
.
setPageRoutes
(
collect
);
}
else
{
evaReport
.
setPageRoutes
(
pageRoutes
);
if
(
allPageRoutes
!=
null
&&
allPageRoutes
.
size
()>
0
)
{
List
<
PageRoute
>
collect
=
allPageRoutes
.
stream
().
distinct
().
collect
(
Collectors
.
toList
());
if
(
collect
!=
null
&&
collect
.
size
()
>
0
)
{
evaReport
.
setPageRoutes
(
collect
);
}
else
{
evaReport
.
setPageRoutes
(
null
);
}
}
else
{
evaReport
.
setPageRoutes
(
null
);
}
System
.
out
.
println
(
"修改状态"
);
//改变报告状态
String
out
=
JSON
.
toJSONString
(
evaReport
);
...
...
@@ -170,17 +176,17 @@ public class TestTask {
testReport
.
setOutReport
(
out
);
testReportService
.
update
(
testReport
);
autoResultSetService
.
updateByid
(
id
,
1
);
WebSocketServer
.
sendInfo
(
"1,"
+
id
,
"sjq110"
);
autoResultSetService
.
updateByid
(
id
,
1
);
WebSocketServer
.
sendInfo
(
"1,"
+
id
,
"sjq110"
);
return
;
}
autoResultSetService
.
updateByid
(
id
,
2
);
WebSocketServer
.
sendInfo
(
"2,"
+
id
,
"sjq110"
);
autoResultSetService
.
updateByid
(
id
,
2
);
WebSocketServer
.
sendInfo
(
"2,"
+
id
,
"sjq110"
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
try
{
autoResultSetService
.
updateByid
(
id
,
2
);
WebSocketServer
.
sendInfo
(
"2,"
+
id
,
"sjq110"
);
autoResultSetService
.
updateByid
(
id
,
2
);
WebSocketServer
.
sendInfo
(
"2,"
+
id
,
"sjq110"
);
}
catch
(
IOException
e1
)
{
e1
.
printStackTrace
();
}
...
...
@@ -213,12 +219,12 @@ public class TestTask {
fileRoutes
=
"angular"
;
}
if
(
fileRoutes
!=
null
)
{
System
.
out
.
println
(
"源码类型:"
+
fileRoutes
);
System
.
out
.
println
(
"源码类型:"
+
fileRoutes
);
List
<
String
>
routerList
=
getRouterList
(
alls
,
fileRoutes
);
List
<
String
>
collect
=
routerList
.
stream
().
map
(
String:
:
toLowerCase
).
distinct
().
collect
(
Collectors
.
toList
());
System
.
out
.
println
(
"源代码中的路由地址:"
+
collect
.
toString
());
System
.
out
.
println
(
"源代码中的路由地址:"
+
collect
.
toString
());
FileHtmlUtil
.
clearAll
();
return
collect
;
return
collect
;
}
FileHtmlUtil
.
clearAll
();
}
...
...
@@ -226,66 +232,67 @@ public class TestTask {
}
private
List
<
String
>
getRouterList
(
Map
<
String
,
List
<
FileType
>>
alls
,
String
fileRoutes
)
{
String
pattern
=
"(<*\\/:*[a-zA-Z]+)+"
;
String
pattern
=
"(<*\\/:*[a-zA-Z]+)+"
;
List
<
String
>
allRouters
=
new
ArrayList
<>();
Set
<
String
>
all
=
alls
.
keySet
();
if
(
all
!=
null
)
{
if
(
all
!=
null
)
{
//所有的路由
if
(
fileRoutes
.
equals
(
"vue"
))
{
for
(
String
s1
:
all
)
{
List
<
FileType
>
fileBeans
=
alls
.
get
(
s1
);
if
(
fileRoutes
!=
null
)
{
if
(
s1
.
contains
(
"router"
))
{
for
(
FileType
fileBean
:
fileBeans
)
{
allRouters
.
addAll
(
FileHtmlUtil
.
readTxtFile
(
fileBean
.
getAddress
(),
pattern
));
}
}
else
{
if
(
"router"
.
equals
(
s1
))
{
List
<
FileType
>
fileBeans
=
alls
.
get
(
s1
);
if
(
fileRoutes
!=
null
)
{
for
(
FileType
fileBean
:
fileBeans
)
{
if
(
fileBean
.
getFileName
().
contains
(
"router"
)&&
fileBean
.
getSuffix
().
equals
(
"js"
))
{
if
(
fileBean
.
getFileName
().
equals
(
"index.js"
))
{
allRouters
.
addAll
(
FileHtmlUtil
.
readTxtFile
(
fileBean
.
getAddress
(),
pattern
));
}
}
}
}
}
}
else
if
(
fileRoutes
.
equals
(
"angular"
)
||
fileRoutes
.
equals
(
"react"
)
)
{
}
else
if
(
fileRoutes
.
equals
(
"angular"
))
{
for
(
String
s1
:
all
)
{
List
<
FileType
>
fileBeans
=
alls
.
get
(
s1
);
if
(
fileRoutes
!=
null
)
{
for
(
FileType
fileBean
:
fileBeans
)
{
if
(
fileBean
.
getSuffix
().
equals
(
"js"
))
{
allRouters
.
addAll
(
FileHtmlUtil
.
readTxtFile
(
fileBean
.
getAddress
(),
pattern
));
if
(
"app"
.
equals
(
s1
))
{
List
<
FileType
>
fileBeans
=
alls
.
get
(
s1
);
if
(
fileRoutes
!=
null
)
{
for
(
FileType
fileBean
:
fileBeans
)
{
if
(
fileBean
.
getFileName
().
equals
(
"app.module.ts"
))
{
allRouters
.
addAll
(
FileHtmlUtil
.
readTxtFile
(
fileBean
.
getAddress
(),
pattern
));
}
}
}
}
}
}
else
{
}
else
if
(
fileRoutes
.
equals
(
"react"
))
{
for
(
String
s1
:
all
)
{
List
<
FileType
>
fileBeans
=
alls
.
get
(
s1
);
if
(
fileRoutes
!=
null
)
{
for
(
FileType
fileBean
:
fileBeans
)
{
if
(
fileBean
.
getSuffix
().
equals
(
"jsp"
))
{
allRouters
.
addAll
(
FileHtmlUtil
.
readTxtFile
(
fileBean
.
getAddress
(),
pattern
));
List
<
FileType
>
fileBeans
=
alls
.
get
(
s1
);
if
(
fileRoutes
!=
null
)
{
for
(
FileType
fileBean
:
fileBeans
)
{
if
(
fileBean
.
getFileName
().
equals
(
"index.js"
))
{
allRouters
.
addAll
(
FileHtmlUtil
.
readTxtFile
(
fileBean
.
getAddress
(),
pattern
));
}
}
}
}
}
}
else
{
return
null
;
}
}
return
allRouters
;
}
public
static
void
main
(
String
[]
args
)
{
List
<
PageRoute
>
pageRoutes
=
new
ArrayList
<>();
PageRoute
p1
=
new
PageRoute
();
List
<
PageRoute
>
pageRoutes
=
new
ArrayList
<>();
PageRoute
p1
=
new
PageRoute
();
p1
.
setPageName
(
"http://www.baidu.com/eva/update"
);
PageRoute
p2
=
new
PageRoute
();
PageRoute
p2
=
new
PageRoute
();
p2
.
setPageName
(
"/eva/save"
);
PageRoute
p3
=
new
PageRoute
();
PageRoute
p3
=
new
PageRoute
();
p3
.
setPageName
(
"http://www.baidu.com/eva/delete"
);
PageRoute
p4
=
new
PageRoute
();
PageRoute
p4
=
new
PageRoute
();
p4
.
setPageName
(
"http://www.baidu.com/eva/find"
);
PageRoute
p5
=
new
PageRoute
();
PageRoute
p5
=
new
PageRoute
();
p5
.
setPageName
(
"http://www.baidu.com/sff/1/s/10"
);
pageRoutes
.
add
(
p1
);
pageRoutes
.
add
(
p2
);
...
...
@@ -293,12 +300,12 @@ public class TestTask {
pageRoutes
.
add
(
p4
);
pageRoutes
.
add
(
p5
);
List
<
String
>
urls
=
Arrays
.
asList
(
"/save"
,
"/find/search"
,
"/update"
,
"/sdf/hks"
,
"/sff/:sdf/s/:size"
);
List
<
PageRoute
>
pageRouteList
=
new
ArrayList
<>();
List
<
String
>
s
=
new
ArrayList
<>();
List
<
String
>
urls
=
Arrays
.
asList
(
"/save"
,
"/find/search"
,
"/update"
,
"/sdf/hks"
,
"/sff/:sdf/s/:size"
);
List
<
PageRoute
>
pageRouteList
=
new
ArrayList
<>();
List
<
String
>
s
=
new
ArrayList
<>();
for
(
PageRoute
pageRoute
:
pageRoutes
)
{
for
(
String
url
:
urls
)
{
if
(
pageRoute
.
getPageName
().
contains
(
url
))
{
if
(
pageRoute
.
getPageName
().
contains
(
url
))
{
pageRouteList
.
add
(
pageRoute
);
s
.
add
(
url
);
}
...
...
@@ -306,13 +313,13 @@ public class TestTask {
}
List
<
String
>
collect
=
urls
.
stream
().
filter
(
u
->
!
s
.
contains
(
u
)).
collect
(
Collectors
.
toList
());
List
<
PageRoute
>
ps
=
pageRoutes
.
stream
().
filter
(
u
->
!
pageRouteList
.
contains
(
u
)).
collect
(
Collectors
.
toList
());
List
<
PageRoute
>
allPageRoutes
=
new
ArrayList
<>();
List
<
PageRoute
>
allPageRoutes
=
new
ArrayList
<>();
for
(
PageRoute
pageRoute
:
pageRouteList
)
{
pageRoute
.
setMessage
(
"有/有"
);
allPageRoutes
.
add
(
pageRoute
);
}
for
(
String
s1
:
collect
)
{
PageRoute
pageRoute
=
new
PageRoute
();
PageRoute
pageRoute
=
new
PageRoute
();
pageRoute
.
setPageName
(
s1
);
pageRoute
.
setMessage
(
"有/无"
);
pageRoute
.
setResponseTime
(
0
);
...
...
@@ -327,18 +334,18 @@ public class TestTask {
allPageRoutes
.
stream
().
forEach
(
System
.
out
::
println
);
}
public
List
<
PageRoute
>
getAllPageRoutes
(
List
<
PageRoute
>
pageRoutes
,
List
<
String
>
sourceUrls
)
{
if
(
pageRoutes
==
null
||
pageRoutes
.
size
()==
0
)
{
public
List
<
PageRoute
>
getAllPageRoutes
(
List
<
PageRoute
>
pageRoutes
,
List
<
String
>
sourceUrls
)
{
if
(
pageRoutes
==
null
||
pageRoutes
.
size
()
==
0
)
{
return
null
;
}
if
(
sourceUrls
==
null
||
sourceUrls
.
size
()==
0
)
{
if
(
sourceUrls
==
null
||
sourceUrls
.
size
()
==
0
)
{
return
pageRoutes
;
}
List
<
PageRoute
>
pageRouteList
=
new
ArrayList
<>();
List
<
String
>
s
=
new
ArrayList
<>();
List
<
PageRoute
>
pageRouteList
=
new
ArrayList
<>();
List
<
String
>
s
=
new
ArrayList
<>();
for
(
PageRoute
pageRoute
:
pageRoutes
)
{
for
(
String
url
:
sourceUrls
)
{
if
(
pageRoute
.
getPageName
().
contains
(
url
))
{
if
(
pageRoute
.
getPageName
().
contains
(
url
))
{
pageRouteList
.
add
(
pageRoute
);
s
.
add
(
url
);
}
...
...
@@ -346,13 +353,13 @@ public class TestTask {
}
List
<
String
>
collect
=
sourceUrls
.
stream
().
filter
(
u
->
!
s
.
contains
(
u
)).
collect
(
Collectors
.
toList
());
List
<
PageRoute
>
ps
=
pageRoutes
.
stream
().
filter
(
u
->
!
pageRouteList
.
contains
(
u
)).
collect
(
Collectors
.
toList
());
List
<
PageRoute
>
allPageRoutes
=
new
ArrayList
<>();
List
<
PageRoute
>
allPageRoutes
=
new
ArrayList
<>();
for
(
PageRoute
pageRoute
:
pageRouteList
)
{
pageRoute
.
setMessage
(
"有/有"
);
allPageRoutes
.
add
(
pageRoute
);
}
for
(
String
s1
:
collect
)
{
PageRoute
pageRoute
=
new
PageRoute
();
PageRoute
pageRoute
=
new
PageRoute
();
pageRoute
.
setPageName
(
s1
);
pageRoute
.
setMessage
(
"有/无"
);
pageRoute
.
setResponseTime
(
0
);
...
...
src/main/resources/application.properties
浏览文件 @
7f970097
...
...
@@ -18,10 +18,10 @@ spring.servlet.multipart.max-file-size=500MB
spring.servlet.multipart.max-request-size
=
500MB
screenshot-path
=
C:/MyProjects/auto-test/src/main/resources/screenshots/
screenshot-path
=
E:/opt/auto/image
selenium.executor.wait-after-click
=
6
selenium.executor.wait-after-click
=
2
selenium.executor.screenshot.url-host
=
localhost
selenium.executor.screenshot.url-host
=
192.168.0.119
selenium.executor.screenshot.url-port
=
13500
\ No newline at end of file
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论