Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
N
nwn_Api_auto_test
Overview
Overview
Details
Activity
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
shuai
nwn_Api_auto_test
Commits
c767a6f2
Commit
c767a6f2
authored
Feb 22, 2019
by
Li Yongyu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add
parent
013f22ff
Show whitespace changes
Inline
Side-by-side
Showing
29 changed files
with
2452 additions
and
59 deletions
+2452
-59
CaseMake.xls
nwn_Api_auto_test/TestData/CaseMake.xls
+0
-0
DataAll - 副本.xls
nwn_Api_auto_test/TestData/DataAll - 副本.xls
+0
-0
DataAll.xls
nwn_Api_auto_test/TestData/DataAll.xls
+0
-0
DefectTest.xml
nwn_Api_auto_test/src/DefectTest.xml
+1
-1
Reflect_api.java
nwn_Api_auto_test/src/com/offcn/TestUnti/Reflect_api.java
+1
-0
RequestDataUtils.java
...pi_auto_test/src/com/offcn/TestUnti/RequestDataUtils.java
+354
-5
StringUtils.java
nwn_Api_auto_test/src/com/offcn/TestUnti/StringUtils.java
+8
-0
createTemplate.java
nwn_Api_auto_test/src/com/offcn/api/nwn/createTemplate.java
+1
-1
nwngetsign.java
nwn_Api_auto_test/src/com/offcn/api/nwn/md5/nwngetsign.java
+3
-3
login.java
nwn_Api_auto_test/src/com/offcn/api/nwn/process/login.java
+12
-0
addStudent.java
...i_auto_test/src/com/offcn/api/nwn/service/addStudent.java
+38
-31
checkUserToPackage.java
...est/src/com/offcn/api/nwn/service/checkUserToPackage.java
+237
-0
checkVideoUrl.java
...uto_test/src/com/offcn/api/nwn/service/checkVideoUrl.java
+243
-0
checkVideoUrlByID.java
...test/src/com/offcn/api/nwn/service/checkVideoUrlByID.java
+243
-0
getPackNameList.java
...o_test/src/com/offcn/api/nwn/service/getPackNameList.java
+249
-0
getSinglePackageInfo.java
...t/src/com/offcn/api/nwn/service/getSinglePackageInfo.java
+199
-0
getUserPackage.java
...to_test/src/com/offcn/api/nwn/service/getUserPackage.java
+199
-0
getVideoInfo.java
...auto_test/src/com/offcn/api/nwn/service/getVideoInfo.java
+210
-0
getVideoInfoByID.java
..._test/src/com/offcn/api/nwn/service/getVideoInfoByID.java
+207
-0
BasicsGM.java
nwn_Api_auto_test/src/com/offcn/process/BasicsGM.java
+13
-0
NWN.java
nwn_Api_auto_test/src/com/offcn/process/NWN.java
+101
-2
TK.java
nwn_Api_auto_test/src/com/offcn/process/TK.java
+16
-0
XYZB.java
nwn_Api_auto_test/src/com/offcn/process/XYZB.java
+14
-0
MyRequest.java
nwn_Api_auto_test/src/com/offcn/system/MyRequest.java
+71
-0
APITest_nwn.java
nwn_Api_auto_test/src/com/offcn/test/APITest_nwn.java
+10
-10
MakeTestCases.java
nwn_Api_auto_test/src/makeTestCase/MakeTestCases.java
+2
-2
class.properties
nwn_Api_auto_test/src/resources/class.properties
+1
-3
system.xml
nwn_Api_auto_test/src/resources/system.xml
+17
-0
test.properties
nwn_Api_auto_test/src/resources/test.properties
+2
-1
No files found.
nwn_Api_auto_test/TestData/CaseMake.xls
View file @
c767a6f2
No preview for this file type
nwn_Api_auto_test/TestData/DataAll - 副本.xls
deleted
100644 → 0
View file @
013f22ff
File deleted
nwn_Api_auto_test/TestData/DataAll.xls
View file @
c767a6f2
No preview for this file type
nwn_Api_auto_test/src/DefectTest.xml
View file @
c767a6f2
...
...
@@ -6,7 +6,7 @@
<classes>
<class
name=
"com.puhui.test.RenMai_APITest"
>
<methods>
<include
name=
"f"
invocation-numbers=
"0 1 2 3 "
/>
<include
name=
"f"
invocation-numbers=
"0 1 2 3
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 38 39 40 41 42 43 44
"
/>
</methods>
</class>
</classes>
...
...
nwn_Api_auto_test/src/com/offcn/TestUnti/Reflect_api.java
View file @
c767a6f2
...
...
@@ -31,6 +31,7 @@ public class Reflect_api {
String
classRoute
=
ReadProperties
.
GetPropertyByKey
(
system
);
// classRoute=StringUtils.getPathName(classRoute);
ClassName
=
classRoute
+
"process."
+
CalssName_new
;
// String system = MapUtil.getValue("system", data);
// String classRoute = ReadProperties.GetPropertyByKey(system);
...
...
nwn_Api_auto_test/src/com/offcn/TestUnti/RequestDataUtils.java
View file @
c767a6f2
...
...
@@ -11,11 +11,13 @@ import io.restassured.path.json.JsonPath;
import
io.restassured.response.Response
;
import
java.io.File
;
import
java.util.Date
;
import
java.util.HashMap
;
import
java.util.Map
;
import
com.offcn.process.BasicsGM
;
import
com.offcn.process.XYZB
;
import
com.offcn.system.MyRequest
;
import
com.offcn.system.system
;
import
static
io
.
restassured
.
http
.
ContentType
.
JSON
;
...
...
@@ -48,6 +50,281 @@ public class RequestDataUtils {
return
ra
;
}
public
static
Response
RestAssuredApi
(
HashMap
<
String
,
Object
>
data
,
MyRequest
myRequest
){
if
(
"get"
.
equals
(
myRequest
.
getRequest
())){
return
Get
(
data
,
myRequest
);
}
else
if
(
"post"
.
equals
(
myRequest
.
getRequest
())){
return
PostAll
(
data
,
myRequest
);
}
else
if
(
"put"
.
equals
(
myRequest
.
getRequest
())){
return
Put
(
data
,
myRequest
);
}
else
if
(
"del"
.
equals
(
myRequest
.
getRequest
())){
return
Del
(
data
,
myRequest
);
}
else
{
return
null
;
}
}
public
static
Response
PostAll
(
HashMap
<
String
,
Object
>
data
,
MyRequest
myRequest
){
if
(
myRequest
.
getFormParameter
()!=
null
){
if
(
myRequest
.
getFile
()!=
null
){
return
Post_file
(
data
,
myRequest
);
}
else
{
return
Post_form_data
(
data
,
myRequest
);
}
}
else
if
(
myRequest
.
getParameter
()!=
null
){
return
Post_JSON
(
data
,
myRequest
);
}
return
null
;
}
public
static
Response
Post_file
(
HashMap
<
String
,
Object
>
data
,
MyRequest
myRequest
)
{
// 设置参数格式
String
Parameter
=
(
String
)
data
.
get
(
"parameter"
);
String
system
=
MapUtil
.
getValue
(
"system"
,
data
);
com
.
offcn
.
system
.
system
tem
=
(
com
.
offcn
.
system
.
system
)
(
BasicsGM
.
map
.
get
(
system
));
String
path
=
tem
.
getRM_URI
()+
tem
.
getRM_port
()+
tem
.
getRM_basePath
()+
myRequest
.
getUrl
();
Log
.
logInfo
(
data
.
get
(
"Description"
).
toString
()
+
","
+
data
.
get
(
"TCNO"
).
toString
()+
","
+
path
+
",Parameter="
+
Parameter
);
int
state
=
0
;
Response
re
=
null
;
RequestDataUtils
rdu
=
new
RequestDataUtils
();
while
(
state
<
5
)
{
try
{
state
++;
File
filen
=
new
File
(
"out/"
+
myRequest
.
getFile
());
re
=
rdu
.
getRMEnv
(
tem
).
given
()
.
headers
(
myRequest
.
getHeaders
()!=
null
?
myRequest
.
getHeaders
():
new
HashMap
<
String
,
String
>())
.
cookies
(
myRequest
.
getCookies
()!=
null
?
myRequest
.
getCookies
():
new
HashMap
<
String
,
String
>())
.
params
(
myRequest
.
getFormParameter
()).
when
().
multiPart
(
"image"
,
filen
)
.
post
(
myRequest
.
getUrl
()).
thenReturn
();
if
(!
"200"
.
equals
(
re
.
getStatusCode
()+
""
))
{
Log
.
logError
(
"请求返回:"
+
re
.
getStatusCode
()+
",第"
+
state
+
"次。"
);
Thread
.
sleep
(
1000
);
}
else
{
return
re
;
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
Log
.
logError
(
"请求超时,"
+
state
+
"次。"
);
}
}
return
re
;
}
public
static
Response
Post_form_data
(
HashMap
<
String
,
Object
>
data
,
MyRequest
myRequest
)
{
//设置参数格式
String
parameter
=
MapUtil
.
getParameter
(
data
);
String
system
=
MapUtil
.
getValue
(
"system"
,
data
);
com
.
offcn
.
system
.
system
tem
=(
com
.
offcn
.
system
.
system
)(
BasicsGM
.
map
.
get
(
system
));
String
path
=
tem
.
getRM_URI
()+
tem
.
getRM_port
()+
tem
.
getRM_basePath
()+
myRequest
.
getUrl
();
parameter
=
parameter
.
substring
(
1
,
parameter
.
length
()-
1
);
Log
.
logInfo
(
data
.
get
(
"Description"
).
toString
()+
","
+
data
.
get
(
"TCNO"
).
toString
()+
","
+
path
+
",Parameter="
+
parameter
);
// 设置参数格式
int
state
=
0
;
Response
re
=
null
;
RequestDataUtils
rdu
=
new
RequestDataUtils
();
while
(
state
<
5
)
{
try
{
state
++;
re
=
rdu
.
getRMEnv
(
tem
).
given
()
.
headers
(
myRequest
.
getHeaders
()!=
null
?
myRequest
.
getHeaders
():
new
HashMap
<
String
,
String
>())
.
cookies
(
myRequest
.
getCookies
()!=
null
?
myRequest
.
getCookies
():
new
HashMap
<
String
,
String
>())
.
params
(
myRequest
.
getFormParameter
())
.
when
()
.
post
(
myRequest
.
getUrl
())
.
thenReturn
();
JsonPath
jp
=
re
.
body
().
jsonPath
();
if
(
"500"
.
equals
(
jp
.
getString
(
"status"
)))
{
Log
.
logError
(
"请求返回500,"
+
state
+
"次。"
);
Thread
.
sleep
(
1000
);
}
else
{
return
re
;
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
Log
.
logError
(
"请求超时,"
+
state
+
"次。"
);
}
}
return
re
;
}
//不带token的post请求
@SuppressWarnings
(
"static-access"
)
public
static
Response
Post_JSON
(
HashMap
<
String
,
Object
>
data
,
MyRequest
myRequest
)
{
// 设置参数格式
String
Parameter
=
(
String
)
data
.
get
(
"parameter"
);
String
system
=
MapUtil
.
getValue
(
"system"
,
data
);
com
.
offcn
.
system
.
system
tem
=
(
com
.
offcn
.
system
.
system
)
(
BasicsGM
.
map
.
get
(
system
));
String
path
=
tem
.
getRM_URI
()+
tem
.
getRM_port
()+
tem
.
getRM_basePath
()+
myRequest
.
getUrl
();
Log
.
logInfo
(
data
.
get
(
"Description"
).
toString
()
+
","
+
data
.
get
(
"TCNO"
).
toString
()
+
","
+
path
+
",Parameter="
+
Parameter
);
int
state
=
0
;
Response
re
=
null
;
RequestDataUtils
rdu
=
new
RequestDataUtils
();
while
(
state
<
5
)
{
try
{
state
++;
re
=
rdu
.
getRMEnv
(
tem
).
given
()
.
headers
(
myRequest
.
getHeaders
()!=
null
?
myRequest
.
getHeaders
():
new
HashMap
<
String
,
String
>())
.
cookies
(
myRequest
.
getCookies
()!=
null
?
myRequest
.
getCookies
():
new
HashMap
<
String
,
String
>())
.
contentType
(
JSON
).
body
(
"{"
+
Parameter
+
"}"
).
when
()
.
post
(
myRequest
.
getUrl
()).
thenReturn
();
if
(!
"200"
.
equals
(
re
.
getStatusCode
()+
""
))
{
Log
.
logError
(
"请求返回,"
+
re
.
getStatusCode
()
+
"次。"
);
Thread
.
sleep
(
1000
);
}
else
{
return
re
;
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
Log
.
logError
(
"请求超时,"
+
state
+
"次。"
);
}
}
return
re
;
}
@SuppressWarnings
(
"deprecation"
)
public
static
Response
Put
(
HashMap
<
String
,
Object
>
data
,
MyRequest
myRequest
)
{
//设置参数格式
String
parameter
=
MapUtil
.
getParameter
(
data
);
String
system
=
MapUtil
.
getValue
(
"system"
,
data
);
com
.
offcn
.
system
.
system
tem
=(
com
.
offcn
.
system
.
system
)(
BasicsGM
.
map
.
get
(
system
));
String
path
=
tem
.
getRM_URI
()+
tem
.
getRM_port
()+
tem
.
getRM_basePath
()+
myRequest
.
getUrl
();
parameter
=
parameter
.
substring
(
1
,
parameter
.
length
()-
1
);
Log
.
logInfo
(
data
.
get
(
"Description"
).
toString
()+
","
+
data
.
get
(
"TCNO"
).
toString
()+
","
+
path
+
",Parameter="
+
parameter
);
// 设置参数格式
int
state
=
0
;
Response
re
=
null
;
RequestDataUtils
rdu
=
new
RequestDataUtils
();
while
(
state
<
5
)
{
try
{
state
++;
re
=
rdu
.
getRMEnv
(
tem
).
given
().
config
(
RestAssured
.
config
()
.
encoderConfig
(
EncoderConfig
.
encoderConfig
()
.
encodeContentTypeAs
(
"x-www-form-urlencoded"
,
ContentType
.
ANY
)
.
defaultContentCharset
(
"utf-8"
)))
.
headers
(
myRequest
.
getHeaders
()!=
null
?
myRequest
.
getHeaders
():
new
HashMap
<
String
,
String
>())
.
cookies
(
myRequest
.
getCookies
()!=
null
?
myRequest
.
getCookies
():
new
HashMap
<
String
,
String
>())
.
formParameters
(
myRequest
.
getFormParameter
())
.
when
().
put
(
myRequest
.
getUrl
()).
thenReturn
();
JsonPath
jp
=
re
.
body
().
jsonPath
();
if
(
"500"
.
equals
(
jp
.
getString
(
"status"
)))
{
Log
.
logError
(
"请求返回500,"
+
state
+
"次。"
);
Thread
.
sleep
(
1000
);
}
else
{
return
re
;
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
Log
.
logError
(
"请求超时,"
+
state
+
"次。"
);
}
}
return
re
;
}
public
static
Response
Del
(
HashMap
<
String
,
Object
>
data
,
MyRequest
myRequest
)
{
//设置参数格式
String
parameter
=
MapUtil
.
getParameter
(
data
);
String
system
=
MapUtil
.
getValue
(
"system"
,
data
);
com
.
offcn
.
system
.
system
tem
=(
com
.
offcn
.
system
.
system
)(
BasicsGM
.
map
.
get
(
system
));
String
path
=
tem
.
getRM_URI
()+
tem
.
getRM_port
()+
tem
.
getRM_basePath
()+
myRequest
.
getUrl
();
parameter
=
parameter
.
substring
(
1
,
parameter
.
length
()-
1
);
Log
.
logInfo
(
data
.
get
(
"Description"
).
toString
()+
","
+
data
.
get
(
"TCNO"
).
toString
()+
","
+
path
+
",Parameter="
+
parameter
);
// 设置参数格式
Log
.
logInfo
(
"serviceURL="
+
myRequest
.
getUrl
()
+
",Parameter="
+
myRequest
.
getParameter
());
int
state
=
0
;
Response
re
=
null
;
RequestDataUtils
rdu
=
new
RequestDataUtils
();
while
(
state
<
5
)
{
try
{
state
++;
re
=
rdu
.
getRMEnv
(
tem
).
given
()
.
headers
(
myRequest
.
getHeaders
()!=
null
?
myRequest
.
getHeaders
():
new
HashMap
<
String
,
String
>())
.
cookies
(
myRequest
.
getCookies
()!=
null
?
myRequest
.
getCookies
():
new
HashMap
<
String
,
String
>())
.
when
().
delete
(
myRequest
.
getUrl
()).
thenReturn
();
JsonPath
jp
=
re
.
body
().
jsonPath
();
if
(
"500"
.
equals
(
jp
.
getString
(
"status"
)))
{
Log
.
logError
(
"请求返回500,"
+
state
+
"次。"
);
Thread
.
sleep
(
1000
);
}
else
{
return
re
;
}
}
catch
(
Exception
e
)
{
Log
.
logError
(
"请求超时,"
+
state
+
"次。"
);
}
}
return
re
;
}
@SuppressWarnings
(
"static-access"
)
public
static
Response
Get
(
HashMap
<
String
,
Object
>
data
,
MyRequest
myRequest
)
{
//设置参数格式
String
parameter
=
MapUtil
.
getParameter
(
data
);
String
system
=
MapUtil
.
getValue
(
"system"
,
data
);
com
.
offcn
.
system
.
system
tem
=(
com
.
offcn
.
system
.
system
)(
BasicsGM
.
map
.
get
(
system
));
String
path
=
tem
.
getRM_URI
()+
tem
.
getRM_port
()+
tem
.
getRM_basePath
()+
myRequest
.
getUrl
();
parameter
=
parameter
.
substring
(
1
,
parameter
.
length
()-
1
);
Log
.
logInfo
(
data
.
get
(
"Description"
).
toString
()+
","
+
data
.
get
(
"TCNO"
).
toString
()+
","
+
path
+
",Parameter="
+
parameter
);
int
state
=
0
;
Response
re
=
null
;
RequestDataUtils
rdu
=
new
RequestDataUtils
();
while
(
state
<
3
){
try
{
state
++;
if
(
parameter
!=
null
&&
!
""
.
equals
(
parameter
))
{
re
=
rdu
.
getRMEnv
(
tem
).
given
()
.
headers
(
myRequest
.
getHeaders
()!=
null
?
myRequest
.
getHeaders
():
new
HashMap
<
String
,
String
>())
.
cookies
(
myRequest
.
getCookies
()!=
null
?
myRequest
.
getCookies
():
new
HashMap
<
String
,
String
>())
.
get
(
myRequest
.
getUrl
()
+
"?"
+
parameter
).
andReturn
();
}
else
{
re
=
rdu
.
getRMEnv
(
tem
).
given
()
.
headers
(
myRequest
.
getHeaders
()!=
null
?
myRequest
.
getHeaders
():
new
HashMap
<
String
,
String
>())
.
cookies
(
myRequest
.
getCookies
()!=
null
?
myRequest
.
getCookies
():
new
HashMap
<
String
,
String
>())
.
get
(
myRequest
.
getUrl
()).
andReturn
();
}
if
(!
"200"
.
equals
(
re
.
statusCode
()+
""
)){
Log
.
logError
(
"请求返回"
+
re
.
statusCode
()+
"次。"
);
}
else
{
return
re
;
}
}
catch
(
Exception
e
)
{
Log
.
logError
(
"请求超时,"
+
state
+
"次。"
);
}
}
return
re
;
}
//不带token的post请求
public
static
Response
Post_headers
(
HashMap
<
String
,
Object
>
data
,
String
serviceURL
,
String
zgl_clienttype
)
{
// 设置参数格式
...
...
@@ -331,6 +608,43 @@ public class RequestDataUtils {
return
re
;
}
//需要添加token的post,json请求
@SuppressWarnings
(
"static-access"
)
public
static
Response
Post_file2
(
HashMap
<
String
,
Object
>
data
,
String
serviceURL
,
String
token
,
String
file
,
String
filename
,
Map
<
String
,
String
>
jsonAsMap
)
{
// 设置参数格式
String
Parameter
=
(
String
)
data
.
get
(
"parameter"
);
String
system
=
MapUtil
.
getValue
(
"system"
,
data
);
com
.
offcn
.
system
.
system
tem
=
(
com
.
offcn
.
system
.
system
)
(
BasicsGM
.
map
.
get
(
system
));
Log
.
logInfo
(
data
.
get
(
"Description"
).
toString
()
+
","
+
data
.
get
(
"TCNO"
).
toString
()
+
",Parameter="
+
Parameter
);
int
state
=
0
;
Response
re
=
null
;
RequestDataUtils
rdu
=
new
RequestDataUtils
();
while
(
state
<
5
)
{
try
{
state
++;
File
filen
=
new
File
(
"out/"
+
filename
);
// re = rdu.getRMEnv(tem).given().cookie("laravel_session", XYZB.laravel_session).when().get("http://live.offcncloud.com/web/admin").thenReturn();
re
=
rdu
.
getRMEnv
(
tem
).
given
()
.
header
(
"Authorization"
,
token
)
.
params
(
jsonAsMap
).
when
().
multiPart
(
file
,
filen
)
.
post
(
serviceURL
).
thenReturn
();
// System.out.println(re.asString());
if
(!
"200"
.
equals
(
re
.
getStatusCode
()+
""
))
{
Log
.
logError
(
"请求返回:"
+
re
.
getStatusCode
()+
",第"
+
state
+
"次。"
);
Thread
.
sleep
(
1000
);
}
else
{
return
re
;
}
}
catch
(
Exception
e
)
{
Log
.
logError
(
"请求超时,"
+
state
+
"次。"
);
}
}
return
re
;
}
//发送get请求返回整个响应结果
@SuppressWarnings
(
"static-access"
)
...
...
@@ -370,6 +684,43 @@ public class RequestDataUtils {
return
re
;
}
//发送get请求返回整个响应结果
@SuppressWarnings
(
"static-access"
)
public
static
Response
Get_token_all
(
HashMap
<
String
,
Object
>
data
,
String
serviceURL
,
String
token
)
{
//设置参数格式
String
parameter
=
MapUtil
.
getParameter
(
data
);
String
system
=
MapUtil
.
getValue
(
"system"
,
data
);
com
.
offcn
.
system
.
system
tem
=(
com
.
offcn
.
system
.
system
)(
BasicsGM
.
map
.
get
(
system
));
parameter
=
parameter
.
substring
(
1
,
parameter
.
length
()-
1
);
Log
.
logInfo
(
data
.
get
(
"Description"
).
toString
()+
","
+
data
.
get
(
"TCNO"
).
toString
()+
",Parameter="
+
parameter
);
int
state
=
0
;
Response
re
=
null
;
RequestDataUtils
rdu
=
new
RequestDataUtils
();
while
(
state
<
3
){
try
{
state
++;
if
(
parameter
!=
null
&&
!
""
.
equals
(
parameter
))
{
re
=
rdu
.
getRMEnv
(
tem
).
given
().
header
(
"Authorization"
,
token
).
get
(
serviceURL
+
"?"
+
parameter
).
andReturn
();
}
else
{
re
=
rdu
.
getRMEnv
(
tem
).
given
().
header
(
"Authorization"
,
token
).
get
(
serviceURL
).
andReturn
();
}
if
(!
"200"
.
equals
(
re
.
statusCode
()+
""
)){
Log
.
logError
(
"请求返回"
+
re
.
statusCode
()+
"次。"
);
}
else
{
return
re
;
}
}
catch
(
Exception
e
)
{
Log
.
logError
(
"请求超时,"
+
state
+
"次。"
);
}
}
return
re
;
}
//发送get请求返回整个响应结果
@SuppressWarnings
(
"static-access"
)
...
...
@@ -667,6 +1018,7 @@ public class RequestDataUtils {
return
re
;
}
@SuppressWarnings
(
"static-access"
)
public
static
Response
Get_one_cookie_pre
(
HashMap
<
String
,
Object
>
data
,
String
serviceURL
,
...
...
@@ -680,17 +1032,15 @@ public class RequestDataUtils {
com
.
offcn
.
system
.
system
tem
=(
com
.
offcn
.
system
.
system
)(
BasicsGM
.
map
.
get
(
system
));
parameter
=
parameter
.
substring
(
1
,
parameter
.
length
()-
1
);
Log
.
logInfo
(
data
.
get
(
"Description"
).
toString
()+
","
+
data
.
get
(
"TCNO"
).
toString
()+
",Parameter="
+
parameter
);
int
state
=
0
;
Response
re
=
null
;
RequestDataUtils
rdu
=
new
RequestDataUtils
();
while
(
state
<
5
){
while
(
state
<
5
){
try
{
state
++;
if
(
parameter
!=
null
&&
!
""
.
equals
(
parameter
))
{
re
=
rdu
.
getRMEnv
(
tem
).
given
()
.
cookie
(
cookie1Name
,
cookie1value
)
...
...
@@ -816,7 +1166,7 @@ public class RequestDataUtils {
while
(
state
<
5
)
{
try
{
state
++;
re
=
rdu
.
getRMEnv
(
tem
).
given
()
re
=
rdu
.
getRMEnv
(
tem
).
given
()
.
header
(
"Authorization"
,
token
)
.
params
(
jsonAsMap
)
.
when
()
.
post
(
serviceURL
)
...
...
@@ -836,5 +1186,4 @@ public class RequestDataUtils {
}
return
re
;
}
}
nwn_Api_auto_test/src/com/offcn/TestUnti/StringUtils.java
View file @
c767a6f2
...
...
@@ -8,6 +8,14 @@ public class StringUtils {
String
str
=
"\\u623f\\u95f4\\u53e3\\u4ee4\\u751f\\u6210\\u5931\\u8d25"
;
System
.
out
.
println
(
decodeUnicode
(
str
));
}
public
static
String
getPathName
(
String
path
){
String
p
=
path
.
substring
(
0
,
path
.
length
()-
2
);
int
end
=
p
.
lastIndexOf
(
"."
);
p
=
p
.
substring
(
0
,
end
+
1
);
return
p
;
}
//字符串按符号分隔
public
static
String
[]
getArrayString
(
String
custom
,
String
Symbol
){
return
custom
.
split
(
Symbol
);
...
...
nwn_Api_auto_test/src/com/offcn/api/nwn/createTemplate.java
View file @
c767a6f2
...
...
@@ -30,7 +30,7 @@ import net.sf.json.JSONObject;
/**
*
添加用户信息(客户端单独)
*
创建模板
*
* @author liyy
*
...
...
nwn_Api_auto_test/src/com/offcn/api/nwn/md5/nwngetsign.java
View file @
c767a6f2
...
...
@@ -23,15 +23,15 @@ public class nwngetsign {
arr
[
i
]=
arr
[
i
].
substring
(
arr
[
i
].
indexOf
(
"="
)+
1
);
sortstring
.
append
(
arr
[
i
]);
System
.
out
.
println
(
sortstring
);
//
System.out.println(sortstring);
}
sortstring
.
toString
();
System
.
out
.
println
(
"sortstring===="
+
sortstring
);
//
System.out.println("sortstring====" + sortstring);
String
str
=
sortstring
.
toString
();
str
=
str
+
"bf2h3%^j?ljkj3706kji88697"
;
//教务的加密,规则固定需要加
System
.
out
.
println
(
"str==="
+
str
);
//
System.out.println("str===" + str);
NWN
.
suprise_str
=
str
;
//String str1 = "appid=tiku&avatar=http://thirdqq.qlogo.cn/qqapp/1106773681/5B50BBF83A00DC46B16B708F720A5D46/100&device_id=861837034477409&login_type=qq&nickname=hobo&open_id=1&platform=Android&version=1"+"&123456";
String
res
=
new
LMFMD5
().
MD5
(
str
);
...
...
nwn_Api_auto_test/src/com/offcn/api/nwn/process/login.java
View file @
c767a6f2
...
...
@@ -40,6 +40,18 @@ public class login extends NWN implements API {
@Override
public
void
initialize
(
HashMap
<
String
,
Object
>
data
)
{
if
(!
isProduct
&&
data
.
get
(
"CleanDB"
).
toString
().
contains
(
"Y"
))
{
NWN
.
PHPSESSID
=
""
;
// nwn_sign="";
// admin_login_ssid="";
// nwn_url="";
// admin_31_encode="";
level_id_List
=
""
;
this
.
cleann_n_admin_card_no_List_FromDB
();
this
.
cleann_n_package_List_FromDB
();
this
.
cleann_user_id_List_FromDB
();
}
}
@Override
...
...
nwn_Api_auto_test/src/com/offcn/api/nwn/service/addStudent.java
View file @
c767a6f2
...
...
@@ -40,7 +40,7 @@ public class addStudent extends NWN implements API {
public
String
package_id
;
// 母板ID
public
String
phone
;
//
public
String
sso_id
;
//
public
String
user_info
;
//
@Override
...
...
@@ -66,7 +66,11 @@ public class addStudent extends NWN implements API {
parameter
=
parameter
.
replace
(
"\"package_id\":package_id"
,
"\"package_id\":"
+
package_id
);
}
if
((!
user_info
.
equals
(
""
))
&&
user_info
.
contains
(
"sso_id"
))
{
sso_id
=
"1"
+
new
Random
().
nextInt
(
9000000
);
parameter
=
parameter
.
replace
(
"\"sso_id\":sso_id"
,
"\"sso_id\":"
+
sso_id
);
}
if
((!
user_info
.
equals
(
""
))
&&
user_info
.
contains
(
"phone"
))
{
phone
=
"1351"
+
(
new
Random
().
nextInt
(
9000000
)
+
1000000
);
parameter
=
parameter
.
replace
(
"\"phone\":phone"
,
"\"phone\":"
...
...
@@ -149,7 +153,7 @@ public class addStudent extends NWN implements API {
result
=
result
&&
false
;
failReason
=
failReason
+
"msg is expected "
+
data
.
get
(
"msg"
).
toString
()
+
" but actually "
+
jp
.
getString
(
"m
sg
"
)
+
"."
;
+
jp
.
getString
(
"m
essage
"
)
+
"."
;
}
if
(
data
.
get
(
"custom"
)
!=
null
&&
json
!=
null
)
{
...
...
@@ -179,35 +183,38 @@ public class addStudent extends NWN implements API {
}
}
if
(
json
.
contains
(
data
.
get
(
"msg"
).
toString
()))
{
if
(
"0"
.
equals
(
jp
.
getString
(
"retcode"
))){
//是否验证数据库
if
(!
isProduct
)
{
try
{
String
sql
=
"SELECT count(*) as num FROM n_user where phone = "
+
phone
;
//SELECT id FROM n_template ORDER BY id DESC LIMIT 1
ResultSet
rs_bankcard
=
this
.
sqlFromDB
(
sql
);
rs_bankcard
.
last
();
System
.
out
.
println
(
"after addstudent============"
+
rs_bankcard
.
getString
(
"num"
));
if
(
"成功0条,失败1条"
.
equals
(
jp
.
getString
(
"message"
))||
Integer
.
parseInt
(
rs_bankcard
.
getString
(
"num"
))
==
Integer
.
parseInt
(
"1"
)
)
{
Log
.
logInfo
(
"template_id info in DB is correct;"
);
}
else
{
result
=
result
&&
false
;
failReason
=
failReason
+
"addstudent info in DB is wrong;"
;
}
}
catch
(
Exception
e
)
{
result
=
result
&&
false
;
failReason
=
failReason
+
"cannot verify template_id info in DB;"
;
e
.
printStackTrace
();
}
}
// 是否验证数据库
/*
* if (!isProduct) {
*
* String
* data_res=jp.getString("data").substring(0,jp.getString(
* "data").length());
*
* System.out.println("data_res====="+ data_res ); try { String
* sql
* ="SELECT MAX(id) AS id FROM `n_package` WHERE template_id = "
* + template_id; //SELECT id FROM n_template ORDER BY id DESC
* LIMIT 1 ResultSet rs_bankcard = this.sqlFromDB(sql);
* rs_bankcard.last();
* System.out.println("after findedupack ============"+
* rs_bankcard.getString("id"));
* if(Integer.parseInt(rs_bankcard.getString("id")) >=
* Integer.parseInt("1")) {
* n_package_idList.add(rs_bankcard.getString("id")); }else {
* result = result && false; failReason = failReason +
* "edupack info in DB is wrong;"; }
*
*
* } catch (Exception e) { result = result && false; failReason
* = failReason + "cannot verify edupack info in DB;";
* e.printStackTrace(); } }
*/
}
}
...
...
nwn_Api_auto_test/src/com/offcn/api/nwn/service/checkUserToPackage.java
0 → 100644
View file @
c767a6f2
package
com
.
offcn
.
api
.
nwn
.
service
;
import
io.restassured.path.json.JsonPath
;
import
io.restassured.response.Response
;
import
java.sql.ResultSet
;
import
java.sql.SQLException
;
import
java.sql.Statement
;
import
java.text.SimpleDateFormat
;
import
java.util.Date
;
import
java.util.HashMap
;
import
java.util.Map
;
import
java.util.Random
;
import
org.json.simple.JSONArray
;
import
com.offcn.TestUnti.Log
;
import
com.offcn.TestUnti.MapUtil
;
import
com.offcn.TestUnti.RequestDataUtils
;
import
com.offcn.TestUnti.StringUtils
;
import
com.offcn.interfaces.API
;
import
com.offcn.process.NWN
;
import
com.offcn.process.TK
;
import
com.offcn.system.MyRequest
;
import
com.offcn.TestUnti.ListUtil
;
import
net.sf.json.JSONObject
;
/**
* 检测用户是否购买某学习包
*
* @author liyy
*
*/
public
class
checkUserToPackage
extends
NWN
implements
API
{
public
String
parameter
;
//参数集合
public
String
phone
;
//
public
String
package_id
;
public
String
sso_id
;
//
public
String
user_id
;
@Override
public
void
initialize
(
HashMap
<
String
,
Object
>
data
)
{
try
{
String
sql
=
"SELECT id ,sso_id FROM n_user ORDER BY id DESC LIMIT 1"
;
//SELECT id FROM n_template ORDER BY id DESC LIMIT 1
ResultSet
rs_bankcard
=
this
.
sqlFromDB
(
sql
);
rs_bankcard
.
last
();
sso_id
=
rs_bankcard
.
getString
(
"sso_id"
);
user_id
=
rs_bankcard
.
getString
(
"id"
);
System
.
out
.
println
(
"sso_id====="
+
sso_id
);
System
.
out
.
println
(
"user_id====="
+
user_id
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
System
.
out
.
println
((
"Integer.parseInt(user_id)%100)====="
+
(
Integer
.
parseInt
(
user_id
)%
100
)));
try
{
String
sql
=
"SELECT package_id FROM n_user_package_"
+(
Integer
.
parseInt
(
user_id
)%
100
)+
" where user_id="
+
user_id
;
//SELECT id FROM n_template ORDER BY id DESC LIMIT 1
System
.
out
.
println
(
"sql==="
+
sql
);
ResultSet
rs_bankcard
=
this
.
sqlFromDB_package
(
sql
);
rs_bankcard
.
last
();
package_id
=
rs_bankcard
.
getString
(
"package_id"
);
System
.
out
.
println
(
"package_id=== "
+
package_id
);
System
.
out
.
println
(
"n_package_idList=== "
+
n_package_idList
.
get
(
0
));
if
(
package_id
.
equals
(
n_package_idList
.
get
(
0
)))
{
System
.
out
.
println
(
"successful"
);
}
else
{
System
.
out
.
println
(
"fail"
);
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
}
@Override
public
HashMap
<
String
,
Object
>
handleInput
(
HashMap
<
String
,
Object
>
data
)
{
// 获取parameter对应的内容
parameter
=
MapUtil
.
getValue
(
"parameter"
,
data
);
package_id
=
MapUtil
.
getParameter_get
(
parameter
,
"package_id"
).
trim
();
String
sso_id_p
=
MapUtil
.
getParameter_get
(
parameter
,
"sso_id"
).
trim
();
if
((!
package_id
.
equals
(
""
))
&&
package_id
.
equals
(
"package_id"
))
{
package_id
=
ListUtil
.
getListValue
(
n_package_idList
,
0
);
parameter
=
parameter
.
replace
(
"package_id=package_id"
,
"package_id="
+
package_id
);
}
if
((!
sso_id_p
.
equals
(
""
))
&&
sso_id_p
.
equals
(
"sso_id"
))
{
parameter
=
parameter
.
replace
(
"sso_id=sso_id"
,
"sso_id="
+
sso_id
);
}
data
.
put
(
"parameter"
,
parameter
);
return
data
;
}
@Override
public
Response
SendRequest
(
HashMap
<
String
,
Object
>
data
,
String
Url
,
String
Request
)
{
// Map<String,String> m=new HashMap<String,String>();
// m.put("user_info", parameter);
//Response re = RequestDataUtils.Post_cooike_form_data(data, Url,"PHPSESSID",PHPSESSID,m);
//Response re = RequestDataUtils.Get_one_cookie_pre(data, Url, "PHPSESSID",PHPSESSID);
//parameter = MapUtil.getValue("parameter", data);
Map
<
String
,
String
>
cookies
=
new
HashMap
<
String
,
String
>();
cookies
.
put
(
"PHPSESSID"
,
PHPSESSID
);
/*Map<String,String> token=new HashMap<String,String>();
token.put("Authorization", tk_token);*/
MyRequest
myRequest
=
new
MyRequest
();
myRequest
.
setParameter
(
parameter
);
myRequest
.
setUrl
(
Url
);
myRequest
.
setRequest
(
Request
);
myRequest
.
setCookies
(
cookies
);
Response
re
=
RequestDataUtils
.
RestAssuredApi
(
data
,
myRequest
);
return
re
;
}
@Override
public
String
handleOutput
(
Response
re
,
HashMap
<
String
,
Object
>
data
)
{
JsonPath
jp
=
re
.
body
().
jsonPath
();
System
.
out
.
println
(
"jp===="
+
jp
);
boolean
result
=
true
;
String
failReason
=
""
;
String
json
=
re
.
asString
();
System
.
out
.
println
(
"response=========="
+
StringUtils
.
decodeUnicode
(
json
));
if
((
data
.
get
(
"statusCode"
)
!=
null
)
&&
(!
data
.
get
(
"statusCode"
).
toString
()
.
equals
(
String
.
valueOf
(
re
.
getStatusCode
()))))
{
result
=
result
&&
false
;
failReason
=
failReason
+
"statusCode is expected "
+
data
.
get
(
"statusCode"
).
toString
()
+
" but actually "
+
String
.
valueOf
(
re
.
getStatusCode
())
+
". "
;
}
if
(
json
.
length
()
!=
0
)
{
String
msg
=
StringUtils
.
decodeUnicode
(
getMsg
(
re
));
String
code
=
getCode
(
re
);
if
((
data
.
get
(
"code"
)
!=
null
)
&&
(
code
!=
null
)
&&
(!
code
.
equals
(
data
.
get
(
"code"
).
toString
())))
{
result
=
result
&&
false
;
failReason
=
failReason
+
"code is expected "
+
data
.
get
(
"code"
).
toString
()
+
" but actually "
+
jp
.
getString
(
"retcode"
)
+
"."
;
}
/*System.out.println((data.get("msg") != null));
System.out.println((msg != null));
System.out.println(data.get("msg").toString().length());
System.out.println(msg.length());
*/
if
((
data
.
get
(
"msg"
)
!=
null
)
&&
(
msg
!=
null
)
&&
(!
msg
.
equals
(
data
.
get
(
"msg"
).
toString
())))
{
result
=
result
&&
false
;
failReason
=
failReason
+
"msg is expected "
+
data
.
get
(
"msg"
).
toString
()
+
" but actually "
+
jp
.
getString
(
"msg"
)
+
"."
;
}
if
(
data
.
get
(
"custom"
)
!=
null
&&
json
!=
null
){
//如果自定义结果包含多个希望结果,也就是有逗号,那么就切割,包含比较。
if
(
data
.
get
(
"custom"
).
toString
().
contains
(
","
)){
String
[]
strCustomStrings
=
data
.
get
(
"custom"
).
toString
().
split
(
","
);
System
.
out
.
println
(
strCustomStrings
.
length
);
for
(
int
i
=
0
;
i
<
strCustomStrings
.
length
;
i
++){
if
(!
json
.
contains
(
strCustomStrings
[
i
])){
result
=
result
&&
false
;
failReason
=
failReason
+
"custom is expected "
+
data
.
get
(
"custom"
).
toString
()
+
" but actually "
+
strCustomStrings
[
i
]
+
"."
;
break
;
}
}
}
else
{
//如果只有一个希望结果,就直接包含比较。
if
(!
json
.
contains
(
data
.
get
(
"custom"
).
toString
())){
result
=
result
&&
false
;
failReason
=
failReason
+
"custom is expected "
+
data
.
get
(
"custom"
).
toString
()
+
" but actually "
+
data
.
get
(
"custom"
).
toString
()
+
"."
;
}
}
}
if
(
"0"
.
equals
(
code
)){
//创建后数据库在哪个表
//是否验证数据库
if
(!
isProduct
)
{
/*template_id=jp.getString("data.id").substring(0,jp.getString("data.id").length());
System.out.println("template_id====="+ template_id );
try {
String sql="SELECT deleted_at FROM `n_package` WHERE id = " + package_id;
//SELECT id FROM n_template ORDER BY id DESC LIMIT 1
ResultSet rs_bankcard = this.sqlFromDB(sql);
rs_bankcard.last();
System.out.println("after deleted_packate ============"+ rs_bankcard.getString("deleted_at"));
if(rs_bankcard.getString("deleted_at").contains("2019") )
{
}else {
result = result && false;
failReason = failReason + "deleted_packate is wrong;";
}
} catch (Exception e) {
result = result && false;
failReason = failReason + "cannot verify template_id info in DB;";
e.printStackTrace();
}*/
}
}
}
if
(
result
)
return
"Pass"
;
else
return
"Fail:"
+
failReason
;
}
}
nwn_Api_auto_test/src/com/offcn/api/nwn/service/checkVideoUrl.java
0 → 100644
View file @
c767a6f2
package
com
.
offcn
.
api
.
nwn
.
service
;
import
io.restassured.path.json.JsonPath
;
import
io.restassured.response.Response
;
import
java.sql.ResultSet
;
import
java.sql.SQLException
;
import
java.sql.Statement
;
import
java.text.SimpleDateFormat
;
import
java.util.Date
;
import
java.util.HashMap
;
import
java.util.Map
;
import
java.util.Random
;
import
org.json.simple.JSONArray
;
import
com.offcn.TestUnti.Log
;
import
com.offcn.TestUnti.MapUtil
;
import
com.offcn.TestUnti.RequestDataUtils
;
import
com.offcn.TestUnti.StringUtils
;
import
com.offcn.interfaces.API
;
import
com.offcn.process.NWN
;
import
com.offcn.process.TK
;
import
com.offcn.system.MyRequest
;
import
com.offcn.TestUnti.ListUtil
;
import
net.sf.json.JSONObject
;
/**
* 判断用户是否购买课件
*
* @author liyy
*
*/
public
class
checkVideoUrl
extends
NWN
implements
API
{
public
String
parameter
;
//参数集合
public
String
phone
;
//
public
String
package_id
;
public
String
sso_id
;
//
public
String
user_id
;
public
int
video_id
;
@Override
public
void
initialize
(
HashMap
<
String
,
Object
>
data
)
{
try
{
String
sql
=
"SELECT id ,sso_id FROM n_user ORDER BY id DESC LIMIT 1"
;
//SELECT id FROM n_template ORDER BY id DESC LIMIT 1
ResultSet
rs_bankcard
=
this
.
sqlFromDB
(
sql
);
rs_bankcard
.
last
();
sso_id
=
rs_bankcard
.
getString
(
"sso_id"
);
user_id
=
rs_bankcard
.
getString
(
"id"
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
try
{
String
sql
=
"SELECT package_id FROM n_user_package_"
+(
Integer
.
parseInt
(
user_id
)%
100
)+
" where user_id="
+
user_id
;
//SELECT id FROM n_template ORDER BY id DESC LIMIT 1
System
.
out
.
println
(
"sql==="
+
sql
);
ResultSet
rs_bankcard
=
this
.
sqlFromDB_package
(
sql
);
rs_bankcard
.
last
();
package_id
=
rs_bankcard
.
getString
(
"package_id"
);
System
.
out
.
println
(
"package_id=== "
+
package_id
);
System
.
out
.
println
(
"n_package_idList=== "
+
n_package_idList
.
get
(
0
));
if
(
package_id
.
equals
(
n_package_idList
.
get
(
0
)))
{
System
.
out
.
println
(
"successful"
);
}
else
{
System
.
out
.
println
(
"fail"
);
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
}
@Override
public
HashMap
<
String
,
Object
>
handleInput
(
HashMap
<
String
,
Object
>
data
)
{
// 获取parameter对应的内容
parameter
=
MapUtil
.
getValue
(
"parameter"
,
data
);
package_id
=
MapUtil
.
getParameter_get
(
parameter
,
"package_id"
).
trim
();
String
sso_id_p
=
MapUtil
.
getParameter_get
(
parameter
,
"sso_id"
).
trim
();
String
video_id_p
=
MapUtil
.
getParameter_get
(
parameter
,
"video_id"
).
trim
();
if
((!
package_id
.
equals
(
""
))
&&
package_id
.
equals
(
"package_id"
))
{
package_id
=
ListUtil
.
getListValue
(
n_package_idList
,
0
);
parameter
=
parameter
.
replace
(
"package_id=package_id"
,
"package_id="
+
package_id
);
}
if
((!
sso_id_p
.
equals
(
""
))
&&
sso_id_p
.
equals
(
"sso_id"
))
{
parameter
=
parameter
.
replace
(
"sso_id=sso_id"
,
"sso_id="
+
sso_id
);
}
if
((!
video_id_p
.
equals
(
""
))
&&
video_id_p
.
equals
(
"video_id"
))
{
parameter
=
parameter
.
replace
(
"video_id=video_id"
,
"video_id="
+
video_id
);
}
data
.
put
(
"parameter"
,
parameter
);
return
data
;
}
@Override
public
Response
SendRequest
(
HashMap
<
String
,
Object
>
data
,
String
Url
,
String
Request
)
{
// Map<String,String> m=new HashMap<String,String>();
// m.put("user_info", parameter);
//Response re = RequestDataUtils.Post_cooike_form_data(data, Url,"PHPSESSID",PHPSESSID,m);
//Response re = RequestDataUtils.Get_one_cookie_pre(data, Url, "PHPSESSID",PHPSESSID);
//parameter = MapUtil.getValue("parameter", data);
Map
<
String
,
String
>
cookies
=
new
HashMap
<
String
,
String
>();
cookies
.
put
(
"PHPSESSID"
,
PHPSESSID
);
/*Map<String,String> token=new HashMap<String,String>();
token.put("Authorization", tk_token);*/
MyRequest
myRequest
=
new
MyRequest
();
myRequest
.
setParameter
(
parameter
);
myRequest
.
setUrl
(
Url
);
myRequest
.
setRequest
(
Request
);
myRequest
.
setCookies
(
cookies
);
Response
re
=
RequestDataUtils
.
RestAssuredApi
(
data
,
myRequest
);
return
re
;
}
@Override
public
String
handleOutput
(
Response
re
,
HashMap
<
String
,
Object
>
data
)
{
JsonPath
jp
=
re
.
body
().
jsonPath
();
System
.
out
.
println
(
"jp===="
+
jp
);
boolean
result
=
true
;
String
failReason
=
""
;
String
json
=
re
.
asString
();
System
.
out
.
println
(
"response=========="
+
StringUtils
.
decodeUnicode
(
json
));
if
((
data
.
get
(
"statusCode"
)
!=
null
)
&&
(!
data
.
get
(
"statusCode"
).
toString
()
.
equals
(
String
.
valueOf
(
re
.
getStatusCode
()))))
{
result
=
result
&&
false
;
failReason
=
failReason
+
"statusCode is expected "
+
data
.
get
(
"statusCode"
).
toString
()
+
" but actually "
+
String
.
valueOf
(
re
.
getStatusCode
())
+
". "
;
}
if
(
json
.
length
()
!=
0
)
{
String
msg
=
StringUtils
.
decodeUnicode
(
getMsg
(
re
));
String
code
=
getCode
(
re
);
if
((
data
.
get
(
"code"
)
!=
null
)
&&
(
code
!=
null
)
&&
(!
code
.
equals
(
data
.
get
(
"code"
).
toString
())))
{
result
=
result
&&
false
;
failReason
=
failReason
+
"code is expected "
+
data
.
get
(
"code"
).
toString
()
+
" but actually "
+
jp
.
getString
(
"retcode"
)
+
"."
;
}
/*System.out.println((data.get("msg") != null));
System.out.println((msg != null));
System.out.println(data.get("msg").toString().length());
System.out.println(msg.length());
*/
if
((
data
.
get
(
"msg"
)
!=
null
)
&&
(
msg
!=
null
)
&&
(!
msg
.
equals
(
data
.
get
(
"msg"
).
toString
())))
{
result
=
result
&&
false
;
failReason
=
failReason
+
"msg is expected "
+
data
.
get
(
"msg"
).
toString
()
+
" but actually "
+
jp
.
getString
(
"msg"
)
+
"."
;
}
if
(
data
.
get
(
"custom"
)
!=
null
&&
json
!=
null
){
//如果自定义结果包含多个希望结果,也就是有逗号,那么就切割,包含比较。
if
(
data
.
get
(
"custom"
).
toString
().
contains
(
","
)){
String
[]
strCustomStrings
=
data
.
get
(
"custom"
).
toString
().
split
(
","
);
System
.
out
.
println
(
strCustomStrings
.
length
);
for
(
int
i
=
0
;
i
<
strCustomStrings
.
length
;
i
++){
if
(!
json
.
contains
(
strCustomStrings
[
i
])){
result
=
result
&&
false
;
failReason
=
failReason
+
"custom is expected "
+
data
.
get
(
"custom"
).
toString
()
+
" but actually "
+
strCustomStrings
[
i
]
+
"."
;
break
;
}
}
}
else
{
//如果只有一个希望结果,就直接包含比较。
if
(!
json
.
contains
(
data
.
get
(
"custom"
).
toString
())){
result
=
result
&&
false
;
failReason
=
failReason
+
"custom is expected "
+
data
.
get
(
"custom"
).
toString
()
+
" but actually "
+
data
.
get
(
"custom"
).
toString
()
+
"."
;
}
}
}
if
(
"0"
.
equals
(
code
)){
//创建后数据库在哪个表
//是否验证数据库
if
(!
isProduct
)
{
/*template_id=jp.getString("data.id").substring(0,jp.getString("data.id").length());
System.out.println("template_id====="+ template_id );
try {
String sql="SELECT deleted_at FROM `n_package` WHERE id = " + package_id;
//SELECT id FROM n_template ORDER BY id DESC LIMIT 1
ResultSet rs_bankcard = this.sqlFromDB(sql);
rs_bankcard.last();
System.out.println("after deleted_packate ============"+ rs_bankcard.getString("deleted_at"));
if(rs_bankcard.getString("deleted_at").contains("2019") )
{
}else {
result = result && false;
failReason = failReason + "deleted_packate is wrong;";
}
} catch (Exception e) {
result = result && false;
failReason = failReason + "cannot verify template_id info in DB;";
e.printStackTrace();
}*/
}
}
}
if
(
result
)
return
"Pass"
;
else
return
"Fail:"
+
failReason
;
}
}
nwn_Api_auto_test/src/com/offcn/api/nwn/service/checkVideoUrlByID.java
0 → 100644
View file @
c767a6f2
package
com
.
offcn
.
api
.
nwn
.
service
;
import
io.restassured.path.json.JsonPath
;
import
io.restassured.response.Response
;
import
java.sql.ResultSet
;
import
java.sql.SQLException
;
import
java.sql.Statement
;
import
java.text.SimpleDateFormat
;
import
java.util.Date
;
import
java.util.HashMap
;
import
java.util.Map
;
import
java.util.Random
;
import
org.json.simple.JSONArray
;
import
com.offcn.TestUnti.Log
;
import
com.offcn.TestUnti.MapUtil
;
import
com.offcn.TestUnti.RequestDataUtils
;
import
com.offcn.TestUnti.StringUtils
;
import
com.offcn.interfaces.API
;
import
com.offcn.process.NWN
;
import
com.offcn.process.TK
;
import
com.offcn.system.MyRequest
;
import
com.offcn.TestUnti.ListUtil
;
import
net.sf.json.JSONObject
;
/**
* 判断用户是否购买课件_通过层级ID
*
* @author liyy
*
*/
public
class
checkVideoUrlByID
extends
NWN
implements
API
{
public
String
parameter
;
//参数集合
public
String
phone
;
//
public
String
package_id
;
public
String
sso_id
;
//
public
String
user_id
;
public
int
video_id
;
@Override
public
void
initialize
(
HashMap
<
String
,
Object
>
data
)
{
try
{
String
sql
=
"SELECT id ,sso_id FROM n_user ORDER BY id DESC LIMIT 1"
;
//SELECT id FROM n_template ORDER BY id DESC LIMIT 1
ResultSet
rs_bankcard
=
this
.
sqlFromDB
(
sql
);
rs_bankcard
.
last
();
sso_id
=
rs_bankcard
.
getString
(
"sso_id"
);
user_id
=
rs_bankcard
.
getString
(
"id"
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
try
{
String
sql
=
"SELECT package_id FROM n_user_package_"
+(
Integer
.
parseInt
(
user_id
)%
100
)+
" where user_id="
+
user_id
;
//SELECT id FROM n_template ORDER BY id DESC LIMIT 1
System
.
out
.
println
(
"sql==="
+
sql
);
ResultSet
rs_bankcard
=
this
.
sqlFromDB_package
(
sql
);
rs_bankcard
.
last
();
package_id
=
rs_bankcard
.
getString
(
"package_id"
);
System
.
out
.
println
(
"package_id=== "
+
package_id
);
System
.
out
.
println
(
"n_package_idList=== "
+
n_package_idList
.
get
(
0
));
if
(
package_id
.
equals
(
n_package_idList
.
get
(
0
)))
{
System
.
out
.
println
(
"successful"
);
}
else
{
System
.
out
.
println
(
"fail"
);
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
}
@Override
public
HashMap
<
String
,
Object
>
handleInput
(
HashMap
<
String
,
Object
>
data
)
{
// 获取parameter对应的内容
parameter
=
MapUtil
.
getValue
(
"parameter"
,
data
);
package_id
=
MapUtil
.
getParameter_get
(
parameter
,
"package_id"
).
trim
();
String
sso_id_p
=
MapUtil
.
getParameter_get
(
parameter
,
"sso_id"
).
trim
();
String
video_id_p
=
MapUtil
.
getParameter_get
(
parameter
,
"video_id"
).
trim
();
if
((!
package_id
.
equals
(
""
))
&&
package_id
.
equals
(
"package_id"
))
{
package_id
=
ListUtil
.
getListValue
(
n_package_idList
,
0
);
parameter
=
parameter
.
replace
(
"package_id=package_id"
,
"package_id="
+
package_id
);
}
if
((!
sso_id_p
.
equals
(
""
))
&&
sso_id_p
.
equals
(
"sso_id"
))
{
parameter
=
parameter
.
replace
(
"sso_id=sso_id"
,
"sso_id="
+
sso_id
);
}
if
((!
video_id_p
.
equals
(
""
))
&&
video_id_p
.
equals
(
"video_id"
))
{
parameter
=
parameter
.
replace
(
"video_id=video_id"
,
"video_id="
+
video_id
);
}
data
.
put
(
"parameter"
,
parameter
);
return
data
;
}
@Override
public
Response
SendRequest
(
HashMap
<
String
,
Object
>
data
,
String
Url
,
String
Request
)
{
// Map<String,String> m=new HashMap<String,String>();
// m.put("user_info", parameter);
//Response re = RequestDataUtils.Post_cooike_form_data(data, Url,"PHPSESSID",PHPSESSID,m);
//Response re = RequestDataUtils.Get_one_cookie_pre(data, Url, "PHPSESSID",PHPSESSID);
//parameter = MapUtil.getValue("parameter", data);
Map
<
String
,
String
>
cookies
=
new
HashMap
<
String
,
String
>();
cookies
.
put
(
"PHPSESSID"
,
PHPSESSID
);
/*Map<String,String> token=new HashMap<String,String>();
token.put("Authorization", tk_token);*/
MyRequest
myRequest
=
new
MyRequest
();
myRequest
.
setParameter
(
parameter
);
myRequest
.
setUrl
(
Url
);
myRequest
.
setRequest
(
Request
);
myRequest
.
setCookies
(
cookies
);
Response
re
=
RequestDataUtils
.
RestAssuredApi
(
data
,
myRequest
);
return
re
;
}
@Override
public
String
handleOutput
(
Response
re
,
HashMap
<
String
,
Object
>
data
)
{
JsonPath
jp
=
re
.
body
().
jsonPath
();
System
.
out
.
println
(
"jp===="
+
jp
);
boolean
result
=
true
;
String
failReason
=
""
;
String
json
=
re
.
asString
();
System
.
out
.
println
(
"response=========="
+
StringUtils
.
decodeUnicode
(
json
));
if
((
data
.
get
(
"statusCode"
)
!=
null
)
&&
(!
data
.
get
(
"statusCode"
).
toString
()
.
equals
(
String
.
valueOf
(
re
.
getStatusCode
()))))
{
result
=
result
&&
false
;
failReason
=
failReason
+
"statusCode is expected "
+
data
.
get
(
"statusCode"
).
toString
()
+
" but actually "
+
String
.
valueOf
(
re
.
getStatusCode
())
+
". "
;
}
if
(
json
.
length
()
!=
0
)
{
String
msg
=
StringUtils
.
decodeUnicode
(
getMsg
(
re
));
String
code
=
getCode
(
re
);
if
((
data
.
get
(
"code"
)
!=
null
)
&&
(
code
!=
null
)
&&
(!
code
.
equals
(
data
.
get
(
"code"
).
toString
())))
{
result
=
result
&&
false
;
failReason
=
failReason
+
"code is expected "
+
data
.
get
(
"code"
).
toString
()
+
" but actually "
+
jp
.
getString
(
"retcode"
)
+
"."
;
}
/*System.out.println((data.get("msg") != null));
System.out.println((msg != null));
System.out.println(data.get("msg").toString().length());
System.out.println(msg.length());
*/
if
((
data
.
get
(
"msg"
)
!=
null
)
&&
(
msg
!=
null
)
&&
(!
msg
.
equals
(
data
.
get
(
"msg"
).
toString
())))
{
result
=
result
&&
false
;
failReason
=
failReason
+
"msg is expected "
+
data
.
get
(
"msg"
).
toString
()
+
" but actually "
+
jp
.
getString
(
"msg"
)
+
"."
;
}
if
(
data
.
get
(
"custom"
)
!=
null
&&
json
!=
null
){
//如果自定义结果包含多个希望结果,也就是有逗号,那么就切割,包含比较。
if
(
data
.
get
(
"custom"
).
toString
().
contains
(
","
)){
String
[]
strCustomStrings
=
data
.
get
(
"custom"
).
toString
().
split
(
","
);
System
.
out
.
println
(
strCustomStrings
.
length
);
for
(
int
i
=
0
;
i
<
strCustomStrings
.
length
;
i
++){
if
(!
json
.
contains
(
strCustomStrings
[
i
])){
result
=
result
&&
false
;
failReason
=
failReason
+
"custom is expected "
+
data
.
get
(
"custom"
).
toString
()
+
" but actually "
+
strCustomStrings
[
i
]
+
"."
;
break
;
}
}
}
else
{
//如果只有一个希望结果,就直接包含比较。
if
(!
json
.
contains
(
data
.
get
(
"custom"
).
toString
())){
result
=
result
&&
false
;
failReason
=
failReason
+
"custom is expected "
+
data
.
get
(
"custom"
).
toString
()
+
" but actually "
+
data
.
get
(
"custom"
).
toString
()
+
"."
;
}
}
}
if
(
"0"
.
equals
(
code
)){
//创建后数据库在哪个表
//是否验证数据库
if
(!
isProduct
)
{
/*template_id=jp.getString("data.id").substring(0,jp.getString("data.id").length());
System.out.println("template_id====="+ template_id );
try {
String sql="SELECT deleted_at FROM `n_package` WHERE id = " + package_id;
//SELECT id FROM n_template ORDER BY id DESC LIMIT 1
ResultSet rs_bankcard = this.sqlFromDB(sql);
rs_bankcard.last();
System.out.println("after deleted_packate ============"+ rs_bankcard.getString("deleted_at"));
if(rs_bankcard.getString("deleted_at").contains("2019") )
{
}else {
result = result && false;
failReason = failReason + "deleted_packate is wrong;";
}
} catch (Exception e) {
result = result && false;
failReason = failReason + "cannot verify template_id info in DB;";
e.printStackTrace();
}*/
}
}
}
if
(
result
)
return
"Pass"
;
else
return
"Fail:"
+
failReason
;
}
}
nwn_Api_auto_test/src/com/offcn/api/nwn/service/getPackNameList.java
0 → 100644
View file @
c767a6f2
package
com
.
offcn
.
api
.
nwn
.
service
;
import
io.restassured.path.json.JsonPath
;
import
io.restassured.response.Response
;
import
java.sql.ResultSet
;
import
java.sql.SQLException
;
import
java.sql.Statement
;
import
java.text.SimpleDateFormat
;
import
java.util.Date
;
import
java.util.HashMap
;
import
java.util.Map
;
import
java.util.Random
;
import
org.json.simple.JSONArray
;
import
com.offcn.TestUnti.Log
;
import
com.offcn.TestUnti.MapUtil
;
import
com.offcn.TestUnti.RequestDataUtils
;
import
com.offcn.TestUnti.StringUtils
;
import
com.offcn.interfaces.API
;
import
com.offcn.process.NWN
;
import
com.offcn.process.TK
;
import
com.offcn.system.MyRequest
;
import
com.offcn.TestUnti.ListUtil
;
import
net.sf.json.JSONObject
;
/**
* 获取班级名称列表
*
* @author liyy
*
*/
public
class
getPackNameList
extends
NWN
implements
API
{
public
String
parameter
;
//参数集合
public
String
template_id_1
;
//母板ID
public
String
id_list
;
public
String
package_id
;
// public String phone;//层级包id
@Override
public
void
initialize
(
HashMap
<
String
,
Object
>
data
)
{
}
@Override
public
HashMap
<
String
,
Object
>
handleInput
(
HashMap
<
String
,
Object
>
data
)
{
// 获取parameter对应的内容
parameter
=
MapUtil
.
getValue
(
"parameter"
,
data
);
template_id_1
=
MapUtil
.
getParameter_get
(
parameter
,
"template_id"
).
trim
();
timestamp
=
MapUtil
.
getParameter_get
(
parameter
,
"timestamp"
).
trim
();
id_list
=
MapUtil
.
getParameter_get
(
parameter
,
"id_list"
).
trim
();
if
((!
template_id_1
.
equals
(
""
))
&&
template_id_1
.
equals
(
"template_id"
))
{
template_id_1
=
template_id
;
parameter
=
parameter
.
replace
(
"template_id=template_id"
,
"template_id="
+
template_id_1
);
}
if
((!
id_list
.
equals
(
""
))
&&
id_list
.
equals
(
"id_list1"
))
{
package_id
=
ListUtil
.
getListValue
(
n_package_idList
,
0
);
System
.
out
.
println
(
"package_id =="
+
package_id
);
if
(
package_id
.
equals
(
""
))
{
id_list
=
"[779444]"
;
parameter
=
parameter
.
replace
(
"id_list=id_list1"
,
"id_list="
+
id_list
);
}
else
{
id_list
=
"[779444]"
;
parameter
=
parameter
.
replace
(
"id_list=id_list1"
,
"id_list="
+
id_list
);
}
}
if
((!
id_list
.
equals
(
""
))
&&
id_list
.
equals
(
"id_list2"
))
{
package_id
=
ListUtil
.
getListValue
(
n_package_idList
,
0
);
System
.
out
.
println
(
"package_id =="
+
package_id
);
if
(
package_id
.
equals
(
""
))
{
id_list
=
"[779444,779445]"
;
parameter
=
parameter
.
replace
(
"id_list=id_list2"
,
"id_list="
+
id_list
);
}
else
{
id_list
=
"["
+
package_id
+
","
+(
Integer
.
parseInt
(
package_id
)-
1
)+
"]"
;
parameter
=
parameter
.
replace
(
"id_list=id_list2"
,
"id_list="
+
id_list
);
}
}
if
((!
id_list
.
equals
(
""
))
&&
id_list
.
equals
(
"id_list"
))
{
package_id
=
ListUtil
.
getListValue
(
n_package_idList
,
0
);
System
.
out
.
println
(
"package_id =="
+
package_id
);
if
(
package_id
.
equals
(
""
))
{
id_list
=
"[779444,779445]"
;
parameter
=
parameter
.
replace
(
"id_list=id_list"
,
"id_list="
+
id_list
);
}
else
{
id_list
=
"["
+
package_id
+
","
+(
Integer
.
parseInt
(
package_id
)-
1
)+
"]"
;
parameter
=
parameter
.
replace
(
"id_list=id_list"
,
"id_list="
+
id_list
);
}
}
if
((!
timestamp
.
equals
(
""
))
&&
timestamp
.
equals
(
"timestamp"
))
{
Long
timeString
=
System
.
currentTimeMillis
();
timestamp
=
timeString
.
toString
().
substring
(
0
,
10
);
parameter
=
parameter
.
replace
(
"timestamp=timestamp"
,
"timestamp="
+
timestamp
);
}
data
.
put
(
"parameter"
,
parameter
);
return
data
;
}
@Override
public
Response
SendRequest
(
HashMap
<
String
,
Object
>
data
,
String
Url
,
String
Request
)
{
// Map<String,String> m=new HashMap<String,String>();
// m.put("user_info", parameter);
//Response re = RequestDataUtils.Post_cooike_form_data(data, Url,"PHPSESSID",PHPSESSID,m);
//Response re = RequestDataUtils.Get_one_cookie_pre(data, Url, "PHPSESSID",PHPSESSID);
//Response re = RequestDataUtils.Get_one_cookie(data, serviceURL, cookie1Name, cookie1value) //只能无参
// Response re = RequestDataUtils.Get_token(data, Url, "");
Map
<
String
,
String
>
cookies
=
new
HashMap
<
String
,
String
>();
cookies
.
put
(
"PHPSESSID"
,
PHPSESSID
);
/*Map<String,String> token=new HashMap<String,String>();
token.put("Authorization", tk_token);*/
MyRequest
myRequest
=
new
MyRequest
();
myRequest
.
setParameter
(
parameter
);
myRequest
.
setUrl
(
Url
);
myRequest
.
setRequest
(
Request
);
myRequest
.
setCookies
(
cookies
);
Response
re
=
RequestDataUtils
.
RestAssuredApi
(
data
,
myRequest
);
return
re
;
}
@Override
public
String
handleOutput
(
Response
re
,
HashMap
<
String
,
Object
>
data
)
{
JsonPath
jp
=
re
.
body
().
jsonPath
();
System
.
out
.
println
(
"jp===="
+
jp
);
boolean
result
=
true
;
String
failReason
=
""
;
String
json
=
re
.
asString
();
System
.
out
.
println
(
"response=========="
+
StringUtils
.
decodeUnicode
(
json
));
if
((
data
.
get
(
"statusCode"
)
!=
null
)
&&
(!
data
.
get
(
"statusCode"
).
toString
()
.
equals
(
String
.
valueOf
(
re
.
getStatusCode
()))))
{
result
=
result
&&
false
;
failReason
=
failReason
+
"statusCode is expected "
+
data
.
get
(
"statusCode"
).
toString
()
+
" but actually "
+
String
.
valueOf
(
re
.
getStatusCode
())
+
". "
;
}
if
(
json
.
length
()
!=
0
)
{
String
msg
=
StringUtils
.
decodeUnicode
(
getMsg
(
re
));
String
code
=
getCode
(
re
);
if
((
data
.
get
(
"code"
)
!=
null
)
&&
(
code
!=
null
)
&&
(!
code
.
equals
(
data
.
get
(
"code"
).
toString
())))
{
result
=
result
&&
false
;
failReason
=
failReason
+
"code is expected "
+
data
.
get
(
"code"
).
toString
()
+
" but actually "
+
jp
.
getString
(
"retcode"
)
+
"."
;
}
/*System.out.println((data.get("msg") != null));
System.out.println((msg != null));
System.out.println(data.get("msg").toString().length());
System.out.println(msg.length());
*/
if
((
data
.
get
(
"msg"
)
!=
null
)
&&
(
msg
!=
null
)
&&
(!
msg
.
equals
(
data
.
get
(
"msg"
).
toString
())))
{
result
=
result
&&
false
;
failReason
=
failReason
+
"msg is expected "
+
data
.
get
(
"msg"
).
toString
()
+
" but actually "
+
jp
.
getString
(
"msg"
)
+
"."
;
}
if
(
data
.
get
(
"custom"
)
!=
null
&&
json
!=
null
){
//如果自定义结果包含多个希望结果,也就是有逗号,那么就切割,包含比较。
if
(
data
.
get
(
"custom"
).
toString
().
contains
(
","
)){
String
[]
strCustomStrings
=
data
.
get
(
"custom"
).
toString
().
split
(
","
);
System
.
out
.
println
(
strCustomStrings
.
length
);
for
(
int
i
=
0
;
i
<
strCustomStrings
.
length
;
i
++){
if
(!
json
.
contains
(
strCustomStrings
[
i
])){
result
=
result
&&
false
;
failReason
=
failReason
+
"custom is expected "
+
data
.
get
(
"custom"
).
toString
()
+
" but actually "
+
strCustomStrings
[
i
]
+
"."
;
break
;
}
}
}
else
{
//如果只有一个希望结果,就直接包含比较。
if
(!
json
.
contains
(
data
.
get
(
"custom"
).
toString
())){
result
=
result
&&
false
;
failReason
=
failReason
+
"custom is expected "
+
data
.
get
(
"custom"
).
toString
()
+
" but actually "
+
data
.
get
(
"custom"
).
toString
()
+
"."
;
}
}
}
if
(
"0"
.
equals
(
code
)){
//创建后数据库在哪个表
//是否验证数据库
if
(!
isProduct
)
{
/*template_id=jp.getString("data.id").substring(0,jp.getString("data.id").length());
System.out.println("template_id====="+ template_id );
try {
String sql="SELECT deleted_at FROM `n_package` WHERE id = " + package_id;
//SELECT id FROM n_template ORDER BY id DESC LIMIT 1
ResultSet rs_bankcard = this.sqlFromDB(sql);
rs_bankcard.last();
System.out.println("after deleted_packate ============"+ rs_bankcard.getString("deleted_at"));
if(rs_bankcard.getString("deleted_at").contains("2019") )
{
}else {
result = result && false;
failReason = failReason + "deleted_packate is wrong;";
}
} catch (Exception e) {
result = result && false;
failReason = failReason + "cannot verify template_id info in DB;";
e.printStackTrace();
}*/
}
}
}
if
(
result
)
return
"Pass"
;
else
return
"Fail:"
+
failReason
;
}
}
nwn_Api_auto_test/src/com/offcn/api/nwn/service/getSinglePackageInfo.java
0 → 100644
View file @
c767a6f2
package
com
.
offcn
.
api
.
nwn
.
service
;
import
io.restassured.path.json.JsonPath
;
import
io.restassured.response.Response
;
import
java.sql.ResultSet
;
import
java.sql.SQLException
;
import
java.sql.Statement
;
import
java.text.SimpleDateFormat
;
import
java.util.Date
;
import
java.util.HashMap
;
import
java.util.Map
;
import
java.util.Random
;
import
org.json.simple.JSONArray
;
import
com.offcn.TestUnti.Log
;
import
com.offcn.TestUnti.MapUtil
;
import
com.offcn.TestUnti.RequestDataUtils
;
import
com.offcn.TestUnti.StringUtils
;
import
com.offcn.interfaces.API
;
import
com.offcn.process.NWN
;
import
com.offcn.process.TK
;
import
com.offcn.system.MyRequest
;
import
com.offcn.TestUnti.ListUtil
;
import
net.sf.json.JSONObject
;
/**
* 检测用户是否购买某学习包
*
* @author liyy
*
*/
public
class
getSinglePackageInfo
extends
NWN
implements
API
{
public
String
parameter
;
//参数集合
public
String
phone
;
//
public
String
package_id
;
// public String phone;//层级包id
@Override
public
void
initialize
(
HashMap
<
String
,
Object
>
data
)
{
}
@Override
public
HashMap
<
String
,
Object
>
handleInput
(
HashMap
<
String
,
Object
>
data
)
{
// 获取parameter对应的内容
parameter
=
MapUtil
.
getValue
(
"parameter"
,
data
);
package_id
=
MapUtil
.
getParameter_get
(
parameter
,
"package_id"
).
trim
();
if
((!
package_id
.
equals
(
""
))
&&
package_id
.
equals
(
"package_id"
))
{
package_id
=
ListUtil
.
getListValue
(
n_package_idList
,
0
);
parameter
=
parameter
.
replace
(
"package_id=package_id"
,
"package_id="
+
package_id
);
}
data
.
put
(
"parameter"
,
parameter
);
return
data
;
}
@Override
public
Response
SendRequest
(
HashMap
<
String
,
Object
>
data
,
String
Url
,
String
Request
)
{
// Map<String,String> m=new HashMap<String,String>();
// m.put("user_info", parameter);
//Response re = RequestDataUtils.Post_cooike_form_data(data, Url,"PHPSESSID",PHPSESSID,m);
//Response re = RequestDataUtils.Get_one_cookie_pre(data, Url, "PHPSESSID",PHPSESSID);
//parameter = MapUtil.getValue("parameter", data);
Map
<
String
,
String
>
cookies
=
new
HashMap
<
String
,
String
>();
cookies
.
put
(
"PHPSESSID"
,
PHPSESSID
);
/*Map<String,String> token=new HashMap<String,String>();
token.put("Authorization", tk_token);*/
MyRequest
myRequest
=
new
MyRequest
();
myRequest
.
setParameter
(
parameter
);
myRequest
.
setUrl
(
Url
);
myRequest
.
setRequest
(
Request
);
myRequest
.
setCookies
(
cookies
);
Response
re
=
RequestDataUtils
.
RestAssuredApi
(
data
,
myRequest
);
return
re
;
}
@Override
public
String
handleOutput
(
Response
re
,
HashMap
<
String
,
Object
>
data
)
{
JsonPath
jp
=
re
.
body
().
jsonPath
();
System
.
out
.
println
(
"jp===="
+
jp
);
boolean
result
=
true
;
String
failReason
=
""
;
String
json
=
re
.
asString
();
System
.
out
.
println
(
"response=========="
+
StringUtils
.
decodeUnicode
(
json
));
if
((
data
.
get
(
"statusCode"
)
!=
null
)
&&
(!
data
.
get
(
"statusCode"
).
toString
()
.
equals
(
String
.
valueOf
(
re
.
getStatusCode
()))))
{
result
=
result
&&
false
;
failReason
=
failReason
+
"statusCode is expected "
+
data
.
get
(
"statusCode"
).
toString
()
+
" but actually "
+
String
.
valueOf
(
re
.
getStatusCode
())
+
". "
;
}
if
(
json
.
length
()
!=
0
)
{
String
msg
=
StringUtils
.
decodeUnicode
(
getMsg
(
re
));
String
code
=
getCode
(
re
);
if
((
data
.
get
(
"code"
)
!=
null
)
&&
(
code
!=
null
)
&&
(!
code
.
equals
(
data
.
get
(
"code"
).
toString
())))
{
result
=
result
&&
false
;
failReason
=
failReason
+
"code is expected "
+
data
.
get
(
"code"
).
toString
()
+
" but actually "
+
jp
.
getString
(
"retcode"
)
+
"."
;
}
/*System.out.println((data.get("msg") != null));
System.out.println((msg != null));
System.out.println(data.get("msg").toString().length());
System.out.println(msg.length());
*/
if
((
data
.
get
(
"msg"
)
!=
null
)
&&
(
msg
!=
null
)
&&
(!
msg
.
equals
(
data
.
get
(
"msg"
).
toString
())))
{
result
=
result
&&
false
;
failReason
=
failReason
+
"msg is expected "
+
data
.
get
(
"msg"
).
toString
()
+
" but actually "
+
jp
.
getString
(
"msg"
)
+
"."
;
}
if
(
data
.
get
(
"custom"
)
!=
null
&&
json
!=
null
){
//如果自定义结果包含多个希望结果,也就是有逗号,那么就切割,包含比较。
if
(
data
.
get
(
"custom"
).
toString
().
contains
(
","
)){
String
[]
strCustomStrings
=
data
.
get
(
"custom"
).
toString
().
split
(
","
);
System
.
out
.
println
(
strCustomStrings
.
length
);
for
(
int
i
=
0
;
i
<
strCustomStrings
.
length
;
i
++){
if
(!
json
.
contains
(
strCustomStrings
[
i
])){
result
=
result
&&
false
;
failReason
=
failReason
+
"custom is expected "
+
data
.
get
(
"custom"
).
toString
()
+
" but actually "
+
strCustomStrings
[
i
]
+
"."
;
break
;
}
}
}
else
{
//如果只有一个希望结果,就直接包含比较。
if
(!
json
.
contains
(
data
.
get
(
"custom"
).
toString
())){
result
=
result
&&
false
;
failReason
=
failReason
+
"custom is expected "
+
data
.
get
(
"custom"
).
toString
()
+
" but actually "
+
data
.
get
(
"custom"
).
toString
()
+
"."
;
}
}
}
if
(
"0"
.
equals
(
code
)){
//创建后数据库在哪个表
//是否验证数据库
if
(!
isProduct
)
{
/*template_id=jp.getString("data.id").substring(0,jp.getString("data.id").length());
System.out.println("template_id====="+ template_id );
try {
String sql="SELECT deleted_at FROM `n_package` WHERE id = " + package_id;
//SELECT id FROM n_template ORDER BY id DESC LIMIT 1
ResultSet rs_bankcard = this.sqlFromDB(sql);
rs_bankcard.last();
System.out.println("after deleted_packate ============"+ rs_bankcard.getString("deleted_at"));
if(rs_bankcard.getString("deleted_at").contains("2019") )
{
}else {
result = result && false;
failReason = failReason + "deleted_packate is wrong;";
}
} catch (Exception e) {
result = result && false;
failReason = failReason + "cannot verify template_id info in DB;";
e.printStackTrace();
}*/
}
}
}
if
(
result
)
return
"Pass"
;
else
return
"Fail:"
+
failReason
;
}
}
nwn_Api_auto_test/src/com/offcn/api/nwn/service/getUserPackage.java
0 → 100644
View file @
c767a6f2
package
com
.
offcn
.
api
.
nwn
.
service
;
import
io.restassured.path.json.JsonPath
;
import
io.restassured.response.Response
;
import
java.sql.ResultSet
;
import
java.sql.SQLException
;
import
java.sql.Statement
;
import
java.text.SimpleDateFormat
;
import
java.util.Date
;
import
java.util.HashMap
;
import
java.util.Map
;
import
java.util.Random
;
import
org.json.simple.JSONArray
;
import
com.offcn.TestUnti.Log
;
import
com.offcn.TestUnti.MapUtil
;
import
com.offcn.TestUnti.RequestDataUtils
;
import
com.offcn.TestUnti.StringUtils
;
import
com.offcn.interfaces.API
;
import
com.offcn.process.NWN
;
import
com.offcn.process.TK
;
import
com.offcn.system.MyRequest
;
import
com.offcn.TestUnti.ListUtil
;
import
net.sf.json.JSONObject
;
/**
* 获取班级名称列表
*
* @author liyy
*
*/
public
class
getUserPackage
extends
NWN
implements
API
{
public
String
parameter
;
//参数集合
public
String
phone
;
//
public
String
id_list
;
public
String
package_id
;
// public String phone;//层级包id
@Override
public
void
initialize
(
HashMap
<
String
,
Object
>
data
)
{
}
@Override
public
HashMap
<
String
,
Object
>
handleInput
(
HashMap
<
String
,
Object
>
data
)
{
// 获取parameter对应的内容
parameter
=
MapUtil
.
getValue
(
"parameter"
,
data
);
phone
=
MapUtil
.
getParameter_get
(
parameter
,
"phone"
).
trim
();
if
((!
phone
.
equals
(
""
))
&&
phone
.
equals
(
"phone"
))
{
phone
=
"1331"
+
(
new
Random
().
nextInt
(
9000000
)
+
1000000
);
parameter
=
parameter
.
replace
(
"phone=phone"
,
"phone="
+
phone
);
}
data
.
put
(
"parameter"
,
parameter
);
return
data
;
}
@Override
public
Response
SendRequest
(
HashMap
<
String
,
Object
>
data
,
String
Url
,
String
Request
)
{
// Map<String,String> m=new HashMap<String,String>();
// m.put("user_info", parameter);
//Response re = RequestDataUtils.Post_cooike_form_data(data, Url,"PHPSESSID",PHPSESSID,m);
//Response re = RequestDataUtils.Get_one_cookie_pre(data, Url, "PHPSESSID",PHPSESSID);
parameter
=
MapUtil
.
getValue
(
"parameter"
,
data
);
Map
<
String
,
String
>
cookies
=
new
HashMap
<
String
,
String
>();
cookies
.
put
(
"PHPSESSID"
,
PHPSESSID
);
/*Map<String,String> token=new HashMap<String,String>();
token.put("Authorization", tk_token);*/
MyRequest
myRequest
=
new
MyRequest
();
myRequest
.
setParameter
(
parameter
);
myRequest
.
setUrl
(
Url
);
myRequest
.
setRequest
(
Request
);
myRequest
.
setCookies
(
cookies
);
Response
re
=
RequestDataUtils
.
RestAssuredApi
(
data
,
myRequest
);
return
re
;
}
@Override
public
String
handleOutput
(
Response
re
,
HashMap
<
String
,
Object
>
data
)
{
JsonPath
jp
=
re
.
body
().
jsonPath
();
System
.
out
.
println
(
"jp===="
+
jp
);
boolean
result
=
true
;
String
failReason
=
""
;
String
json
=
re
.
asString
();
System
.
out
.
println
(
"response=========="
+
StringUtils
.
decodeUnicode
(
json
));
if
((
data
.
get
(
"statusCode"
)
!=
null
)
&&
(!
data
.
get
(
"statusCode"
).
toString
()
.
equals
(
String
.
valueOf
(
re
.
getStatusCode
()))))
{
result
=
result
&&
false
;
failReason
=
failReason
+
"statusCode is expected "
+
data
.
get
(
"statusCode"
).
toString
()
+
" but actually "
+
String
.
valueOf
(
re
.
getStatusCode
())
+
". "
;
}
if
(
json
.
length
()
!=
0
)
{
String
msg
=
StringUtils
.
decodeUnicode
(
getMsg
(
re
));
String
code
=
getCode
(
re
);
if
((
data
.
get
(
"code"
)
!=
null
)
&&
(
code
!=
null
)
&&
(!
code
.
equals
(
data
.
get
(
"code"
).
toString
())))
{
result
=
result
&&
false
;
failReason
=
failReason
+
"code is expected "
+
data
.
get
(
"code"
).
toString
()
+
" but actually "
+
jp
.
getString
(
"retcode"
)
+
"."
;
}
/*System.out.println((data.get("msg") != null));
System.out.println((msg != null));
System.out.println(data.get("msg").toString().length());
System.out.println(msg.length());
*/
if
((
data
.
get
(
"msg"
)
!=
null
)
&&
(
msg
!=
null
)
&&
(!
msg
.
equals
(
data
.
get
(
"msg"
).
toString
())))
{
result
=
result
&&
false
;
failReason
=
failReason
+
"msg is expected "
+
data
.
get
(
"msg"
).
toString
()
+
" but actually "
+
jp
.
getString
(
"msg"
)
+
"."
;
}
if
(
data
.
get
(
"custom"
)
!=
null
&&
json
!=
null
){
//如果自定义结果包含多个希望结果,也就是有逗号,那么就切割,包含比较。
if
(
data
.
get
(
"custom"
).
toString
().
contains
(
","
)){
String
[]
strCustomStrings
=
data
.
get
(
"custom"
).
toString
().
split
(
","
);
System
.
out
.
println
(
strCustomStrings
.
length
);
for
(
int
i
=
0
;
i
<
strCustomStrings
.
length
;
i
++){
if
(!
json
.
contains
(
strCustomStrings
[
i
])){
result
=
result
&&
false
;
failReason
=
failReason
+
"custom is expected "
+
data
.
get
(
"custom"
).
toString
()
+
" but actually "
+
strCustomStrings
[
i
]
+
"."
;
break
;
}
}
}
else
{
//如果只有一个希望结果,就直接包含比较。
if
(!
json
.
contains
(
data
.
get
(
"custom"
).
toString
())){
result
=
result
&&
false
;
failReason
=
failReason
+
"custom is expected "
+
data
.
get
(
"custom"
).
toString
()
+
" but actually "
+
data
.
get
(
"custom"
).
toString
()
+
"."
;
}
}
}
if
(
"0"
.
equals
(
code
)){
//创建后数据库在哪个表
//是否验证数据库
if
(!
isProduct
)
{
/*template_id=jp.getString("data.id").substring(0,jp.getString("data.id").length());
System.out.println("template_id====="+ template_id );
try {
String sql="SELECT deleted_at FROM `n_package` WHERE id = " + package_id;
//SELECT id FROM n_template ORDER BY id DESC LIMIT 1
ResultSet rs_bankcard = this.sqlFromDB(sql);
rs_bankcard.last();
System.out.println("after deleted_packate ============"+ rs_bankcard.getString("deleted_at"));
if(rs_bankcard.getString("deleted_at").contains("2019") )
{
}else {
result = result && false;
failReason = failReason + "deleted_packate is wrong;";
}
} catch (Exception e) {
result = result && false;
failReason = failReason + "cannot verify template_id info in DB;";
e.printStackTrace();
}*/
}
}
}
if
(
result
)
return
"Pass"
;
else
return
"Fail:"
+
failReason
;
}
}
nwn_Api_auto_test/src/com/offcn/api/nwn/service/getVideoInfo.java
0 → 100644
View file @
c767a6f2
package
com
.
offcn
.
api
.
nwn
.
service
;
import
io.restassured.path.json.JsonPath
;
import
io.restassured.response.Response
;
import
java.sql.ResultSet
;
import
java.sql.SQLException
;
import
java.sql.Statement
;
import
java.text.SimpleDateFormat
;
import
java.util.Date
;
import
java.util.HashMap
;
import
java.util.Map
;
import
java.util.Random
;
import
org.json.simple.JSONArray
;
import
com.offcn.TestUnti.Log
;
import
com.offcn.TestUnti.MapUtil
;
import
com.offcn.TestUnti.RequestDataUtils
;
import
com.offcn.TestUnti.StringUtils
;
import
com.offcn.interfaces.API
;
import
com.offcn.process.NWN
;
import
com.offcn.process.TK
;
import
com.offcn.system.MyRequest
;
import
com.offcn.TestUnti.ListUtil
;
import
net.sf.json.JSONObject
;
/**
* 获取视频组件详情[通过视频ID]
*
* @author liyy
*
*/
public
class
getVideoInfo
extends
NWN
implements
API
{
public
String
parameter
;
//参数集合
public
String
phone
;
//
public
String
package_id
;
public
String
sso_id
;
//
public
String
user_id
;
public
int
video_id
;
@Override
public
void
initialize
(
HashMap
<
String
,
Object
>
data
)
{
}
@Override
public
HashMap
<
String
,
Object
>
handleInput
(
HashMap
<
String
,
Object
>
data
)
{
// 获取parameter对应的内容
parameter
=
MapUtil
.
getValue
(
"parameter"
,
data
);
package_id
=
MapUtil
.
getParameter_get
(
parameter
,
"package_id"
).
trim
();
String
sso_id_p
=
MapUtil
.
getParameter_get
(
parameter
,
"sso_id"
).
trim
();
String
video_id_p
=
MapUtil
.
getParameter_get
(
parameter
,
"video_id"
).
trim
();
if
((!
package_id
.
equals
(
""
))
&&
package_id
.
equals
(
"package_id"
))
{
parameter
=
parameter
.
replace
(
"package_id=package_id"
,
"package_id="
+
4026732
);
}
if
((!
video_id_p
.
equals
(
""
))
&&
video_id_p
.
equals
(
"video_id"
))
{
parameter
=
parameter
.
replace
(
"video_id=video_id"
,
"video_id="
+
920
);
}
data
.
put
(
"parameter"
,
parameter
);
return
data
;
}
@Override
public
Response
SendRequest
(
HashMap
<
String
,
Object
>
data
,
String
Url
,
String
Request
)
{
// Map<String,String> m=new HashMap<String,String>();
// m.put("user_info", parameter);
//Response re = RequestDataUtils.Post_cooike_form_data(data, Url,"PHPSESSID",PHPSESSID,m);
//Response re = RequestDataUtils.Get_one_cookie_pre(data, Url, "PHPSESSID",PHPSESSID);
//parameter = MapUtil.getValue("parameter", data);
Map
<
String
,
String
>
cookies
=
new
HashMap
<
String
,
String
>();
cookies
.
put
(
"PHPSESSID"
,
PHPSESSID
);
/*Map<String,String> token=new HashMap<String,String>();
token.put("Authorization", tk_token);*/
MyRequest
myRequest
=
new
MyRequest
();
myRequest
.
setParameter
(
parameter
);
myRequest
.
setUrl
(
Url
);
myRequest
.
setRequest
(
Request
);
myRequest
.
setCookies
(
cookies
);
Response
re
=
RequestDataUtils
.
RestAssuredApi
(
data
,
myRequest
);
return
re
;
}
@Override
public
String
handleOutput
(
Response
re
,
HashMap
<
String
,
Object
>
data
)
{
JsonPath
jp
=
re
.
body
().
jsonPath
();
System
.
out
.
println
(
"jp===="
+
jp
);
boolean
result
=
true
;
String
failReason
=
""
;
String
json
=
re
.
asString
();
System
.
out
.
println
(
"response=========="
+
StringUtils
.
decodeUnicode
(
json
));
if
((
data
.
get
(
"statusCode"
)
!=
null
)
&&
(!
data
.
get
(
"statusCode"
).
toString
()
.
equals
(
String
.
valueOf
(
re
.
getStatusCode
()))))
{
result
=
result
&&
false
;
failReason
=
failReason
+
"statusCode is expected "
+
data
.
get
(
"statusCode"
).
toString
()
+
" but actually "
+
String
.
valueOf
(
re
.
getStatusCode
())
+
". "
;
}
if
(
json
.
length
()
!=
0
)
{
String
msg
=
StringUtils
.
decodeUnicode
(
getMsg
(
re
));
String
code
=
getCode
(
re
);
if
((
data
.
get
(
"code"
)
!=
null
)
&&
(
code
!=
null
)
&&
(!
code
.
equals
(
data
.
get
(
"code"
).
toString
())))
{
result
=
result
&&
false
;
failReason
=
failReason
+
"code is expected "
+
data
.
get
(
"code"
).
toString
()
+
" but actually "
+
jp
.
getString
(
"retcode"
)
+
"."
;
}
/*System.out.println((data.get("msg") != null));
System.out.println((msg != null));
System.out.println(data.get("msg").toString().length());
System.out.println(msg.length());
*/
if
((
data
.
get
(
"msg"
)
!=
null
)
&&
(
msg
!=
null
)
&&
(!
msg
.
equals
(
data
.
get
(
"msg"
).
toString
())))
{
result
=
result
&&
false
;
failReason
=
failReason
+
"msg is expected "
+
data
.
get
(
"msg"
).
toString
()
+
" but actually "
+
jp
.
getString
(
"msg"
)
+
"."
;
}
if
(
data
.
get
(
"custom"
)
!=
null
&&
json
!=
null
){
//如果自定义结果包含多个希望结果,也就是有逗号,那么就切割,包含比较。
if
(
data
.
get
(
"custom"
).
toString
().
contains
(
","
)){
String
[]
strCustomStrings
=
data
.
get
(
"custom"
).
toString
().
split
(
","
);
System
.
out
.
println
(
strCustomStrings
.
length
);
for
(
int
i
=
0
;
i
<
strCustomStrings
.
length
;
i
++){
System
.
out
.
println
(
"i==="
+
i
);
System
.
out
.
println
(
"strCustomStrings[i]======"
+
strCustomStrings
[
i
]);
if
(!
json
.
contains
(
strCustomStrings
[
i
])){
result
=
result
&&
false
;
failReason
=
failReason
+
"custom is expected "
+
data
.
get
(
"custom"
).
toString
()
+
" but actually "
+
strCustomStrings
[
i
]
+
"."
;
break
;
}
}
}
else
{
//如果只有一个希望结果,就直接包含比较。
if
(!
json
.
contains
(
data
.
get
(
"custom"
).
toString
())){
result
=
result
&&
false
;
failReason
=
failReason
+
"custom is expected "
+
data
.
get
(
"custom"
).
toString
()
+
" but actually "
+
data
.
get
(
"custom"
).
toString
()
+
"."
;
}
}
}
if
(
"0"
.
equals
(
code
)){
//创建后数据库在哪个表
//是否验证数据库
if
(!
isProduct
)
{
/*template_id=jp.getString("data.id").substring(0,jp.getString("data.id").length());
System.out.println("template_id====="+ template_id );
try {
String sql="SELECT deleted_at FROM `n_package` WHERE id = " + package_id;
//SELECT id FROM n_template ORDER BY id DESC LIMIT 1
ResultSet rs_bankcard = this.sqlFromDB(sql);
rs_bankcard.last();
System.out.println("after deleted_packate ============"+ rs_bankcard.getString("deleted_at"));
if(rs_bankcard.getString("deleted_at").contains("2019") )
{
}else {
result = result && false;
failReason = failReason + "deleted_packate is wrong;";
}
} catch (Exception e) {
result = result && false;
failReason = failReason + "cannot verify template_id info in DB;";
e.printStackTrace();
}*/
}
}
}
if
(
result
)
return
"Pass"
;
else
return
"Fail:"
+
failReason
;
}
}
nwn_Api_auto_test/src/com/offcn/api/nwn/service/getVideoInfoByID.java
0 → 100644
View file @
c767a6f2
package
com
.
offcn
.
api
.
nwn
.
service
;
import
io.restassured.path.json.JsonPath
;
import
io.restassured.response.Response
;
import
java.sql.ResultSet
;
import
java.sql.SQLException
;
import
java.sql.Statement
;
import
java.text.SimpleDateFormat
;
import
java.util.Date
;
import
java.util.HashMap
;
import
java.util.Map
;
import
java.util.Random
;
import
org.json.simple.JSONArray
;
import
com.offcn.TestUnti.Log
;
import
com.offcn.TestUnti.MapUtil
;
import
com.offcn.TestUnti.RequestDataUtils
;
import
com.offcn.TestUnti.StringUtils
;
import
com.offcn.interfaces.API
;
import
com.offcn.process.NWN
;
import
com.offcn.process.TK
;
import
com.offcn.system.MyRequest
;
import
com.offcn.TestUnti.ListUtil
;
import
net.sf.json.JSONObject
;
/**
* 获取视频组件详情[通过视频ID]
*
* @author liyy
*
*/
public
class
getVideoInfoByID
extends
NWN
implements
API
{
public
String
parameter
;
//参数集合
public
String
phone
;
//
public
String
package_id
;
public
String
sso_id
;
//
public
String
user_id
;
public
int
video_id
;
@Override
public
void
initialize
(
HashMap
<
String
,
Object
>
data
)
{
}
@Override
public
HashMap
<
String
,
Object
>
handleInput
(
HashMap
<
String
,
Object
>
data
)
{
// 获取parameter对应的内容
parameter
=
MapUtil
.
getValue
(
"parameter"
,
data
);
package_id
=
MapUtil
.
getParameter_get
(
parameter
,
"package_id"
).
trim
();
String
sso_id_p
=
MapUtil
.
getParameter_get
(
parameter
,
"sso_id"
).
trim
();
String
video_id_p
=
MapUtil
.
getParameter_get
(
parameter
,
"video_id"
).
trim
();
if
((!
package_id
.
equals
(
""
))
&&
package_id
.
equals
(
"package_id"
))
{
parameter
=
parameter
.
replace
(
"package_id=package_id"
,
"package_id="
+
4026732
);
}
data
.
put
(
"parameter"
,
parameter
);
return
data
;
}
@Override
public
Response
SendRequest
(
HashMap
<
String
,
Object
>
data
,
String
Url
,
String
Request
)
{
// Map<String,String> m=new HashMap<String,String>();
// m.put("user_info", parameter);
//Response re = RequestDataUtils.Post_cooike_form_data(data, Url,"PHPSESSID",PHPSESSID,m);
//Response re = RequestDataUtils.Get_one_cookie_pre(data, Url, "PHPSESSID",PHPSESSID);
//parameter = MapUtil.getValue("parameter", data);
Map
<
String
,
String
>
cookies
=
new
HashMap
<
String
,
String
>();
cookies
.
put
(
"PHPSESSID"
,
PHPSESSID
);
/*Map<String,String> token=new HashMap<String,String>();
token.put("Authorization", tk_token);*/
MyRequest
myRequest
=
new
MyRequest
();
myRequest
.
setParameter
(
parameter
);
myRequest
.
setUrl
(
Url
);
myRequest
.
setRequest
(
Request
);
myRequest
.
setCookies
(
cookies
);
Response
re
=
RequestDataUtils
.
RestAssuredApi
(
data
,
myRequest
);
return
re
;
}
@Override
public
String
handleOutput
(
Response
re
,
HashMap
<
String
,
Object
>
data
)
{
JsonPath
jp
=
re
.
body
().
jsonPath
();
System
.
out
.
println
(
"jp===="
+
jp
);
boolean
result
=
true
;
String
failReason
=
""
;
String
json
=
re
.
asString
();
System
.
out
.
println
(
"response=========="
+
StringUtils
.
decodeUnicode
(
json
));
if
((
data
.
get
(
"statusCode"
)
!=
null
)
&&
(!
data
.
get
(
"statusCode"
).
toString
()
.
equals
(
String
.
valueOf
(
re
.
getStatusCode
()))))
{
result
=
result
&&
false
;
failReason
=
failReason
+
"statusCode is expected "
+
data
.
get
(
"statusCode"
).
toString
()
+
" but actually "
+
String
.
valueOf
(
re
.
getStatusCode
())
+
". "
;
}
if
(
json
.
length
()
!=
0
)
{
String
msg
=
StringUtils
.
decodeUnicode
(
getMsg
(
re
));
String
code
=
getCode
(
re
);
if
((
data
.
get
(
"code"
)
!=
null
)
&&
(
code
!=
null
)
&&
(!
code
.
equals
(
data
.
get
(
"code"
).
toString
())))
{
result
=
result
&&
false
;
failReason
=
failReason
+
"code is expected "
+
data
.
get
(
"code"
).
toString
()
+
" but actually "
+
jp
.
getString
(
"retcode"
)
+
"."
;
}
/*System.out.println((data.get("msg") != null));
System.out.println((msg != null));
System.out.println(data.get("msg").toString().length());
System.out.println(msg.length());
*/
if
((
data
.
get
(
"msg"
)
!=
null
)
&&
(
msg
!=
null
)
&&
(!
msg
.
equals
(
data
.
get
(
"msg"
).
toString
())))
{
result
=
result
&&
false
;
failReason
=
failReason
+
"msg is expected "
+
data
.
get
(
"msg"
).
toString
()
+
" but actually "
+
jp
.
getString
(
"msg"
)
+
"."
;
}
if
(
data
.
get
(
"custom"
)
!=
null
&&
json
!=
null
){
//如果自定义结果包含多个希望结果,也就是有逗号,那么就切割,包含比较。
if
(
data
.
get
(
"custom"
).
toString
().
contains
(
","
)){
String
[]
strCustomStrings
=
data
.
get
(
"custom"
).
toString
().
split
(
","
);
System
.
out
.
println
(
strCustomStrings
.
length
);
for
(
int
i
=
0
;
i
<
strCustomStrings
.
length
;
i
++){
System
.
out
.
println
(
"i==="
+
i
);
System
.
out
.
println
(
"strCustomStrings[i]======"
+
strCustomStrings
[
i
]);
if
(!
json
.
contains
(
strCustomStrings
[
i
])){
result
=
result
&&
false
;
failReason
=
failReason
+
"custom is expected "
+
data
.
get
(
"custom"
).
toString
()
+
" but actually "
+
strCustomStrings
[
i
]
+
"."
;
break
;
}
}
}
else
{
//如果只有一个希望结果,就直接包含比较。
if
(!
json
.
contains
(
data
.
get
(
"custom"
).
toString
())){
result
=
result
&&
false
;
failReason
=
failReason
+
"custom is expected "
+
data
.
get
(
"custom"
).
toString
()
+
" but actually "
+
data
.
get
(
"custom"
).
toString
()
+
"."
;
}
}
}
if
(
"0"
.
equals
(
code
)){
//创建后数据库在哪个表
//是否验证数据库
if
(!
isProduct
)
{
/*template_id=jp.getString("data.id").substring(0,jp.getString("data.id").length());
System.out.println("template_id====="+ template_id );
try {
String sql="SELECT deleted_at FROM `n_package` WHERE id = " + package_id;
//SELECT id FROM n_template ORDER BY id DESC LIMIT 1
ResultSet rs_bankcard = this.sqlFromDB(sql);
rs_bankcard.last();
System.out.println("after deleted_packate ============"+ rs_bankcard.getString("deleted_at"));
if(rs_bankcard.getString("deleted_at").contains("2019") )
{
}else {
result = result && false;
failReason = failReason + "deleted_packate is wrong;";
}
} catch (Exception e) {
result = result && false;
failReason = failReason + "cannot verify template_id info in DB;";
e.printStackTrace();
}*/
}
}
}
if
(
result
)
return
"Pass"
;
else
return
"Fail:"
+
failReason
;
}
}
nwn_Api_auto_test/src/com/offcn/process/BasicsGM.java
View file @
c767a6f2
...
...
@@ -46,9 +46,15 @@ public abstract class BasicsGM {
public
static
Connection
conn
=
null
;
public
static
Statement
stmt
=
null
;
public
static
Connection
conn1
=
null
;
public
static
Statement
stmt1
=
null
;
public
static
Connection
conn2
=
null
;
public
static
Statement
stmt2
=
null
;
//
public
static
Map
<
String
,
Object
>
map
=
new
XMLread
().
getSystem
();
// 读取XML配置文件
public
abstract
HashMap
<
String
,
Object
>
setPublicParameter
(
HashMap
<
String
,
Object
>
data
);
public
abstract
HashMap
<
String
,
Object
>
setDynamicParameter
(
HashMap
<
String
,
Object
>
data
);
//
// public static boolean isProduct = false;
//
...
...
@@ -93,6 +99,13 @@ public abstract class BasicsGM {
return
rs
;
}
//查询表名tableName的条件是condition的结果集
public
ResultSet
sqlFromDB_package
(
String
sql
)
throws
Exception
{
ResultSet
rs
=
stmt2
.
executeQuery
(
sql
);
return
rs
;
}
//查询表名tableName的条件是condition的结果集,返回数量
public
ResultSet
selectCountFromDB
(
String
tableName
,
String
condition
)
throws
Exception
{
String
sql
;
...
...
nwn_Api_auto_test/src/com/offcn/process/NWN.java
View file @
c767a6f2
...
...
@@ -26,8 +26,8 @@ public class NWN extends BasicsGM{
public
static
boolean
isClearMysql
=
false
;
public
static
boolean
isProduct
=
Boolean
.
valueOf
(((
system
)
map
.
get
(
"nwn"
)).
getIsProduct
());
public
static
boolean
isProduct
=
Boolean
.
valueOf
(((
system
)
map
.
get
(
"nwn"
)).
getIsProduct
());
//public static boolean isProduct_server=Boolean.valueOf(((system)map.get("nwn_server")).getIsProduct());
public
static
String
nwn_sign
=
""
;
//mis口令
public
static
String
admin_login_ssid
=
""
;
//nwn登录得到的口令
public
static
String
nwn_url
=
""
;
//后台登录得到的nwn登录地址
...
...
@@ -57,8 +57,23 @@ public class NWN extends BasicsGM{
// public static String open_id_str = "";//t_user表open_id
//
// public static String tk_token="";//登录token
public
static
HashMap
<
String
,
String
>
PublicParameter_NWN
=
null
;
public
static
HashMap
<
String
,
String
>
DynamicParameter_NWN
=
null
;
static
{
//设置静态公共参数
PublicParameter_NWN
=
new
HashMap
<
String
,
String
>();
PublicParameter_NWN
.
put
(
"appid"
,
"jiaowu"
);
//设置动态公共参数
DynamicParameter_NWN
=
new
HashMap
<
String
,
String
>();
Long
timeString
=
System
.
currentTimeMillis
();
timestamp
=
timeString
.
toString
().
substring
(
0
,
10
);
DynamicParameter_NWN
.
put
(
"timestamp"
,
timestamp
);
// DynamicParameter_NWN.put("timestamp","timestamp");
String
mysql_local_Online
=
ReadProperties
.
GetTestPropertyByKey
(
"mysql_local_Online"
);
//本地数据库连接
if
(
mysql_local_Online
.
equals
(
"local"
)){
...
...
@@ -83,6 +98,17 @@ public class NWN extends BasicsGM{
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
try
{
Class
.
forName
(
"com.mysql.jdbc.Driver"
);
conn2
=
DriverManager
.
getConnection
(((
system
)
map
.
get
(
"nwn_package"
)).
getSqlurl
(),
((
system
)
map
.
get
(
"nwn_package"
)).
getSqlname
(),
((
system
)
map
.
get
(
"nwn_package"
)).
getSqlpwd
());
stmt2
=
conn2
.
createStatement
();
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
}
if
(
mysql_local_Online
.
equals
(
"Online"
)){
//线上数据库连接
...
...
@@ -169,6 +195,22 @@ public class NWN extends BasicsGM{
// System.out.println(user_idList.toString());
}
public
void
cleann_template_FromDB
()
{
List
<
String
>
user_List
=
new
ArrayList
<
String
>();
try
{
deleteFromDB
(
"n_template"
,
"id"
,
template_id
);
//deleteFromDB("n_packcode", "package_id", n_package_idList.get(i));
//deleteFromDB("n_packcode_record", "package_id", n_package_idList.get(i));
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
Log
.
logInfo
(
"清除数据失败n_template"
);
}
// System.out.println(user_idList.toString());
}
//清除注册数据根据n_package_idList
public
void
cleann_user_id_List_FromDB
()
{
List
<
String
>
user_List
=
new
ArrayList
<
String
>();
...
...
@@ -210,7 +252,64 @@ public class NWN extends BasicsGM{
return
sdf
.
format
(
date
);
}
@Override
public
HashMap
<
String
,
Object
>
setPublicParameter
(
HashMap
<
String
,
Object
>
data
)
{
String
parameter
=
null
;
HashMap
<
String
,
Object
>
dataNew
=
data
;
if
(
PublicParameter_NWN
!=
null
){
parameter
=
MapUtil
.
getValue
(
"parameter"
,
data
);
String
Request
=
MapUtil
.
getValue
(
"Request"
,
data
);
Set
<
Map
.
Entry
<
String
,
String
>>
entrySet
=
PublicParameter_NWN
.
entrySet
();
Iterator
<
Map
.
Entry
<
String
,
String
>>
it
=
entrySet
.
iterator
();
while
(
it
.
hasNext
()){
Map
.
Entry
<
String
,
String
>
me
=
it
.
next
();
String
key
=
me
.
getKey
();
String
value
=
me
.
getValue
();
Log
.
logInfo
(
"公共静态参数:"
+
key
+
":"
+
value
);
if
(!
parameter
.
contains
(
"\""
+
key
+
"\""
)
&&
!
parameter
.
contains
(
"&"
+
key
+
"="
)&&
!
parameter
.
contains
(
key
+
"="
)){
if
(
"get"
.
equals
(
Request
)){
parameter
=
parameter
+
"&"
+
key
+
"="
+
value
;
}
else
{
parameter
=
parameter
+
",\""
+
key
+
"\":\""
+
value
+
"\""
;
}
}
}
}
dataNew
.
put
(
"parameter"
,
parameter
);
return
dataNew
;
}
@Override
public
HashMap
<
String
,
Object
>
setDynamicParameter
(
HashMap
<
String
,
Object
>
data
)
{
String
parameter
=
null
;
HashMap
<
String
,
Object
>
dataNew
=
data
;
if
(
DynamicParameter_NWN
!=
null
){
parameter
=
MapUtil
.
getValue
(
"parameter"
,
data
);
String
Request
=
MapUtil
.
getValue
(
"Request"
,
data
);
Set
<
Map
.
Entry
<
String
,
String
>>
entrySet
=
DynamicParameter_NWN
.
entrySet
();
Iterator
<
Map
.
Entry
<
String
,
String
>>
it
=
entrySet
.
iterator
();
while
(
it
.
hasNext
()){
Map
.
Entry
<
String
,
String
>
me
=
it
.
next
();
String
key
=
me
.
getKey
();
String
value
=
me
.
getValue
();
Log
.
logInfo
(
"公共动态参数:"
+
key
+
":"
+
value
);
if
(!
parameter
.
contains
(
"\""
+
key
+
"\""
)
&&
!
parameter
.
contains
(
"&"
+
key
+
"="
)&&
!
parameter
.
contains
(
key
+
"="
)){
if
(
"get"
.
equals
(
Request
)){
parameter
=
parameter
+
"&"
+
key
+
"="
+
timestamp
;
}
else
{
parameter
=
parameter
+
",\""
+
key
+
"\":\""
+
timestamp
+
"\""
;
}
}
}
}
dataNew
.
put
(
"parameter"
,
parameter
);
return
dataNew
;
}
public
static
String
GetSignValue
(){
return
null
;
}
//
//
// //清除用户地区操作表t_exam_area
...
...
nwn_Api_auto_test/src/com/offcn/process/TK.java
View file @
c767a6f2
...
...
@@ -106,4 +106,20 @@ public class TK extends BasicsGM{
t_exam_area
.
removeAll
(
user_List
);
// System.out.println(user_idList.toString());
}
@Override
public
HashMap
<
String
,
Object
>
setPublicParameter
(
HashMap
<
String
,
Object
>
data
)
{
// TODO Auto-generated method stub
return
null
;
}
@Override
public
HashMap
<
String
,
Object
>
setDynamicParameter
(
HashMap
<
String
,
Object
>
data
)
{
// TODO Auto-generated method stub
return
null
;
}
}
nwn_Api_auto_test/src/com/offcn/process/XYZB.java
View file @
c767a6f2
...
...
@@ -186,4 +186,18 @@ public class XYZB extends BasicsGM{
e
.
printStackTrace
();
}
}
@Override
public
HashMap
<
String
,
Object
>
setPublicParameter
(
HashMap
<
String
,
Object
>
data
)
{
// TODO Auto-generated method stub
return
null
;
}
@Override
public
HashMap
<
String
,
Object
>
setDynamicParameter
(
HashMap
<
String
,
Object
>
data
)
{
// TODO Auto-generated method stub
return
null
;
}
}
nwn_Api_auto_test/src/com/offcn/system/MyRequest.java
0 → 100644
View file @
c767a6f2
package
com
.
offcn
.
system
;
import
java.util.Map
;
public
class
MyRequest
{
private
String
Request
;
private
String
Url
;
private
Map
<
String
,
String
>
Cookies
;
private
Map
<
String
,
String
>
headers
;
private
String
Parameter
;
//json请求方式的参数
private
Map
<
String
,
String
>
formParameter
;
//form_data请求方式的参数、或file请求方式的参数
private
String
file
;
public
String
getRequest
()
{
return
Request
;
}
public
void
setRequest
(
String
request
)
{
Request
=
request
;
}
public
String
getUrl
()
{
return
Url
;
}
public
void
setUrl
(
String
url
)
{
Url
=
url
;
}
public
Map
<
String
,
String
>
getCookies
()
{
return
Cookies
;
}
public
void
setCookies
(
Map
<
String
,
String
>
cookies
)
{
Cookies
=
cookies
;
}
public
Map
<
String
,
String
>
getHeaders
()
{
return
headers
;
}
public
void
setHeaders
(
Map
<
String
,
String
>
headers
)
{
this
.
headers
=
headers
;
}
public
String
getParameter
()
{
return
Parameter
;
}
public
void
setParameter
(
String
parameter
)
{
Parameter
=
parameter
;
}
public
Map
<
String
,
String
>
getFormParameter
()
{
return
formParameter
;
}
public
void
setFormParameter
(
Map
<
String
,
String
>
formParameter
)
{
this
.
formParameter
=
formParameter
;
}
public
String
getFile
()
{
return
file
;
}
public
void
setFile
(
String
file
)
{
this
.
file
=
file
;
}
public
MyRequest
(
String
request
,
String
url
,
Map
<
String
,
String
>
cookies
,
Map
<
String
,
String
>
headers
,
String
parameter
,
Map
<
String
,
String
>
formParameter
,
String
file
)
{
super
();
Request
=
request
;
Url
=
url
;
Cookies
=
cookies
;
this
.
headers
=
headers
;
Parameter
=
parameter
;
this
.
formParameter
=
formParameter
;
this
.
file
=
file
;
}
public
MyRequest
()
{
}
}
nwn_Api_auto_test/src/com/offcn/test/APITest_nwn.java
View file @
c767a6f2
...
...
@@ -37,7 +37,7 @@ public class APITest_nwn extends NWN{
@BeforeClass
public
void
beforeClass
()
{
//测试
结束
删除测试所用的数据
//测试
开始
删除测试所用的数据
if
(!
isClearMysql
)
{
System
.
out
.
println
(
"start del **************"
);
this
.
cleann_n_admin_card_no_List_FromDB_beforeTest
();
...
...
@@ -58,9 +58,12 @@ public class APITest_nwn extends NWN{
obj
.
initialize
(
data
);
data
=
obj
.
handleInput
(
data
);
String
parameter
=
MapUtil
.
getValue
(
"parameter"
,
data
);
//静态和动态参数自动添加
data
=
setPublicParameter
(
data
);
data
=
setDynamicParameter
(
data
);
String
parameter
=
MapUtil
.
getValue
(
"parameter"
,
data
);
System
.
out
.
println
(
"parameter====="
+
parameter
);
// System.out.println(!data.get("Request").toString().contains("get"));
// System.out.println(data.get("system").toString().equals("nwn_service"));
if
(
data
.
get
(
"system"
).
toString
().
equals
(
"nwn_service"
)
){
...
...
@@ -100,11 +103,7 @@ public class APITest_nwn extends NWN{
result
=
obj
.
handleOutput
(
re
,
data
);
}
}
// else{
// result = obj.handleOutput(re, data);
// }
// codeORerrcode=getCode(re);
// msgORerrmsy=getMsg(re);
}
result
=
obj
.
handleOutput
(
re
,
data
);
...
...
@@ -117,8 +116,8 @@ public class APITest_nwn extends NWN{
//数据回写
// HashMap<String, Object> ExpectResult=MapUtil.Expect(data);
/*
SheetUtils sheet = new SheetUtils("DataAll.xls", "Output");
/*
// HashMap<String, Object> ExpectResult=MapUtil.Expect(data);
SheetUtils sheet = new SheetUtils("DataAll.xls", "Output");
sheet.writeExcel(
data.get("NO").toString(),
data.get("TCNO").toString() + "_Step" + data.get("Step").toString(),
...
...
@@ -155,6 +154,7 @@ public class APITest_nwn extends NWN{
this
.
cleann_n_package_List_FromDB
();
this
.
cleann_user_id_List_FromDB
();
this
.
cleann_getcode_id_List_FromDB
();
this
.
cleann_template_FromDB
();
try
{
if
(
stmt
!=
null
){
stmt
.
close
();
...
...
nwn_Api_auto_test/src/makeTestCase/MakeTestCases.java
View file @
c767a6f2
package
makeTestCase
;
//支持get方式
import
java.math.BigInteger
;
import
java.text.SimpleDateFormat
;
...
...
@@ -35,7 +35,7 @@ public class MakeTestCases {
public
static
void
main
(
String
[]
args
)
{
make
(
"TestData/CaseMake.xls"
,
"Sheet1"
,
"
put"
,
"put
"
);
make
(
"TestData/CaseMake.xls"
,
"Sheet1"
,
"
get"
,
"nwn_service
"
);
}
...
...
nwn_Api_auto_test/src/resources/class.properties
View file @
c767a6f2
xyzb
=
com.offcn.api.xyzb.
tk
=
com.offcn.api.tk.
nwn
=
com.offcn.api.nwn.
nwn_service
=
com.offcn.api.nwn.service.
nwn
=
com.offcn.api.nwn.
nwnht
=
com.offcn.api.nwn.
nwngg
=
com.offcn.api.nwn.
tkapp
=
com.offcn.api.tk.app
tkht
=
com.offcn.api.tk.ht
\ No newline at end of file
nwn_Api_auto_test/src/resources/system.xml
View file @
c767a6f2
...
...
@@ -81,6 +81,7 @@
<sqlpwd>
Beta@
&
123
</sqlpwd>
</system>
<system
name=
"nwn_service"
>
<!-- nwn -->
<access_token_uri>
http://106.75.5.205:8082/uaa/oauth/token
</access_token_uri>
<client_id>
bestbuy-acceptance
</client_id>
...
...
@@ -113,6 +114,22 @@
<sqlpwd>
Beta@
&
123
</sqlpwd>
</system>
<system
name=
"nwn_package"
>
<!-- nwn -->
<access_token_uri>
http://106.75.5.205:8082/uaa/oauth/token
</access_token_uri>
<client_id>
bestbuy-acceptance
</client_id>
<client_secret>
bestbuy-acceptance
</client_secret>
<grant_type>
client_credentials
</grant_type>
<isProduct>
false
</isProduct>
<RM_URI>
http://beta.alitest.eoffcn.com
</RM_URI>
<RM_port></RM_port>
<RM_basePath></RM_basePath>
<redis_URI>
10.10.229.48
</redis_URI>
<redis_db_index>
5
</redis_db_index>
<sqlurl>
jdbc:mysql://39.105.124.219:3312/nwn_pack?useUnicode=true
&
characterEncoding=UTF-8
&
zeroDateTimeBehavior=convertToNull
</sqlurl>
<sqlname>
nwnBeta
</sqlname>
<sqlpwd>
Beta@
&
123
</sqlpwd>
</system>
<system
name=
"nwnht"
>
<!-- nwn后台 -->
<access_token_uri>
http://106.75.5.205:8082/uaa/oauth/token
</access_token_uri>
<client_id>
bestbuy-acceptance
</client_id>
...
...
nwn_Api_auto_test/src/resources/test.properties
View file @
c767a6f2
xls
=
DataAll.xls
sheet
=
TestCase4
sheet
=
try
mysql_local_Online
=
local
\ No newline at end of file
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