Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
O
oto
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
龚小红
oto
Commits
633fc37f
Commit
633fc37f
authored
Mar 06, 2021
by
张艳玲
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改钉钉推送
parent
06ba160a
Changes
15
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
1202 additions
and
258 deletions
+1202
-258
compiler.xml
.idea/compiler.xml
+8
-0
gradle.xml
.idea/gradle.xml
+1
-1
build.gradle
build.gradle
+4
-1
pom.xml
pom.xml
+0
-156
AnswerBean.java
src/test/java/com/kjj/bean/AnswerBean.java
+0
-15
VoteBean.java
src/test/java/com/kjj/bean/VoteBean.java
+3
-6
VoteListBean.java
src/test/java/com/kjj/bean/VoteListBean.java
+14
-0
WelfareBean.java
src/test/java/com/kjj/bean/WelfareBean.java
+9
-0
WelfareListBean.java
src/test/java/com/kjj/bean/WelfareListBean.java
+11
-0
LiveMaterial.java
src/test/java/com/kjj/cases/live/LiveMaterial.java
+225
-22
SaveAndUpdate.java
src/test/java/com/kjj/cases/live/SaveAndUpdate.java
+5
-6
BasicConfig.java
src/test/java/com/kjj/config/BasicConfig.java
+26
-1
JsonUtil.java
src/test/java/com/kjj/utils/JsonUtil.java
+18
-0
liveTestNG.xml
src/test/liveTestNG.xml
+5
-5
report.html
test-output/report.html
+873
-45
No files found.
.idea/compiler.xml
View file @
633fc37f
...
...
@@ -3,6 +3,14 @@
<component
name=
"CompilerConfiguration"
>
<annotationProcessing>
<profile
default=
"true"
name=
"Default"
enabled=
"true"
/>
<profile
name=
"Gradle Imported"
enabled=
"true"
>
<outputRelativeToContentRoot
value=
"true"
/>
<processorPath
useClasspath=
"false"
>
<entry
name=
"$USER_HOME$/Applications/gradle-6.6.1/caches/modules-2/files-2.1/org.projectlombok/lombok/1.18.12/48e4e5d60309ebd833bc528dcf77668eab3cd72c/lombok-1.18.12.jar"
/>
</processorPath>
<module
name=
"kjj.test"
/>
<module
name=
"kjj.main"
/>
</profile>
</annotationProcessing>
<bytecodeTargetLevel
target=
"1.8"
/>
</component>
...
...
.idea/gradle.xml
View file @
633fc37f
...
...
@@ -5,7 +5,7 @@
<option
name=
"linkedExternalProjectsSettings"
>
<GradleProjectSettings>
<option
name=
"delegatedBuild"
value=
"true"
/>
<option
name=
"testRunner"
value=
"
GRADLE
"
/>
<option
name=
"testRunner"
value=
"
PLATFORM
"
/>
<option
name=
"distributionType"
value=
"DEFAULT_WRAPPED"
/>
<option
name=
"externalProjectPath"
value=
"$PROJECT_DIR$"
/>
<option
name=
"gradleJvm"
value=
"1.8"
/>
...
...
build.gradle
View file @
633fc37f
...
...
@@ -23,7 +23,10 @@ repositories {
}
dependencies
{
implementation
'org.projectlombok:lombok:1.18.16'
compile
'org.projectlombok:lombok:1.18.12'
annotationProcessor
'org.projectlombok:lombok:1.18.12'
testCompile
'org.projectlombok:lombok:1.18.12'
testAnnotationProcessor
'org.projectlombok:lombok:1.18.12'
compile
group:
'com.alibaba'
,
name:
'fastjson'
,
version:
'1.2.58'
compile
(
group:
'commons-lang'
,
name:
'commons-lang'
,
version:
'2.6'
)
{
...
...
pom.xml
deleted
100644 → 0
View file @
06ba160a
<?xml version="1.0" encoding="UTF-8"?>
<project
xmlns=
"http://maven.apache.org/POM/4.0.0"
xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation=
"http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
>
<modelVersion>
4.0.0
</modelVersion>
<groupId>
kjj
</groupId>
<artifactId>
kjj
</artifactId>
<version>
1.0-SNAPSHOT
</version>
<!-- maven 参数配置,这里引用不同的testng.xml -->
<properties>
<project.build.sourceEncoding>
UTF-8
</project.build.sourceEncoding>
</properties>
<!-- maven 引用依赖不同的jar -->
<dependencies>
<!--导入TestNG依赖包-->
<dependency>
<groupId>
org.testng
</groupId>
<artifactId>
testng
</artifactId>
<version>
6.8.8
</version>
<scope>
test
</scope>
</dependency>
<!-- 导入fastjson包 -->
<dependency>
<groupId>
com.alibaba
</groupId>
<artifactId>
fastjson
</artifactId>
<version>
1.2.58
</version>
</dependency>
<!-- rest-assured -->
<dependency>
<groupId>
io.rest-assured
</groupId>
<artifactId>
rest-assured
</artifactId>
<version>
4.0.0
</version>
<scope>
test
</scope>
</dependency>
<!-- 导入commons-lang的jar包 -->
<dependency>
<groupId>
commons-lang
</groupId>
<artifactId>
commons-lang
</artifactId>
<version>
2.6
</version>
<exclusions>
<exclusion>
<groupId>
commons-logging
</groupId>
<artifactId>
commons-logging
</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- 导入Mysql数据库链接jar包 -->
<dependency>
<groupId>
mysql
</groupId>
<artifactId>
mysql-connector-java
</artifactId>
<version>
8.0.15
</version>
</dependency>
<!-- 引入poi,解析workbook视图 -->
<dependency>
<groupId>
org.apache.poi
</groupId>
<artifactId>
poi
</artifactId>
<version>
4.1.0
</version>
</dependency>
<dependency>
<groupId>
org.apache.poi
</groupId>
<artifactId>
poi-ooxml
</artifactId>
<version>
3.17
</version>
</dependency>
<!-- 依赖reportNg 关联testNg-->
<!-- <dependency>-->
<!-- <groupId>org.uncommons</groupId>-->
<!-- <artifactId>reportng</artifactId>-->
<!-- <version>1.1.4</version>-->
<!-- <scope>test</scope>-->
<!-- <exclusions>-->
<!-- <exclusion>-->
<!-- <groupId>org.testng</groupId>-->
<!-- <artifactId>testng</artifactId>-->
<!-- </exclusion>-->
<!-- </exclusions>-->
<!-- </dependency>-->
<!-- ExtentReports测试报告 关联testNg-->
<dependency>
<groupId>
com.relevantcodes
</groupId>
<artifactId>
extentreports
</artifactId>
<version>
2.41.0
</version>
</dependency>
<dependency>
<groupId>
com.vimalselvam
</groupId>
<artifactId>
testng-extentsreport
</artifactId>
<version>
1.3.1
</version>
</dependency>
<dependency>
<groupId>
com.aventstack
</groupId>
<artifactId>
extentreports
</artifactId>
<version>
3.0.6
</version>
</dependency>
<dependency>
<groupId>
com.google.inject
</groupId>
<artifactId>
guice
</artifactId>
<version>
4.2.2
</version>
</dependency>
</dependencies>
<!-- 编译插件 -->
<build>
<defaultGoal>
compile
</defaultGoal>
<plugins>
<plugin>
<groupId>
org.apache.maven.plugins
</groupId>
<artifactId>
maven-compiler-plugin
</artifactId>
<version>
3.7.0
</version>
<configuration>
<encoding>
utf-8
</encoding>
<!--源代码的编译-->
<source>
1.8
</source>
<target>
1.8
</target>
</configuration>
</plugin>
<plugin>
<groupId>
org.apache.maven.plugins
</groupId>
<artifactId>
maven-surefire-plugin
</artifactId>
<version>
2.22.2
</version>
<configuration>
<testFailureIgnore>
true
</testFailureIgnore>
<suiteXmlFiles>
<suiteXmlFile>
src/test/testNG.xml
</suiteXmlFile>
</suiteXmlFiles>
<properties>
<!--即使测试失败,也继续下面的测试-->
<property>
<name>
usedefaultlisteners
</name>
<value>
false
</value>
</property>
<property>
<name>
listener
</name>
<value>
com.kjj.config.ExtentTestNGIReporterListener
</value>
</property>
</properties>
</configuration>
</plugin>
</plugins>
</build>
</project>
\ No newline at end of file
src/test/java/com/kjj/bean/AnswerBean.java
View file @
633fc37f
...
...
@@ -8,20 +8,5 @@ public class AnswerBean {
private
String
optionDetail
;
private
int
optionType
;
public
String
getOptionDetail
()
{
return
optionDetail
;
}
public
void
setOptionDetail
(
String
optionDetail
)
{
this
.
optionDetail
=
optionDetail
;
}
public
int
getOptionType
()
{
return
optionType
;
}
public
void
setOptionType
(
int
optionType
)
{
this
.
optionType
=
optionType
;
}
}
src/test/java/com/kjj/bean/VoteBean.java
View file @
633fc37f
...
...
@@ -5,11 +5,8 @@ import lombok.Data;
@Data
public
class
VoteBean
{
private
String
answer
;
private
String
relationResource
;
private
String
relationResourceId
;
private
int
id
;
private
String
name
;
private
int
resourceType
;
}
src/test/java/com/kjj/bean/VoteListBean.java
0 → 100644
View file @
633fc37f
package
com
.
kjj
.
bean
;
import
lombok.Data
;
import
java.util.List
;
@Data
public
class
VoteListBean
{
private
String
answer
;
private
int
relationResourceId
;
private
VoteBean
relationResource
;
}
src/test/java/com/kjj/bean/WelfareBean.java
0 → 100644
View file @
633fc37f
package
com
.
kjj
.
bean
;
import
lombok.Data
;
@Data
public
class
WelfareBean
{
private
int
id
;
}
src/test/java/com/kjj/bean/WelfareListBean.java
0 → 100644
View file @
633fc37f
package
com
.
kjj
.
bean
;
import
lombok.Data
;
import
java.util.List
;
@Data
public
class
WelfareListBean
{
private
int
totalCount
;
private
List
<
WelfareBean
>
list
;
}
src/test/java/com/kjj/cases/live/LiveMaterial.java
View file @
633fc37f
package
com
.
kjj
.
cases
.
live
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONObject
;
import
com.kjj.bean.VoteBean
;
import
com.kjj.bean.VoteListBean
;
import
com.kjj.bean.WelfareBean
;
import
com.kjj.bean.WelfareListBean
;
import
com.kjj.config.BasicConfig
;
import
com.kjj.utils.BaseUtils
;
import
com.kjj.utils.JsonUtil
;
import
groovy.json.JsonBuilder
;
import
io.restassured.response.Response
;
import
org.testng.Assert
;
import
org.testng.annotations.BeforeClass
;
import
org.testng.annotations.Test
;
import
java.util.*
;
public
class
LiveMaterial
implements
AdminAuthorization
{
@BeforeClass
...
...
@@ -27,8 +35,6 @@ public class LiveMaterial implements AdminAuthorization {
saveOrUpdateParam
.
put
(
"welfareName"
,
"盲盒锦鲤"
);
saveOrUpdateParam
.
put
(
"welfarePictures"
,
"https://yun.dui88.com/kjy/image/20210304/1614844198545.jpeg"
);
saveOrUpdateParam
.
put
(
"welfarePicturesArr"
,
"https://yun.dui88.com/kjy/image/20210304/1614844198545.jpeg"
);
saveOrUpdateParam
.
put
(
"welfareUrl"
,
"null"
);
saveOrUpdateParam
.
put
(
"welfareUrlDesc"
,
"null"
);
saveOrUpdateParam
.
put
(
"companyId"
,
101
);
Response
saveOrUpdatePes
=
network
.
postResponse
(
saveOrUpdateParam
,
BasicConfig
.
MANAGER_SAVEORUPDATE6
);
...
...
@@ -36,36 +42,233 @@ public class LiveMaterial implements AdminAuthorization {
System
.
out
.
println
(
data
);
Assert
.
assertTrue
(
data
,
network
.
message
(
saveOrUpdateParam
,
BasicConfig
.
MANAGER_SAVEORUPDATE6
,
"添加奖品失败"
,
saveOrUpdatePes
.
body
().
asString
()));
}
//删除奖品
@Test
(
description
=
"查询福利并删除"
,
priority
=
2
)
public
void
查询福利并删除
()
{
Map
<
String
,
Object
>
params
=
new
HashMap
<>();
params
.
put
(
"companyId"
,
101
);
params
.
put
(
"pageIndex"
,
1
);
params
.
put
(
"pageSize"
,
1
);
Response
response
=
network
.
getResponse
(
params
,
BasicConfig
.
MANAGER_WELFARELIST
);
WelfareListBean
data1
=
JsonUtil
.
parseResponseToBean
(
response
,
WelfareListBean
.
class
);
if
(
data1
.
getTotalCount
()>
0
)
{
WelfareBean
bean
=
data1
.
getList
().
get
(
0
);
Assert
.
assertNotNull
(
bean
,
network
.
message
(
params
,
BasicConfig
.
MANAGER_WELFARELIST
,
"查询福利失败"
,
response
.
body
().
asString
()));
//删除福利
int
id
=
bean
.
getId
();
Map
<
String
,
Object
>
delParam
=
new
HashMap
<>();
delParam
.
put
(
"id"
,
id
);
Response
delRes
=
network
.
postResponse
(
delParam
,
BasicConfig
.
MANAGER_DEL
);
boolean
data2
=
delRes
.
jsonPath
().
getBoolean
(
"data"
);
System
.
out
.
println
(
data2
);
Assert
.
assertTrue
(
data2
,
network
.
message
(
delParam
,
BasicConfig
.
MANAGER_DEL
,
"删除福利失败"
,
delRes
.
body
().
asString
()));
}
}
//添加投票
@Test
(
description
=
"添加投票"
,
priority
=
2
)
@Test
(
description
=
"添加投票"
,
priority
=
3
)
public
void
添加投票
()
{
Map
<
String
,
Object
>
saveOrUpdate1Param
=
new
HashMap
<>();
saveOrUpdate1Param
.
put
(
"companyId"
,
101
);
saveOrUpdate1Param
.
put
(
"question"
,
"投票测试一"
);
List
<
VoteBean
>
votes
=
new
ArrayList
<>();
VoteBean
vote
=
new
VoteBean
();
Map
<
String
,
Object
>
choiceParam
=
new
HashMap
<>();
choiceParam
.
put
(
"companyId"
,
101
);
choiceParam
.
put
(
"question"
,
"投票测试一"
);
List
<
VoteListBean
>
votes
=
new
ArrayList
<>();
VoteListBean
vote
=
new
VoteListBean
();
vote
.
setAnswer
(
"选项一"
);
vote
.
setRelationResource
(
"null"
);
vote
.
setRelationResourceId
(
"null"
);
vote
.
setRelationResourceId
(
358
);
VoteBean
vote1
=
new
VoteBean
();
vote1
.
setId
(
358
);
vote1
.
setName
(
"免费领取"
);
vote1
.
setResourceType
(
11
);
vote
.
setRelationResource
(
vote1
);
votes
.
add
(
vote
);
VoteListBean
vote2
=
new
VoteListBean
();
vote2
.
setAnswer
(
"选项二"
);
votes
.
add
(
vote2
);
choiceParam
.
put
(
"answerList"
,
votes
);
Response
choiceRes
=
network
.
postResponse
(
choiceParam
,
BasicConfig
.
MANAGER_CHOICE
);
Boolean
data3
=
choiceRes
.
jsonPath
().
getBoolean
(
"data"
);
System
.
out
.
println
(
data3
);
Assert
.
assertTrue
(
data3
,
network
.
message
(
choiceParam
,
BasicConfig
.
MANAGER_CHOICE
,
"投票创建失败"
,
choiceRes
.
body
().
asString
()));
VoteBean
vote1
=
new
VoteBean
();
vote1
.
setAnswer
(
"选项二"
);
vote1
.
setRelationResource
(
"null"
);
vote1
.
setRelationResourceId
(
"null"
);
votes
.
add
(
vote1
);
saveOrUpdate1Param
.
put
(
"answerList"
,
votes
);
Response
saveOrUpdate1Res
=
network
.
postResponse
(
saveOrUpdate1Param
,
BasicConfig
.
MANAGER_SAVEORUPDATE5
);
boolean
data1
=
saveOrUpdate1Res
.
jsonPath
().
getBoolean
(
"data"
);
System
.
out
.
println
(
data1
);
Assert
.
assertTrue
(
data1
,
network
.
message
(
saveOrUpdate1Param
,
BasicConfig
.
MANAGER_SAVEORUPDATE5
,
"个人pk奖励配置失败"
,
saveOrUpdate1Res
.
body
().
asString
()));
}
@Test
(
description
=
"查询投票并删除"
,
priority
=
4
)
public
void
查询投票并删除
()
{
Map
<
String
,
Object
>
choiceListPram
=
new
HashMap
<>();
choiceListPram
.
put
(
"companyId"
,
101
);
choiceListPram
.
put
(
"pageIndex"
,
1
);
choiceListPram
.
put
(
"pageSize"
,
1
);
Response
choiceListRes
=
network
.
getResponse
(
choiceListPram
,
BasicConfig
.
MANAGER_GETLIST
);
WelfareListBean
data1
=
JsonUtil
.
parseResponseToBean
(
choiceListRes
,
WelfareListBean
.
class
);
if
(
data1
.
getTotalCount
()>
0
)
{
WelfareBean
bean
=
data1
.
getList
().
get
(
0
);
Assert
.
assertNotNull
(
bean
,
network
.
message
(
choiceListPram
,
BasicConfig
.
MANAGER_GETLIST
,
"查询投票失败"
,
choiceListRes
.
body
().
asString
()));
//删除投票
int
id
=
bean
.
getId
();
Map
<
String
,
Object
>
delParam
=
new
HashMap
<>();
delParam
.
put
(
"id"
,
id
);
Response
delRes
=
network
.
postResponse
(
delParam
,
BasicConfig
.
MANAGER_DELCHOICE
);
boolean
data4
=
delRes
.
jsonPath
().
getBoolean
(
"data"
);
System
.
out
.
println
(
data4
);
Assert
.
assertTrue
(
data4
,
network
.
message
(
delParam
,
BasicConfig
.
MANAGER_DELCHOICE
,
"删除投票失败"
,
delRes
.
body
().
asString
()));
}
}
@Test
(
description
=
"问题管理"
,
priority
=
5
)
public
void
添加问题
()
{
Map
<
String
,
Object
>
questionParam
=
new
HashMap
<>();
questionParam
.
put
(
"companyId"
,
101
);
questionParam
.
put
(
"question"
,
"测试问题"
);
Response
questionRes
=
network
.
postResponse
(
questionParam
,
BasicConfig
.
MANAGER_QUESTION
);
Object
data5
=
questionRes
.
jsonPath
().
getJsonObject
(
"data"
);
System
.
out
.
println
(
data5
);
Assert
.
assertNotNull
(
data5
,
network
.
message
(
questionParam
,
BasicConfig
.
MANAGER_QUESTION
,
"新增问题失败"
,
questionRes
.
body
().
asString
()));
}
@Test
(
description
=
"查询问题并删除"
,
priority
=
6
)
public
void
查询问题并删除
()
{
Map
<
String
,
Object
>
question1Param
=
new
HashMap
<>();
question1Param
.
put
(
"companyId"
,
101
);
question1Param
.
put
(
"pageIndex"
,
1
);
question1Param
.
put
(
"pageSize"
,
1
);
Response
question1Res
=
network
.
getResponse
(
question1Param
,
BasicConfig
.
MANAGER_LIST1
);
WelfareListBean
data1
=
JsonUtil
.
parseResponseToBean
(
question1Res
,
WelfareListBean
.
class
);
if
(
data1
.
getTotalCount
()>
0
)
{
WelfareBean
bean
=
data1
.
getList
().
get
(
0
);
Assert
.
assertNotNull
(
bean
,
network
.
message
(
question1Param
,
BasicConfig
.
MANAGER_LIST1
,
"查询福利失败"
,
question1Res
.
body
().
asString
()));
//删除问题
int
id
=
bean
.
getId
();
Map
<
String
,
Object
>
delParam
=
new
HashMap
<>();
delParam
.
put
(
"id"
,
id
);
Response
delRes
=
network
.
postResponse
(
delParam
,
BasicConfig
.
MANAGER_DEL1
);
boolean
data6
=
delRes
.
jsonPath
().
getBoolean
(
"data"
);
System
.
out
.
println
(
data6
);
Assert
.
assertTrue
(
data6
,
network
.
message
(
delParam
,
BasicConfig
.
MANAGER_DEL1
,
"删除问题失败"
,
delRes
.
body
().
asString
()));
}
}
@Test
(
description
=
"添加图文资料"
,
priority
=
7
)
public
void
添加图文资料
()
{
Map
<
String
,
Object
>
resourceParam
=
new
HashMap
<>();
resourceParam
.
put
(
"companyId"
,
101
);
resourceParam
.
put
(
"resourceTitle"
,
"图文资料2"
);
resourceParam
.
put
(
"resourceButtonTitle"
,
"我要报名"
);
resourceParam
.
put
(
"resourceImg"
,
"https://yun.dui88.com/kjy/image/20210306/1615023456356.jpeg"
);
resourceParam
.
put
(
"resourcePictures"
,
"https://yun.dui88.com/kjy/image/20210306/1615023476770.jpeg"
);
resourceParam
.
put
(
"resourcePicturesArr"
,
"https://yun.dui88.com/kjy/image/20210306/1615023476770.jpeg"
);
Response
resourceRes
=
network
.
postResponse
(
resourceParam
,
BasicConfig
.
MANAGER_RESOURCE
);
Object
data7
=
resourceRes
.
jsonPath
().
getJsonObject
(
"data"
);
System
.
out
.
println
(
data7
);
Assert
.
assertNotNull
(
data7
,
network
.
message
(
resourceParam
,
BasicConfig
.
MANAGER_RESOURCE
,
"新增权益失败"
,
resourceRes
.
body
().
asString
()));
}
@Test
(
description
=
"查询图文并删除"
,
priority
=
8
)
public
void
查询图文并删除
()
{
Map
<
String
,
Object
>
imageTextParam
=
new
HashMap
<>();
imageTextParam
.
put
(
"companyId"
,
101
);
imageTextParam
.
put
(
"pageIndex"
,
1
);
imageTextParam
.
put
(
"pageSize"
,
1
);
imageTextParam
.
put
(
"resourceTypeList"
,
1
);
Response
imageTextRes
=
network
.
getResponse
(
imageTextParam
,
BasicConfig
.
MANAGER_RESOURCELIST
);
WelfareListBean
data1
=
JsonUtil
.
parseResponseToBean
(
imageTextRes
,
WelfareListBean
.
class
);
if
(
data1
.
getTotalCount
()>
0
)
{
WelfareBean
bean
=
data1
.
getList
().
get
(
0
);
Assert
.
assertNotNull
(
bean
,
network
.
message
(
imageTextParam
,
BasicConfig
.
MANAGER_RESOURCELIST
,
"查询图文失败"
,
imageTextRes
.
body
().
asString
()));
//删除图文权益
int
id
=
bean
.
getId
();
Map
<
String
,
Object
>
delResourceParam
=
new
HashMap
<>();
delResourceParam
.
put
(
"id"
,
id
);
Response
elResourceRes
=
network
.
postResponse
(
delResourceParam
,
BasicConfig
.
MANAGER_GELRESOURCE
);
boolean
data8
=
elResourceRes
.
jsonPath
().
getBoolean
(
"data"
);
System
.
out
.
println
(
data8
);
Assert
.
assertTrue
(
data8
,
network
.
message
(
delResourceParam
,
BasicConfig
.
MANAGER_GELRESOURCE
,
"删除图文失败"
,
elResourceRes
.
body
().
asString
()));
}
}
@Test
(
description
=
"添加链接资料"
,
priority
=
9
)
public
void
添加链接资料
()
{
Map
<
String
,
Object
>
saveOrUpdateLinkParam
=
new
HashMap
<>();
saveOrUpdateLinkParam
.
put
(
"companyId"
,
101
);
saveOrUpdateLinkParam
.
put
(
"resourceTitle"
,
"图文资料2"
);
saveOrUpdateLinkParam
.
put
(
"resourceButtonTitle"
,
"我要报名"
);
saveOrUpdateLinkParam
.
put
(
"outLink"
,
"http://www.baidu.com"
);
saveOrUpdateLinkParam
.
put
(
"resourceImg"
,
"https://yun.dui88.com/kjy/image/20210306/1615026240244.jpeg"
);
Response
saveOrUpdateLinkRes
=
network
.
postResponse
(
saveOrUpdateLinkParam
,
BasicConfig
.
MANAGER_SAVEORUPDATELINK
);
Object
data9
=
saveOrUpdateLinkRes
.
jsonPath
().
getJsonObject
(
"data"
);
System
.
out
.
println
(
data9
);
Assert
.
assertNotNull
(
data9
,
network
.
message
(
saveOrUpdateLinkParam
,
BasicConfig
.
MANAGER_SAVEORUPDATELINK
,
"新增链接资料失败"
,
saveOrUpdateLinkRes
.
body
().
asString
()));
}
@Test
(
description
=
"查询链接并删除"
,
priority
=
10
)
public
void
查询链接并删除
()
{
Map
<
String
,
Object
>
linkParam
=
new
HashMap
<>();
linkParam
.
put
(
"companyId"
,
101
);
linkParam
.
put
(
"pageIndex"
,
1
);
linkParam
.
put
(
"pageSize"
,
1
);
linkParam
.
put
(
"resourceTypeList"
,
9
);
Response
linkRes
=
network
.
getResponse
(
linkParam
,
BasicConfig
.
MANAGER_RESOURCELIST
);
WelfareListBean
data1
=
JsonUtil
.
parseResponseToBean
(
linkRes
,
WelfareListBean
.
class
);
if
(
data1
.
getTotalCount
()>
0
)
{
WelfareBean
bean
=
data1
.
getList
().
get
(
0
);
Assert
.
assertNotNull
(
bean
,
network
.
message
(
linkParam
,
BasicConfig
.
MANAGER_RESOURCELIST
,
"查询链接失败"
,
linkRes
.
body
().
asString
()));
//删除链接权益
int
id
=
bean
.
getId
();
Map
<
String
,
Object
>
delResourceParam
=
new
HashMap
<>();
delResourceParam
.
put
(
"id"
,
id
);
Response
elResourceRes
=
network
.
postResponse
(
delResourceParam
,
BasicConfig
.
MANAGER_GELRESOURCE
);
boolean
data10
=
elResourceRes
.
jsonPath
().
getBoolean
(
"data"
);
System
.
out
.
println
(
data10
);
Assert
.
assertTrue
(
data10
,
network
.
message
(
delResourceParam
,
BasicConfig
.
MANAGER_GELRESOURCE
,
"删除链接失败"
,
elResourceRes
.
body
().
asString
()));
}
}
}
src/test/java/com/kjj/cases/live/SaveAndUpdate.java
View file @
633fc37f
...
...
@@ -94,26 +94,24 @@ public class SaveAndUpdate implements AdminAuthorization {
ids
.
add
(
291L
);
ids
.
add
(
292L
);
ids
.
add
(
293L
);
ids
.
add
(
294L
);
ids
.
add
(
295L
);
saveOrUpdateParam
.
put
(
"ids"
,
ids
);
Response
saveOrUpdateRes
=
network
.
postResponse
(
saveOrUpdateParam
,
BasicConfig
.
MANAGER_SAVEORUPDATE
);
boolean
data2
=
saveOrUpdateRes
.
jsonPath
().
getBoolean
(
"data"
);
System
.
out
.
println
(
data2
);
Assert
.
assert
True
(
data2
,
network
.
message
(
saveOrUpdateParam
,
BasicConfig
.
MANAGER_SAVEORUPDATE
,
"互动问题配置失败"
,
saveOrUpdateRes
.
body
().
asString
()));
Assert
.
assert
NotNull
(
data2
,
network
.
message
(
saveOrUpdateParam
,
BasicConfig
.
MANAGER_SAVEORUPDATE
,
"互动问题配置失败"
,
saveOrUpdateRes
.
body
().
asString
()));
//投票
Map
<
String
,
Object
>
saveOrUpdate2Param
=
new
HashMap
<>();
saveOrUpdate2Param
.
put
(
"liveId"
,
liveID
);
List
<
Long
>
ids1
=
new
ArrayList
<>();
ids1
.
add
(
227
L
);
ids1
.
add
(
226
L
);
ids1
.
add
(
378
L
);
ids1
.
add
(
380
L
);
saveOrUpdate2Param
.
put
(
"ids"
,
ids1
);
Response
saveOrUpdate2Res
=
network
.
postResponse
(
saveOrUpdateParam
,
BasicConfig
.
MANAGER_SAVEORUPDATE2
);
boolean
data3
=
saveOrUpdate2Res
.
jsonPath
().
getBoolean
(
"data"
);
System
.
out
.
println
(
data3
);
Assert
.
assert
True
(
data3
,
network
.
message
(
saveOrUpdate2Param
,
BasicConfig
.
MANAGER_SAVEORUPDATE2
,
"投票配置失败"
,
saveOrUpdate2Res
.
body
().
asString
()));
Assert
.
assert
NotNull
(
data3
,
network
.
message
(
saveOrUpdate2Param
,
BasicConfig
.
MANAGER_SAVEORUPDATE2
,
"投票配置失败"
,
saveOrUpdate2Res
.
body
().
asString
()));
//产品资料
Map
<
String
,
Object
>
saveOrUpdate3Param
=
new
HashMap
<>();
...
...
@@ -266,6 +264,7 @@ public class SaveAndUpdate implements AdminAuthorization {
Answer
.
setOptionDetail
(
"选项一"
);
Answer
.
setOptionType
(
1
);
Answers
.
add
(
Answer
);
AnswerBean
Answer2
=
new
AnswerBean
();
Answer2
.
setOptionDetail
(
"选项二"
);
Answer2
.
setOptionType
(
2
);
...
...
src/test/java/com/kjj/config/BasicConfig.java
View file @
633fc37f
...
...
@@ -76,8 +76,33 @@ public class BasicConfig {
//***************直播素材*****************
public
static
final
String
MANAGER_SAVEORUPDATE6
=
"https://kjj-mng.duibatest.com.cn
/kjy/manager/conf/base/welfare/saveOrUpdate"
;
public
static
final
String
MANAGER_SAVEORUPDATE6
=
MANAGER_HOST
+
"
/kjy/manager/conf/base/welfare/saveOrUpdate"
;
public
static
final
String
MANAGER_WELFARELIST
=
MANAGER_HOST
+
"/kjy/manager/conf/base/welfare/list"
;
public
static
final
String
MANAGER_DEL
=
MANAGER_HOST
+
"/kjy/manager/conf/base/welfare/del"
;
public
static
final
String
MANAGER_CHOICE
=
MANAGER_HOST
+
"/kjy/manager/conf/base/choice/saveOrUpdate"
;
public
static
final
String
MANAGER_GETLIST
=
MANAGER_HOST
+
"/kjy/manager/conf/base/choice/getList"
;
public
static
final
String
MANAGER_DELCHOICE
=
MANAGER_HOST
+
"/kjy/manager/conf/base/choice/delChoice"
;
public
static
final
String
MANAGER_LIST1
=
MANAGER_HOST
+
"/kjy/manager/conf/base/question/list"
;
public
static
final
String
MANAGER_DEL1
=
MANAGER_HOST
+
"/kjy/manager/conf/base/question/del"
;
public
static
final
String
MANAGER_QUESTION
=
MANAGER_HOST
+
"/kjy/manager/conf/base/question/saveOrUpdate"
;
public
static
final
String
MANAGER_RESOURCE
=
MANAGER_HOST
+
"/kjy/manager/live/resource/saveOrUpdatePic"
;
public
static
final
String
MANAGER_RESOURCELIST
=
MANAGER_HOST
+
"/kjy/manager/live/resource/list"
;
public
static
final
String
MANAGER_GELRESOURCE
=
MANAGER_HOST
+
"/kjy/manager/live/resource/delResource"
;
public
static
final
String
MANAGER_SAVEORUPDATELINK
=
MANAGER_HOST
+
"/kjy/manager/live/resource/saveOrUpdateLink"
;
// public static final String MANAGER_SAVEORUPDATELINK= MANAGER_HOST+ "/kjy/manager/live/resource/list";
// *************** 素材ID ***************
...
...
src/test/java/com/kjj/utils/JsonUtil.java
0 → 100644
View file @
633fc37f
package
com
.
kjj
.
utils
;
import
com.alibaba.fastjson.JSON
;
import
com.kjj.bean.WelfareListBean
;
import
groovy.json.JsonBuilder
;
import
io.restassured.response.Response
;
public
class
JsonUtil
{
private
JsonUtil
()
{
}
public
static
<
T
>
T
parseResponseToBean
(
Response
response
,
Class
<
T
>
tClass
){
Object
data
=
response
.
jsonPath
().
getJsonObject
(
"data"
);
String
str
=
new
JsonBuilder
(
data
).
toString
();
return
JSON
.
parseObject
(
str
,
tClass
);
}
}
src/test/liveTestNG.xml
View file @
633fc37f
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite
name=
"直播"
verbose=
"1"
thread-count=
"3"
>
<!-- <test preserve-order="true" name="创建直播">--
>
<!-- <classes>--
>
<!-- <class name="com.kjj.cases.live.SaveAndUpdate"/>--
>
<!-- </classes>--
>
<!-- </test>--
>
<test
preserve-order=
"true"
name=
"创建直播"
>
<classes
>
<class
name=
"com.kjj.cases.live.SaveAndUpdate"
/
>
</classes
>
</test
>
<test
preserve-order=
"true"
name=
"直播素材"
>
<classes>
...
...
test-output/report.html
View file @
633fc37f
...
...
@@ -48,7 +48,7 @@
<ul
id=
'nav-mobile'
class=
'right hide-on-med-and-down nav-right'
>
<li>
<a
href=
'#!'
>
<span
class=
'label suite-start-time blue darken-3'
>
Mar
4, 2021 04:23:20
PM
</span>
<span
class=
'label suite-start-time blue darken-3'
>
Mar
6, 2021 07:22:38
PM
</span>
</a>
</li>
<li>
...
...
@@ -87,6 +87,7 @@
</a>
<ul
id=
'category-toggle'
class=
'dropdown-content'
>
<li><a
href=
'#'
>
直播
</a></li>
<li><a
href=
'#'
>
创建直播
</a></li>
<li><a
href=
'#'
>
直播素材
</a></li>
<li
class=
'divider'
></li>
<li
class=
'clear'
><a
href=
'#!'
clear=
'true'
>
Clear Filters
</a></li>
...
...
@@ -135,7 +136,7 @@
<canvas
id=
'parent-analysis'
width=
'100'
height=
'80'
></canvas>
</div>
<div
class=
'block text-small'
>
<span
class=
'tooltipped'
data-position=
'top'
data-tooltip=
'100%'
><span
class=
'strong'
>
1
</span>
test(s) passed
</span>
<span
class=
'tooltipped'
data-position=
'top'
data-tooltip=
'100%'
><span
class=
'strong'
>
1
9
</span>
test(s) passed
</span>
</div>
<div
class=
'block text-small'
>
<span
class=
'strong tooltipped'
data-position=
'top'
data-tooltip=
'0%'
>
0
</span>
test(s) failed,
<span
class=
'strong tooltipped'
data-position=
'top'
data-tooltip=
'0%'
>
0
</span>
others
...
...
@@ -150,7 +151,7 @@
<canvas
id=
'child-analysis'
width=
'100'
height=
'80'
></canvas>
</div>
<div
class=
'block text-small'
>
<span
class=
'tooltipped'
data-position=
'top'
data-tooltip=
'100%'
><span
class=
'strong'
>
1
</span>
step(s) passed
</span>
<span
class=
'tooltipped'
data-position=
'top'
data-tooltip=
'100%'
><span
class=
'strong'
>
1
9
</span>
step(s) passed
</span>
</div>
<div
class=
'block text-small'
>
<span
class=
'strong tooltipped'
data-position=
'top'
data-tooltip=
'0%'
>
0
</span>
step(s) failed,
<span
class=
'strong tooltipped'
data-position=
'top'
data-tooltip=
'0%'
>
0
</span>
others
...
...
@@ -169,31 +170,633 @@
<li
class=
'test displayed active has-leaf pass'
status=
'pass'
bdd=
'false'
test-id=
'1'
>
<div
class=
'test-heading'
>
<span
class=
'test-name'
>
直播 : 创建直播
</span>
<span
class=
'test-time'
>
Mar 6, 2021 07:22:38 PM
</span>
<span
class=
'test-status right pass'
>
pass
</span>
</div>
<div
class=
'test-content hide'
>
<div
class=
'test-time-info'
>
<span
class=
'label start-time'
>
Mar 6, 2021 07:22:38 PM
</span>
<span
class=
'label end-time'
>
Mar 6, 2021 07:22:44 PM
</span>
<span
class=
'label time-taken grey lighten-1 white-text'
>
0h 0m 6s+74ms
</span>
</div>
<div
class=
'test-desc'
>
Pass: 9 ; Fail: 0 ;
</div>
<div
class=
'test-attributes'
>
<div
class=
'category-list'
>
<span
class=
'category label white-text'
>
直播
</span>
<span
class=
'category label white-text'
>
创建直播
</span>
</div>
</div>
<ul
class=
'collapsible node-list'
data-collapsible=
'accordion'
>
<li
class=
'node level-1 leaf pass'
status=
'pass'
test-id=
'2'
>
<div
class=
'collapsible-header'
>
<div
class=
'node-name'
>
创建直播
</div>
<span
class=
'node-time'
>
Mar 6, 2021 07:22:38 PM
</span>
<span
class=
'node-duration'
>
0h 0m 8s+309ms
</span>
<span
class=
'test-status right pass'
>
pass
</span>
</div>
<div
class=
'collapsible-body'
>
<div
class=
'category-list right'
>
<span
class=
'category label white-text'
>
直播
</span>
<span
class=
'category label white-text'
>
创建直播
</span>
</div>
<div
class=
'node-steps'
>
<table
class=
'bordered table-results'
>
<thead>
<tr>
<th>
Status
</th>
<th>
Timestamp
</th>
<th>
Details
</th>
</tr>
</thead>
<tbody>
<tr
class=
'log'
status=
'pass'
>
<td
class=
'status pass'
title=
'pass'
alt=
'pass'
><i
class=
'material-icons'
>
check_circle
</i></td>
<td
class=
'timestamp'
>
7:22:46 PM
</td>
<td
class=
'step-details'
>
Test passed
</td>
</tr>
</tbody>
</table>
</div>
</div>
</li>
<li
class=
'node level-1 leaf pass'
status=
'pass'
test-id=
'3'
>
<div
class=
'collapsible-header'
>
<div
class=
'node-name'
>
查询直播配置
</div>
<span
class=
'node-time'
>
Mar 6, 2021 07:22:41 PM
</span>
<span
class=
'node-duration'
>
0h 0m 4s+942ms
</span>
<span
class=
'test-status right pass'
>
pass
</span>
</div>
<div
class=
'collapsible-body'
>
<div
class=
'category-list right'
>
<span
class=
'category label white-text'
>
直播
</span>
<span
class=
'category label white-text'
>
创建直播
</span>
</div>
<div
class=
'node-steps'
>
<table
class=
'bordered table-results'
>
<thead>
<tr>
<th>
Status
</th>
<th>
Timestamp
</th>
<th>
Details
</th>
</tr>
</thead>
<tbody>
<tr
class=
'log'
status=
'pass'
>
<td
class=
'status pass'
title=
'pass'
alt=
'pass'
><i
class=
'material-icons'
>
check_circle
</i></td>
<td
class=
'timestamp'
>
7:22:46 PM
</td>
<td
class=
'step-details'
>
Test passed
</td>
</tr>
</tbody>
</table>
</div>
</div>
</li>
<li
class=
'node level-1 leaf pass'
status=
'pass'
test-id=
'4'
>
<div
class=
'collapsible-header'
>
<div
class=
'node-name'
>
添加基础配置
</div>
<span
class=
'node-time'
>
Mar 6, 2021 07:22:42 PM
</span>
<span
class=
'node-duration'
>
0h 0m 4s+741ms
</span>
<span
class=
'test-status right pass'
>
pass
</span>
</div>
<div
class=
'collapsible-body'
>
<div
class=
'category-list right'
>
<span
class=
'category label white-text'
>
直播
</span>
<span
class=
'category label white-text'
>
创建直播
</span>
</div>
<div
class=
'node-steps'
>
<table
class=
'bordered table-results'
>
<thead>
<tr>
<th>
Status
</th>
<th>
Timestamp
</th>
<th>
Details
</th>
</tr>
</thead>
<tbody>
<tr
class=
'log'
status=
'pass'
>
<td
class=
'status pass'
title=
'pass'
alt=
'pass'
><i
class=
'material-icons'
>
check_circle
</i></td>
<td
class=
'timestamp'
>
7:22:46 PM
</td>
<td
class=
'step-details'
>
Test passed
</td>
</tr>
</tbody>
</table>
</div>
</div>
</li>
<li
class=
'node level-1 leaf pass'
status=
'pass'
test-id=
'5'
>
<div
class=
'collapsible-header'
>
<div
class=
'node-name'
>
获取剩余红包金额
</div>
<span
class=
'node-time'
>
Mar 6, 2021 07:22:43 PM
</span>
<span
class=
'node-duration'
>
0h 0m 3s+248ms
</span>
<span
class=
'test-status right pass'
>
pass
</span>
</div>
<div
class=
'collapsible-body'
>
<div
class=
'category-list right'
>
<span
class=
'category label white-text'
>
直播
</span>
<span
class=
'category label white-text'
>
创建直播
</span>
</div>
<div
class=
'node-steps'
>
<table
class=
'bordered table-results'
>
<thead>
<tr>
<th>
Status
</th>
<th>
Timestamp
</th>
<th>
Details
</th>
</tr>
</thead>
<tbody>
<tr
class=
'log'
status=
'pass'
>
<td
class=
'status pass'
title=
'pass'
alt=
'pass'
><i
class=
'material-icons'
>
check_circle
</i></td>
<td
class=
'timestamp'
>
7:22:46 PM
</td>
<td
class=
'step-details'
>
Test passed
</td>
</tr>
</tbody>
</table>
</div>
</div>
</li>
<li
class=
'node level-1 leaf pass'
status=
'pass'
test-id=
'6'
>
<div
class=
'collapsible-header'
>
<div
class=
'node-name'
>
新增红包配置
</div>
<span
class=
'node-time'
>
Mar 6, 2021 07:22:43 PM
</span>
<span
class=
'node-duration'
>
0h 0m 3s+93ms
</span>
<span
class=
'test-status right pass'
>
pass
</span>
</div>
<div
class=
'collapsible-body'
>
<div
class=
'category-list right'
>
<span
class=
'category label white-text'
>
直播
</span>
<span
class=
'category label white-text'
>
创建直播
</span>
</div>
<div
class=
'node-steps'
>
<table
class=
'bordered table-results'
>
<thead>
<tr>
<th>
Status
</th>
<th>
Timestamp
</th>
<th>
Details
</th>
</tr>
</thead>
<tbody>
<tr
class=
'log'
status=
'pass'
>
<td
class=
'status pass'
title=
'pass'
alt=
'pass'
><i
class=
'material-icons'
>
check_circle
</i></td>
<td
class=
'timestamp'
>
7:22:46 PM
</td>
<td
class=
'step-details'
>
Test passed
</td>
</tr>
</tbody>
</table>
</div>
</div>
</li>
<li
class=
'node level-1 leaf pass'
status=
'pass'
test-id=
'7'
>
<div
class=
'collapsible-header'
>
<div
class=
'node-name'
>
新增答题红包
</div>
<span
class=
'node-time'
>
Mar 6, 2021 07:22:43 PM
</span>
<span
class=
'node-duration'
>
0h 0m 2s+879ms
</span>
<span
class=
'test-status right pass'
>
pass
</span>
</div>
<div
class=
'collapsible-body'
>
<div
class=
'category-list right'
>
<span
class=
'category label white-text'
>
直播
</span>
<span
class=
'category label white-text'
>
创建直播
</span>
</div>
<div
class=
'node-steps'
>
<table
class=
'bordered table-results'
>
<thead>
<tr>
<th>
Status
</th>
<th>
Timestamp
</th>
<th>
Details
</th>
</tr>
</thead>
<tbody>
<tr
class=
'log'
status=
'pass'
>
<td
class=
'status pass'
title=
'pass'
alt=
'pass'
><i
class=
'material-icons'
>
check_circle
</i></td>
<td
class=
'timestamp'
>
7:22:46 PM
</td>
<td
class=
'step-details'
>
Test passed
</td>
</tr>
</tbody>
</table>
</div>
</div>
</li>
<li
class=
'node level-1 leaf pass'
status=
'pass'
test-id=
'8'
>
<div
class=
'collapsible-header'
>
<div
class=
'node-name'
>
直播前抽奖
</div>
<span
class=
'node-time'
>
Mar 6, 2021 07:22:44 PM
</span>
<span
class=
'node-duration'
>
0h 0m 2s+717ms
</span>
<span
class=
'test-status right pass'
>
pass
</span>
</div>
<div
class=
'collapsible-body'
>
<div
class=
'category-list right'
>
<span
class=
'category label white-text'
>
直播
</span>
<span
class=
'category label white-text'
>
创建直播
</span>
</div>
<div
class=
'node-steps'
>
<table
class=
'bordered table-results'
>
<thead>
<tr>
<th>
Status
</th>
<th>
Timestamp
</th>
<th>
Details
</th>
</tr>
</thead>
<tbody>
<tr
class=
'log'
status=
'pass'
>
<td
class=
'status pass'
title=
'pass'
alt=
'pass'
><i
class=
'material-icons'
>
check_circle
</i></td>
<td
class=
'timestamp'
>
7:22:46 PM
</td>
<td
class=
'step-details'
>
Test passed
</td>
</tr>
</tbody>
</table>
</div>
</div>
</li>
<li
class=
'node level-1 leaf pass'
status=
'pass'
test-id=
'9'
>
<div
class=
'collapsible-header'
>
<div
class=
'node-name'
>
直播中抽奖
</div>
<span
class=
'node-time'
>
Mar 6, 2021 07:22:44 PM
</span>
<span
class=
'node-duration'
>
0h 0m 2s+567ms
</span>
<span
class=
'test-status right pass'
>
pass
</span>
</div>
<div
class=
'collapsible-body'
>
<div
class=
'category-list right'
>
<span
class=
'category label white-text'
>
直播
</span>
<span
class=
'category label white-text'
>
创建直播
</span>
</div>
<div
class=
'node-steps'
>
<table
class=
'bordered table-results'
>
<thead>
<tr>
<th>
Status
</th>
<th>
Timestamp
</th>
<th>
Details
</th>
</tr>
</thead>
<tbody>
<tr
class=
'log'
status=
'pass'
>
<td
class=
'status pass'
title=
'pass'
alt=
'pass'
><i
class=
'material-icons'
>
check_circle
</i></td>
<td
class=
'timestamp'
>
7:22:46 PM
</td>
<td
class=
'step-details'
>
Test passed
</td>
</tr>
</tbody>
</table>
</div>
</div>
</li>
<li
class=
'node level-1 leaf pass'
status=
'pass'
test-id=
'10'
>
<div
class=
'collapsible-header'
>
<div
class=
'node-name'
>
配置免费福利
</div>
<span
class=
'node-time'
>
Mar 6, 2021 07:22:44 PM
</span>
<span
class=
'node-duration'
>
0h 0m 2s+430ms
</span>
<span
class=
'test-status right pass'
>
pass
</span>
</div>
<div
class=
'collapsible-body'
>
<div
class=
'category-list right'
>
<span
class=
'category label white-text'
>
直播
</span>
<span
class=
'category label white-text'
>
创建直播
</span>
</div>
<div
class=
'node-steps'
>
<table
class=
'bordered table-results'
>
<thead>
<tr>
<th>
Status
</th>
<th>
Timestamp
</th>
<th>
Details
</th>
</tr>
</thead>
<tbody>
<tr
class=
'log'
status=
'pass'
>
<td
class=
'status pass'
title=
'pass'
alt=
'pass'
><i
class=
'material-icons'
>
check_circle
</i></td>
<td
class=
'timestamp'
>
7:22:46 PM
</td>
<td
class=
'step-details'
>
Test passed
</td>
</tr>
</tbody>
</table>
</div>
</div>
</li>
</ul>
</div>
</li>
<li
class=
'test displayed active has-leaf pass'
status=
'pass'
bdd=
'false'
test-id=
'11'
>
<div
class=
'test-heading'
>
<span
class=
'test-name'
>
直播 : 直播素材
</span>
<span
class=
'test-time'
>
Mar 4, 2021 04:23:20 PM
</span>
<span
class=
'test-time'
>
Mar 6, 2021 07:22:44 PM
</span>
<span
class=
'test-status right pass'
>
pass
</span>
</div>
<div
class=
'test-content hide'
>
<div
class=
'test-time-info'
>
<span
class=
'label start-time'
>
Mar 6, 2021 07:22:44 PM
</span>
<span
class=
'label end-time'
>
Mar 6, 2021 07:22:46 PM
</span>
<span
class=
'label time-taken grey lighten-1 white-text'
>
0h 0m 2s+156ms
</span>
</div>
<div
class=
'test-desc'
>
Pass: 10 ; Fail: 0 ;
</div>
<div
class=
'test-attributes'
>
<div
class=
'category-list'
>
<span
class=
'category label white-text'
>
直播
</span>
<span
class=
'category label white-text'
>
直播素材
</span>
</div>
</div>
<ul
class=
'collapsible node-list'
data-collapsible=
'accordion'
>
<li
class=
'node level-1 leaf pass'
status=
'pass'
test-id=
'12'
>
<div
class=
'collapsible-header'
>
<div
class=
'node-name'
>
添加奖品
</div>
<span
class=
'node-time'
>
Mar 6, 2021 07:22:44 PM
</span>
<span
class=
'node-duration'
>
0h 0m 2s+173ms
</span>
<span
class=
'test-status right pass'
>
pass
</span>
</div>
<div
class=
'collapsible-body'
>
<div
class=
'category-list right'
>
<span
class=
'category label white-text'
>
直播
</span>
<span
class=
'category label white-text'
>
直播素材
</span>
</div>
<div
class=
'node-steps'
>
<table
class=
'bordered table-results'
>
<thead>
<tr>
<th>
Status
</th>
<th>
Timestamp
</th>
<th>
Details
</th>
</tr>
</thead>
<tbody>
<tr
class=
'log'
status=
'pass'
>
<td
class=
'status pass'
title=
'pass'
alt=
'pass'
><i
class=
'material-icons'
>
check_circle
</i></td>
<td
class=
'timestamp'
>
7:22:46 PM
</td>
<td
class=
'step-details'
>
Test passed
</td>
</tr>
</tbody>
</table>
</div>
</div>
</li>
<li
class=
'node level-1 leaf pass'
status=
'pass'
test-id=
'13'
>
<div
class=
'collapsible-header'
>
<div
class=
'node-name'
>
查询福利并删除
</div>
<span
class=
'node-time'
>
Mar 6, 2021 07:22:44 PM
</span>
<span
class=
'node-duration'
>
0h 0m 2s+37ms
</span>
<span
class=
'test-status right pass'
>
pass
</span>
</div>
<div
class=
'collapsible-body'
>
<div
class=
'category-list right'
>
<span
class=
'category label white-text'
>
直播
</span>
<span
class=
'category label white-text'
>
直播素材
</span>
</div>
<div
class=
'node-steps'
>
<table
class=
'bordered table-results'
>
<thead>
<tr>
<th>
Status
</th>
<th>
Timestamp
</th>
<th>
Details
</th>
</tr>
</thead>
<tbody>
<tr
class=
'log'
status=
'pass'
>
<td
class=
'status pass'
title=
'pass'
alt=
'pass'
><i
class=
'material-icons'
>
check_circle
</i></td>
<td
class=
'timestamp'
>
7:22:46 PM
</td>
<td
class=
'step-details'
>
Test passed
</td>
</tr>
</tbody>
</table>
</div>
</div>
</li>
<li
class=
'node level-1 leaf pass'
status=
'pass'
test-id=
'14'
>
<div
class=
'collapsible-header'
>
<div
class=
'node-name'
>
添加投票
</div>
<span
class=
'node-time'
>
Mar 6, 2021 07:22:45 PM
</span>
<span
class=
'node-duration'
>
0h 0m 1s+735ms
</span>
<span
class=
'test-status right pass'
>
pass
</span>
</div>
<div
class=
'collapsible-body'
>
<div
class=
'category-list right'
>
<span
class=
'category label white-text'
>
直播
</span>
<span
class=
'category label white-text'
>
直播素材
</span>
</div>
<div
class=
'node-steps'
>
<table
class=
'bordered table-results'
>
<thead>
<tr>
<th>
Status
</th>
<th>
Timestamp
</th>
<th>
Details
</th>
</tr>
</thead>
<tbody>
<tr
class=
'log'
status=
'pass'
>
<td
class=
'status pass'
title=
'pass'
alt=
'pass'
><i
class=
'material-icons'
>
check_circle
</i></td>
<td
class=
'timestamp'
>
7:22:46 PM
</td>
<td
class=
'step-details'
>
Test passed
</td>
</tr>
</tbody>
</table>
</div>
</div>
</li>
<li
class=
'node level-1 leaf pass'
status=
'pass'
test-id=
'15'
>
<div
class=
'collapsible-header'
>
<div
class=
'node-name'
>
查询投票并删除
</div>
<span
class=
'node-time'
>
Mar 6, 2021 07:22:45 PM
</span>
<span
class=
'node-duration'
>
0h 0m 1s+601ms
</span>
<span
class=
'test-status right pass'
>
pass
</span>
</div>
<div
class=
'collapsible-body'
>
<div
class=
'category-list right'
>
<span
class=
'category label white-text'
>
直播
</span>
<span
class=
'category label white-text'
>
直播素材
</span>
</div>
<div
class=
'node-steps'
>
<table
class=
'bordered table-results'
>
<thead>
<tr>
<th>
Status
</th>
<th>
Timestamp
</th>
<th>
Details
</th>
</tr>
</thead>
<tbody>
<tr
class=
'log'
status=
'pass'
>
<td
class=
'status pass'
title=
'pass'
alt=
'pass'
><i
class=
'material-icons'
>
check_circle
</i></td>
<td
class=
'timestamp'
>
7:22:46 PM
</td>
<td
class=
'step-details'
>
Test passed
</td>
</tr>
</tbody>
</table>
</div>
</div>
</li>
<li
class=
'node level-1 leaf pass'
status=
'pass'
test-id=
'16'
>
<div
class=
'collapsible-header'
>
<div
class=
'node-name'
>
添加问题
</div>
<span
class=
'node-time'
>
Mar 6, 2021 07:22:45 PM
</span>
<span
class=
'node-duration'
>
0h 0m 1s+364ms
</span>
<span
class=
'test-status right pass'
>
pass
</span>
</div>
<div
class=
'collapsible-body'
>
<div
class=
'category-list right'
>
<span
class=
'category label white-text'
>
直播
</span>
<span
class=
'category label white-text'
>
直播素材
</span>
</div>
<div
class=
'node-steps'
>
<table
class=
'bordered table-results'
>
<thead>
<tr>
<th>
Status
</th>
<th>
Timestamp
</th>
<th>
Details
</th>
</tr>
</thead>
<tbody>
<tr
class=
'log'
status=
'pass'
>
<td
class=
'status pass'
title=
'pass'
alt=
'pass'
><i
class=
'material-icons'
>
check_circle
</i></td>
<td
class=
'timestamp'
>
7:22:46 PM
</td>
<td
class=
'step-details'
>
Test passed
</td>
</tr>
</tbody>
</table>
</div>
</div>
</li>
<li
class=
'node level-1 leaf pass'
status=
'pass'
test-id=
'17'
>
<div
class=
'collapsible-header'
>
<div
class=
'node-name'
>
查询问题并删除
</div>
<span
class=
'node-time'
>
Mar 6, 2021 07:22:45 PM
</span>
<span
class=
'node-duration'
>
0h 0m 1s+185ms
</span>
<span
class=
'test-status right pass'
>
pass
</span>
</div>
<div
class=
'collapsible-body'
>
<div
class=
'category-list right'
>
<span
class=
'category label white-text'
>
直播
</span>
<span
class=
'category label white-text'
>
直播素材
</span>
</div>
<div
class=
'node-steps'
>
<table
class=
'bordered table-results'
>
<thead>
<tr>
<th>
Status
</th>
<th>
Timestamp
</th>
<th>
Details
</th>
</tr>
</thead>
<tbody>
<tr
class=
'log'
status=
'pass'
>
<td
class=
'status pass'
title=
'pass'
alt=
'pass'
><i
class=
'material-icons'
>
check_circle
</i></td>
<td
class=
'timestamp'
>
7:22:46 PM
</td>
<td
class=
'step-details'
>
Test passed
</td>
</tr>
</tbody>
</table>
</div>
</div>
</li>
<li
class=
'node level-1 leaf pass'
status=
'pass'
test-id=
'18'
>
<div
class=
'collapsible-header'
>
<div
class=
'node-name'
>
添加图文资料
</div>
<span
class=
'node-time'
>
Mar 6, 2021 07:22:45 PM
</span>
<span
class=
'node-duration'
>
0h 0m 0s+891ms
</span>
<span
class=
'test-status right pass'
>
pass
</span>
</div>
<div
class=
'test-content hide'
>
<div
class=
'test-time-info'
>
<span
class=
'label start-time'
>
Mar 4, 2021 04:23:20 PM
</span>
<span
class=
'label end-time'
>
Mar 4, 2021 04:23:26 PM
</span>
<span
class=
'label time-taken grey lighten-1 white-text'
>
0h 0m 5s+955ms
</span>
</div>
<div
class=
'test-desc'
>
Pass: 1 ; Fail: 0 ;
</div>
<div
class=
'test-attributes'
>
<div
class=
'category-list'
>
<span
class=
'category label white-text'
>
直播
</span>
<span
class=
'category label white-text'
>
直播素材
</span>
</div>
</div>
<ul
class=
'collapsible node-list'
data-collapsible=
'accordion'
>
<li
class=
'node level-1 leaf pass'
status=
'pass'
test-id=
'2'
>
<div
class=
'collapsible-body'
>
<div
class=
'category-list right'
>
<span
class=
'category label white-text'
>
直播
</span>
<span
class=
'category label white-text'
>
直播素材
</span>
</div>
<div
class=
'node-steps'
>
<table
class=
'bordered table-results'
>
<thead>
<tr>
<th>
Status
</th>
<th>
Timestamp
</th>
<th>
Details
</th>
</tr>
</thead>
<tbody>
<tr
class=
'log'
status=
'pass'
>
<td
class=
'status pass'
title=
'pass'
alt=
'pass'
><i
class=
'material-icons'
>
check_circle
</i></td>
<td
class=
'timestamp'
>
7:22:46 PM
</td>
<td
class=
'step-details'
>
Test passed
</td>
</tr>
</tbody>
</table>
</div>
</div>
</li>
<li
class=
'node level-1 leaf pass'
status=
'pass'
test-id=
'19'
>
<div
class=
'collapsible-header'
>
<div
class=
'node-name'
>
添加奖品
</div>
<span
class=
'node-time'
>
Mar 4, 2021 04:23:20 PM
</span>
<span
class=
'node-duration'
>
0h 0m 5s+957ms
</span>
<div
class=
'node-name'
>
查询图文并删除
</div>
<span
class=
'node-time'
>
Mar 6, 2021 07:22:46 PM
</span>
<span
class=
'node-duration'
>
0h 0m 0s+762ms
</span>
<span
class=
'test-status right pass'
>
pass
</span>
</div>
<div
class=
'collapsible-body'
>
<div
class=
'category-list right'
>
<span
class=
'category label white-text'
>
直播
</span>
<span
class=
'category label white-text'
>
直播素材
</span>
</div>
<div
class=
'node-steps'
>
<table
class=
'bordered table-results'
>
<thead>
<tr>
<th>
Status
</th>
<th>
Timestamp
</th>
<th>
Details
</th>
</tr>
</thead>
<tbody>
<tr
class=
'log'
status=
'pass'
>
<td
class=
'status pass'
title=
'pass'
alt=
'pass'
><i
class=
'material-icons'
>
check_circle
</i></td>
<td
class=
'timestamp'
>
7:22:46 PM
</td>
<td
class=
'step-details'
>
Test passed
</td>
</tr>
</tbody>
</table>
</div>
</div>
</li>
<li
class=
'node level-1 leaf pass'
status=
'pass'
test-id=
'20'
>
<div
class=
'collapsible-header'
>
<div
class=
'node-name'
>
添加链接资料
</div>
<span
class=
'node-time'
>
Mar 6, 2021 07:22:46 PM
</span>
<span
class=
'node-duration'
>
0h 0m 0s+512ms
</span>
<span
class=
'test-status right pass'
>
pass
</span>
</div>
<div
class=
'collapsible-body'
>
<div
class=
'category-list right'
>
<span
class=
'category label white-text'
>
直播
</span>
<span
class=
'category label white-text'
>
直播素材
</span>
</div>
<div
class=
'node-steps'
>
<table
class=
'bordered table-results'
>
<thead>
<tr>
<th>
Status
</th>
<th>
Timestamp
</th>
<th>
Details
</th>
</tr>
</thead>
<tbody>
<tr
class=
'log'
status=
'pass'
>
<td
class=
'status pass'
title=
'pass'
alt=
'pass'
><i
class=
'material-icons'
>
check_circle
</i></td>
<td
class=
'timestamp'
>
7:22:46 PM
</td>
<td
class=
'step-details'
>
Test passed
</td>
</tr>
</tbody>
</table>
</div>
</div>
</li>
<li
class=
'node level-1 leaf pass'
status=
'pass'
test-id=
'21'
>
<div
class=
'collapsible-header'
>
<div
class=
'node-name'
>
查询链接并删除
</div>
<span
class=
'node-time'
>
Mar 6, 2021 07:22:46 PM
</span>
<span
class=
'node-duration'
>
0h 0m 0s+389ms
</span>
<span
class=
'test-status right pass'
>
pass
</span>
</div>
<div
class=
'collapsible-body'
>
...
...
@@ -213,7 +816,7 @@
<tbody>
<tr
class=
'log'
status=
'pass'
>
<td
class=
'status pass'
title=
'pass'
alt=
'pass'
><i
class=
'material-icons'
>
check_circle
</i></td>
<td
class=
'timestamp'
>
4:23:2
6 PM
</td>
<td
class=
'timestamp'
>
7:22:4
6 PM
</td>
<td
class=
'step-details'
>
Test passed
</td>
</tr>
</tbody>
...
...
@@ -278,12 +881,146 @@
<div
class=
'category-heading'
>
<span
class=
'category-name'
>
直播
</span>
<span
class=
'category-status right'
>
<span
class=
'label pass'
>
2
</span>
<span
class=
'label pass'
>
21
</span>
</span>
</div>
<div
class=
'category-content hide'
>
<div
class=
'category-status-counts'
>
<span
class=
'label green accent-4 white-text'
>
Passed: 21
</span>
</div>
<div
class=
'category-tests'
>
<table
class=
'bordered table-results'
>
<thead>
<tr>
<th>
Timestamp
</th>
<th>
TestName
</th>
<th>
Status
</th>
</tr>
</thead>
<tbody>
<tr>
<td>
Mar 6, 2021 07:22:38 PM
</td>
<td
class=
'linked'
test-id=
'1'
>
创建直播
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:38 PM
</td>
<td
class=
'linked'
test-id=
'2'
>
创建直播.创建直播
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:41 PM
</td>
<td
class=
'linked'
test-id=
'3'
>
创建直播.查询直播配置
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:42 PM
</td>
<td
class=
'linked'
test-id=
'4'
>
创建直播.添加基础配置
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:43 PM
</td>
<td
class=
'linked'
test-id=
'5'
>
创建直播.获取剩余红包金额
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:43 PM
</td>
<td
class=
'linked'
test-id=
'6'
>
创建直播.新增红包配置
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:43 PM
</td>
<td
class=
'linked'
test-id=
'7'
>
创建直播.新增答题红包
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:44 PM
</td>
<td
class=
'linked'
test-id=
'8'
>
创建直播.直播前抽奖
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:44 PM
</td>
<td
class=
'linked'
test-id=
'9'
>
创建直播.直播中抽奖
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:44 PM
</td>
<td
class=
'linked'
test-id=
'10'
>
创建直播.配置免费福利
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:44 PM
</td>
<td
class=
'linked'
test-id=
'11'
>
直播素材
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:44 PM
</td>
<td
class=
'linked'
test-id=
'12'
>
直播素材.添加奖品
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:44 PM
</td>
<td
class=
'linked'
test-id=
'13'
>
直播素材.查询福利并删除
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:45 PM
</td>
<td
class=
'linked'
test-id=
'14'
>
直播素材.添加投票
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:45 PM
</td>
<td
class=
'linked'
test-id=
'15'
>
直播素材.查询投票并删除
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:45 PM
</td>
<td
class=
'linked'
test-id=
'16'
>
直播素材.添加问题
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:45 PM
</td>
<td
class=
'linked'
test-id=
'17'
>
直播素材.查询问题并删除
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:45 PM
</td>
<td
class=
'linked'
test-id=
'18'
>
直播素材.添加图文资料
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:46 PM
</td>
<td
class=
'linked'
test-id=
'19'
>
直播素材.查询图文并删除
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:46 PM
</td>
<td
class=
'linked'
test-id=
'20'
>
直播素材.添加链接资料
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:46 PM
</td>
<td
class=
'linked'
test-id=
'21'
>
直播素材.查询链接并删除
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
</tbody>
</table>
</div>
</div>
</li>
<li
class=
'category displayed active'
>
<div
class=
'category-heading'
>
<span
class=
'category-name'
>
创建直播
</span>
<span
class=
'category-status right'
>
<span
class=
'label pass'
>
10
</span>
</span>
</div>
<div
class=
'category-content hide'
>
<div
class=
'category-status-counts'
>
<span
class=
'label green accent-4 white-text'
>
Passed:
2
</span>
<span
class=
'label green accent-4 white-text'
>
Passed:
10
</span>
</div>
...
...
@@ -299,13 +1036,53 @@
</thead>
<tbody>
<tr>
<td>
Mar 4, 2021 04:23:20 PM
</td>
<td
class=
'linked'
test-id=
'1'
>
直播素材
</td>
<td>
Mar 6, 2021 07:22:38 PM
</td>
<td
class=
'linked'
test-id=
'1'
>
创建直播
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:38 PM
</td>
<td
class=
'linked'
test-id=
'2'
>
创建直播.创建直播
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:41 PM
</td>
<td
class=
'linked'
test-id=
'3'
>
创建直播.查询直播配置
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:42 PM
</td>
<td
class=
'linked'
test-id=
'4'
>
创建直播.添加基础配置
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:43 PM
</td>
<td
class=
'linked'
test-id=
'5'
>
创建直播.获取剩余红包金额
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:43 PM
</td>
<td
class=
'linked'
test-id=
'6'
>
创建直播.新增红包配置
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:43 PM
</td>
<td
class=
'linked'
test-id=
'7'
>
创建直播.新增答题红包
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:44 PM
</td>
<td
class=
'linked'
test-id=
'8'
>
创建直播.直播前抽奖
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:44 PM
</td>
<td
class=
'linked'
test-id=
'9'
>
创建直播.直播中抽奖
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar
4, 2021 04:23:20
PM
</td>
<td
class=
'linked'
test-id=
'
2'
>
直播素材.添加奖品
</td>
<td>
Mar
6, 2021 07:22:44
PM
</td>
<td
class=
'linked'
test-id=
'
10'
>
创建直播.配置免费福利
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
</tbody>
...
...
@@ -317,12 +1094,12 @@
<div
class=
'category-heading'
>
<span
class=
'category-name'
>
直播素材
</span>
<span
class=
'category-status right'
>
<span
class=
'label pass'
>
2
</span>
<span
class=
'label pass'
>
11
</span>
</span>
</div>
<div
class=
'category-content hide'
>
<div
class=
'category-status-counts'
>
<span
class=
'label green accent-4 white-text'
>
Passed:
2
</span>
<span
class=
'label green accent-4 white-text'
>
Passed:
11
</span>
</div>
...
...
@@ -338,13 +1115,58 @@
</thead>
<tbody>
<tr>
<td>
Mar 4, 2021 04:23:20 PM
</td>
<td
class=
'linked'
test-id=
'1'
>
直播素材
</td>
<td>
Mar 6, 2021 07:22:44 PM
</td>
<td
class=
'linked'
test-id=
'11'
>
直播素材
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:44 PM
</td>
<td
class=
'linked'
test-id=
'12'
>
直播素材.添加奖品
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:44 PM
</td>
<td
class=
'linked'
test-id=
'13'
>
直播素材.查询福利并删除
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:45 PM
</td>
<td
class=
'linked'
test-id=
'14'
>
直播素材.添加投票
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:45 PM
</td>
<td
class=
'linked'
test-id=
'15'
>
直播素材.查询投票并删除
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:45 PM
</td>
<td
class=
'linked'
test-id=
'16'
>
直播素材.添加问题
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 4, 2021 04:23:20 PM
</td>
<td
class=
'linked'
test-id=
'2'
>
直播素材.添加奖品
</td>
<td>
Mar 6, 2021 07:22:45 PM
</td>
<td
class=
'linked'
test-id=
'17'
>
直播素材.查询问题并删除
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:45 PM
</td>
<td
class=
'linked'
test-id=
'18'
>
直播素材.添加图文资料
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:46 PM
</td>
<td
class=
'linked'
test-id=
'19'
>
直播素材.查询图文并删除
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:46 PM
</td>
<td
class=
'linked'
test-id=
'20'
>
直播素材.添加链接资料
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
<tr>
<td>
Mar 6, 2021 07:22:46 PM
</td>
<td
class=
'linked'
test-id=
'21'
>
直播素材.查询链接并删除
</td>
<td><span
class=
'test-status pass'
>
pass
</span></td>
</tr>
</tbody>
...
...
@@ -373,31 +1195,31 @@
<div
class=
'col s2'
>
<div
class=
'card-panel r'
>
Tests
<div
class=
'panel-lead'
>
1
</div>
<div
class=
'panel-lead'
>
1
9
</div>
</div>
</div>
<div
class=
'col s2'
>
<div
class=
'card-panel r'
>
Steps
<div
class=
'panel-lead'
>
1
</div>
<div
class=
'panel-lead'
>
1
9
</div>
</div>
</div>
<div
class=
'col s2'
>
<div
class=
'card-panel r'
>
Start
<div
class=
'panel-lead'
>
Mar
4, 2021 04:23:20
PM
</div>
<div
class=
'panel-lead'
>
Mar
6, 2021 07:22:38
PM
</div>
</div>
</div>
<div
class=
'col s2'
>
<div
class=
'card-panel r'
>
End
<div
class=
'panel-lead'
>
Mar
4, 2021 04:23:26
PM
</div>
<div
class=
'panel-lead'
>
Mar
6, 2021 07:22:44
PM
</div>
</div>
</div>
<div
class=
'col s2'
>
<div
class=
'card-panel r'
>
Time Taken
<div
class=
'panel-lead'
>
5,955
ms
</div>
<div
class=
'panel-lead'
>
6,074
ms
</div>
</div>
</div>
<div
class=
'col s4'
>
...
...
@@ -413,13 +1235,19 @@
</tr>
<tr>
<td>
直播
</td>
<td>
2
</td>
<td>
21
</td>
<td>
0
</td>
<td>
0
</td>
</tr>
<tr>
<td>
创建直播
</td>
<td>
10
</td>
<td>
0
</td>
<td>
0
</td>
</tr>
<tr>
<td>
直播素材
</td>
<td>
2
</td>
<td>
11
</td>
<td>
0
</td>
<td>
0
</td>
</tr>
...
...
@@ -436,7 +1264,7 @@
<script>
var
statusGroup
=
{
passParent
:
1
,
passParent
:
1
9
,
failParent
:
0
,
fatalParent
:
0
,
errorParent
:
0
,
...
...
@@ -444,7 +1272,7 @@
skipParent
:
0
,
exceptionsParent
:
0
,
passChild
:
1
,
passChild
:
1
9
,
failChild
:
0
,
fatalChild
:
0
,
errorChild
:
0
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment