Commit 749a7281 by Li Yongyu

shop login

parent 12b531c9
<?xml version="1.0" encoding="UTF-8"?>
<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
<fileset name="all" enabled="true" check-config-name="Google Checks" local="false">
<file-match-pattern match-pattern="." include-pattern="true"/>
</fileset>
</fileset-config>
......@@ -254,9 +254,9 @@ public class Mail {
public static InternetAddress[] parseAddress(String personnel){
String addr="";
if("all".equals(personnel)){
addr="wufeifei66504@offcn.com;wenshuang@offcn.com;liyongyu@offcn.com;"
addr="liyongyu@offcn.com;"
+ "zhanghua54164@offcn.com;liwendong@offcn.com;cuimengzhen@offcn.com;"
+ "zhangshijie62302@offcn.com;baimanbin@offcn.com";
;
}else{
addr="wufeifei66504@offcn.com;wenshuang@offcn.com;liyongyu@offcn.com";
}
......
......@@ -69,7 +69,7 @@ public class ReadExcels {
offcn_api_testData.Testcount=arrmap.length;//保存总体的用例数量
Log.logInfo("数据源读取记录:共有几列数据="+list.size());
//Log.logInfo("数据源读取记录:共有几列数据="+list.size());
Log.logInfo("数据源读取记录:共有几行数据="+arrmap.length);
for(int i = 1 ; i < sheet.getPhysicalNumberOfRows() ; i++){
Row r = sheet.getRow(i);
......
......@@ -32,7 +32,7 @@ public class nwngetsign {
str = str + "bf2h3%^j?ljkj3706kji88697"; //教务的加密,规则固定需要加
System.out.println("getStr===" + str);
//System.out.println("getStr===" + 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);
......
......@@ -4,6 +4,7 @@ import io.restassured.path.json.JsonPath;
import io.restassured.response.Response;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.UnsupportedEncodingException;
import java.sql.ResultSet;
......@@ -22,7 +23,6 @@ import com.offcn.TestUnti.RequestDataUtils;
import com.offcn.TestUnti.StringUtils;
import com.offcn.interfaces.API;
import com.offcn.process.NWN;
import net.sf.json.JSONObject;
......@@ -47,49 +47,55 @@ public class code extends NWN implements API {
@Override
public Response SendRequest(HashMap<String, Object> data, String Url,
String Request) {
Response re = RequestDataUtils.Get_two_cookie(data, nwn_url,"admin_login_ssid",admin_login_ssid,"PHPSESSID",PHPSESSID);
return re;
// postGet.HttpPostWithJson(nwn_url, "", "{\"admin_login_ssid\":"+admin_login_ssid+"}");
String re = RequestDataUtils.Get_two_cookie2(data,nwn_url,"admin_login_ssid",admin_login_ssid, "PHPSESSID",PHPSESSID);
// try {
// Process p = Runtime.getRuntime().exec("python src/main/java/testTools/tools/python/login.py "+admin_login_ssid+" "+PHPSESSID+" "+nwn_url);
// } catch (IOException e) {
// // TODO Auto-generated catch block
// e.printStackTrace();
// }
System.out.println(re);
return null;
}
@Override
public String handleOutput(Response re, HashMap<String, Object> data) {
String body=re.asString();
// InputStream input = new FileInputStream(file);
StringBuffer buffer = new StringBuffer();
boolean result = true;
String failReason = "";
if(body.contains("<title>")){
int Alength="<title>".length();
int start=body.indexOf("<title>");
int end=body.indexOf("</title>")+1;
body=body.substring(start+Alength, end-1);
}
// http://zgadmin.test.eoffcn.com/sso/login.html?action=check_login&encode=f086da4a32899a75e07a83476de9035f%3AiYF9fPjJbhmmEDswMBNi3KO3%2FsPCu1JSYyet723Xays%2FrXdnPRskyrutMZvbMlG0yiAjI1ibhfZtTotQsZf6VA%3D%3D&app_id=31&ref=http://nwn.t.eoffcn.com/admin/package/packagelist
// http://nwn.t.eoffcn.comhttp://zgadmin.test.eoffcn.com/sso/login.html?action=check_login&encode=f086da4a32899a75e07a83476de9035f%3AiYF9fPjJbhmmEDswMBNi3KO3%2FsPCu1JSYyet723Xays%2FrXdnPRskyrutMZvbMlG0yiAjI1ibhfZtTotQsZf6VA%3D%3D&app_id=31&ref=http://nwn.t.eoffcn.com/admin/package/packagelist
if(data.get("custom") != null && body!=null){
if(!(body.equals(data.get("custom")))){
result = result && false;
failReason = failReason + "custom is expected "
+ data.get("custom").toString() + " but actually "
+ body + ".";
// admin_login_ssid=re.getCookie("admin_login_ssid");
admin_31_encode=re.getCookie("admin_31_encode");
}else{
System.out.println(re.asString());
}
}
// String body=re.asString();
//// InputStream input = new FileInputStream(file);
// StringBuffer buffer = new StringBuffer();
//
// boolean result = true;
// String failReason = "";
//
// if(body.contains("<title>")){
// int Alength="<title>".length();
// int start=body.indexOf("<title>");
// int end=body.indexOf("</title>")+1;
// body=body.substring(start+Alength, end-1);
// }
//// http://zgadmin.test.eoffcn.com/sso/login.html?action=check_login&encode=f086da4a32899a75e07a83476de9035f%3AiYF9fPjJbhmmEDswMBNi3KO3%2FsPCu1JSYyet723Xays%2FrXdnPRskyrutMZvbMlG0yiAjI1ibhfZtTotQsZf6VA%3D%3D&app_id=31&ref=http://nwn.t.eoffcn.com/admin/package/packagelist
//// http://nwn.t.eoffcn.comhttp://zgadmin.test.eoffcn.com/sso/login.html?action=check_login&encode=f086da4a32899a75e07a83476de9035f%3AiYF9fPjJbhmmEDswMBNi3KO3%2FsPCu1JSYyet723Xays%2FrXdnPRskyrutMZvbMlG0yiAjI1ibhfZtTotQsZf6VA%3D%3D&app_id=31&ref=http://nwn.t.eoffcn.com/admin/package/packagelist
//
// if(data.get("custom") != null && body!=null){
// if(!(body.equals(data.get("custom")))){
// result = result && false;
// failReason = failReason + "custom is expected "
// + data.get("custom").toString() + " but actually "
// + body + ".";
//// admin_login_ssid=re.getCookie("admin_login_ssid");
// admin_31_encode=re.getCookie("admin_31_encode");
// }else{
//
// System.out.println(re.asString());
//
// }
// }
//
if (result)
return "Pass";
else
return "Fail:" + failReason;
}
}
}}
package com.offcn.api.nwn.process;
import io.restassured.http.Headers;
import io.restassured.path.json.JsonPath;
import io.restassured.response.Response;
import java.io.FileInputStream;
import java.io.InputStream;
import java.io.UnsupportedEncodingException;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Random;
import org.json.simple.JSONArray;
import com.offcn.TestUnti.Log;
import com.offcn.TestUnti.MapUtil;
import com.offcn.TestUnti.ReadProperties;
import com.offcn.TestUnti.RequestDataUtils;
import com.offcn.TestUnti.StringUtils;
import com.offcn.interfaces.API;
import com.offcn.process.NWN;
import net.sf.json.JSONObject;
/**
*获取PHPSESSID
*
* @author puhui
*
*/
public class codeold extends NWN implements API {
@Override
public void initialize(HashMap<String, Object> data) {
}
@Override
public HashMap<String, Object> handleInput(HashMap<String, Object> data) {
return data;
}
@Override
public Response SendRequest(HashMap<String, Object> data, String Url,
String Request) {
Response re = RequestDataUtils.Get_two_cookie(data,url,
"admin_login_ssid",admin_login_ssid,"PHPSESSID",PHPSESSID);
// Response re = RequestDataUtils.Get_two_cookie(data,nwn_url,
// "admin_login_ssid",admin_login_ssid,"PHPSESSID",PHPSESSID);
// Response re = RequestDataUtils.Get_houtai(data, Request,"admin_login_ssid",admin_login_ssid,"PHPSESSID",PHPSESSID);
return re;
}
@Override
public String handleOutput(Response re, HashMap<String, Object> data) {
String body=re.asString();
// InputStream input = new FileInputStream(file);
StringBuffer buffer = new StringBuffer();
boolean result = true;
String failReason = "";
if(body.contains("<title>")){
int Alength="<title>".length();
int start=body.indexOf("<title>");
int end=body.indexOf("</title>")+1;
body=body.substring(start+Alength, end-1);
}
// http://zgadmin.test.eoffcn.com/sso/login.html?action=check_login&encode=f086da4a32899a75e07a83476de9035f%3AiYF9fPjJbhmmEDswMBNi3KO3%2FsPCu1JSYyet723Xays%2FrXdnPRskyrutMZvbMlG0yiAjI1ibhfZtTotQsZf6VA%3D%3D&app_id=31&ref=http://nwn.t.eoffcn.com/admin/package/packagelist
// http://nwn.t.eoffcn.comhttp://zgadmin.test.eoffcn.com/sso/login.html?action=check_login&encode=f086da4a32899a75e07a83476de9035f%3AiYF9fPjJbhmmEDswMBNi3KO3%2FsPCu1JSYyet723Xays%2FrXdnPRskyrutMZvbMlG0yiAjI1ibhfZtTotQsZf6VA%3D%3D&app_id=31&ref=http://nwn.t.eoffcn.com/admin/package/packagelist
if(data.get("custom") != null && body!=null){
if(!(body.equals(data.get("custom")))){
result = result && false;
failReason = failReason + "custom is expected "
+ data.get("custom").toString() + " but actually "
+ body + ".";
// admin_login_ssid=re.getCookie("admin_login_ssid");
admin_31_encode=re.getCookie("admin_31_encode");
}else{
System.out.println(re.asString());
}
}
if (result)
return "Pass";
else
return "Fail:" + failReason;
}
}
......@@ -3,25 +3,14 @@ package com.offcn.api.nwn.process;
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 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.TestUnti.ListUtil;
import net.sf.json.JSONObject;
......@@ -114,7 +103,7 @@ public class login extends NWN implements API {
+ jp.getString("msg") + ".";
}
String url=jp.getString("url");
if(data.get("custom") != null && url!=null){
if(!(json.contains(data.get("custom").toString()))){
result = result && false;
......@@ -124,9 +113,11 @@ public class login extends NWN implements API {
}
}
if("登录成功".equals(msg)){
if("0".equals(code)){
admin_login_ssid=re.getCookie("admin_login_ssid");
System.out.println("admin_login_ssid=="+ admin_login_ssid);
url = jp.getString("url");
}
......
package com.offcn.api.nwn.process;
import io.restassured.response.Response;
import java.util.HashMap;
import com.offcn.TestUnti.RequestDataUtils;
import com.offcn.interfaces.API;
import com.offcn.process.NWN;
/**
*获取encode
*
* @author Lyy
*
*/
public class logon extends NWN implements API {
@Override
public void initialize(HashMap<String, Object> data) {
}
@Override
public HashMap<String, Object> handleInput(HashMap<String, Object> data) {
return data;
}
@Override
public Response SendRequest(HashMap<String, Object> data, String Url,
String Request) {
// postGet.HttpPostWithJson(nwn_url, "", "{\"admin_login_ssid\":"+admin_login_ssid+"}");
String re = RequestDataUtils.Get_two_cookie_shop(data,"http://dianshang.t.eoffcn.com/p/user/logon","admin_login_ssid",admin_login_ssid,"go_session_id",go_session_id);
// try {
// Process p = Runtime.getRuntime().exec("python src/main/java/testTools/tools/python/login.py "+admin_login_ssid+" "+PHPSESSID+" "+nwn_url);
// } catch (IOException e) {
// // TODO Auto-generated catch block
// e.printStackTrace();
// }
System.out.println(re);
return null;
}
@Override
public String handleOutput(Response re, HashMap<String, Object> data) {
// String body=re.asString();
//// InputStream input = new FileInputStream(file);
// StringBuffer buffer = new StringBuffer();
//
// boolean result = true;
// String failReason = "";
//
// if(body.contains("<title>")){
// int Alength="<title>".length();
// int start=body.indexOf("<title>");
// int end=body.indexOf("</title>")+1;
// body=body.substring(start+Alength, end-1);
// }
//// http://zgadmin.test.eoffcn.com/sso/login.html?action=check_login&encode=f086da4a32899a75e07a83476de9035f%3AiYF9fPjJbhmmEDswMBNi3KO3%2FsPCu1JSYyet723Xays%2FrXdnPRskyrutMZvbMlG0yiAjI1ibhfZtTotQsZf6VA%3D%3D&app_id=31&ref=http://nwn.t.eoffcn.com/admin/package/packagelist
//// http://nwn.t.eoffcn.comhttp://zgadmin.test.eoffcn.com/sso/login.html?action=check_login&encode=f086da4a32899a75e07a83476de9035f%3AiYF9fPjJbhmmEDswMBNi3KO3%2FsPCu1JSYyet723Xays%2FrXdnPRskyrutMZvbMlG0yiAjI1ibhfZtTotQsZf6VA%3D%3D&app_id=31&ref=http://nwn.t.eoffcn.com/admin/package/packagelist
//
// if(data.get("custom") != null && body!=null){
// if(!(body.equals(data.get("custom")))){
// result = result && false;
// failReason = failReason + "custom is expected "
// + data.get("custom").toString() + " but actually "
// + body + ".";
//// admin_login_ssid=re.getCookie("admin_login_ssid");
// admin_31_encode=re.getCookie("admin_31_encode");
// }else{
//
// System.out.println(re.asString());
//
// }
// }
//
return "Pass";
}}
......@@ -47,7 +47,11 @@ public class packagelist extends NWN implements API {
@Override
public Response SendRequest(HashMap<String, Object> data, String Url,
String Request) {
//System.out.println("url==" + Url );
//System.out.println("PHPSESSID==" + PHPSESSID );
Response re = RequestDataUtils.Get_one_cookie(data, Url, "PHPSESSID",PHPSESSID);
//Response re = RequestDataUtils.Get_Notoken_NoCookie(data, Url);
return re;
}
......@@ -71,7 +75,7 @@ public class packagelist extends NWN implements API {
if (json.length() != 0) {
String msg=jp.getString("message");
String msg=jp.getString("msg");
String code=jp.getString("retcode");
......@@ -101,6 +105,7 @@ public class packagelist extends NWN implements API {
// System.out.println(MapUtil.showMap_String(re.getCookies()));
// System.out.println(re.getHeaders().toString());
nwn_url=url;
PHPSESSID=re.getCookie("PHPSESSID");
}
}
......
package com.offcn.api.nwn.process;
import io.restassured.path.json.JsonPath;
import io.restassured.response.Response;
import java.io.UnsupportedEncodingException;
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.HttpRequest;
import com.offcn.TestUnti.Log;
import com.offcn.TestUnti.MapUtil;
import com.offcn.TestUnti.RequestDataUtils;
import com.offcn.TestUnti.StringUtils;
import com.offcn.api.nwn.md5.nwngetsign;
import com.offcn.interfaces.API;
import com.offcn.process.NWN;
import com.offcn.system.MyRequest;
import com.offcn.TestUnti.ListUtil;
/**
* 获取直播列表
*
* @author liyy
*
*/
public class programLevel extends NWN implements API {
public String parameter;// 参数集合
public String t_id;//
public String t_id_getdatabase;
@Override
public void initialize(HashMap<String, Object> data) {
// try {
// Thread.sleep(20000);
// } catch (InterruptedException e) {
// // TODO Auto-generated catch block
// e.printStackTrace();
// }
}
@Override
public HashMap<String, Object> handleInput(HashMap<String, Object> data) {
// 获取parameter对应的内容
//data.put("parameter", parameter);
return data;
}
@Override
public Response SendRequest(HashMap<String, Object> data, String Url,
String Request) {
Map<String,String> cookies=new HashMap<String,String>();
cookies.put("PHPSESSID", PHPSESSID);
cookies.put("admin_login_ssid", admin_login_ssid);
cookies.put("admin_31_encode", admin_31_encode);
MyRequest myRequest=new MyRequest();
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 = new JsonPath(re.asString());
System.out.println("jp====" + jp);
boolean result = true;
String failReason = "";
String json = re.asString();
json = 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) {
if (!json.contains(data.get("msg").toString())) {
result = result && false;
failReason = failReason + "msg is expected "
+ data.get("msg").toString() + " but actually "
+ jp.getString("message") + ".";
}
String url=jp.getString("url");
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;
nwn_url=url;
PHPSESSID=re.getCookie("PHPSESSID");
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() + ".";
}else {
nwn_url=url;
PHPSESSID=re.getCookie("PHPSESSID");
}
}
}
if("0".equals(jp.getString("retcode"))){
//是否验证数据库
}
}
if (result)
return "Pass";
else
return "Fail:" + failReason;
}
}
package com.offcn.api.nwn.process;
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.util.Arrays;
import java.util.HashMap;
import java.util.List;
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.MySqlUtil;
import com.offcn.TestUnti.ReadProperties;
import com.offcn.TestUnti.RequestDataUtils;
import com.offcn.TestUnti.StringUtils;
import com.offcn.interfaces.API;
import com.offcn.process.NWN;
import net.sf.json.JSONObject;
/**
*获取登录地址,和获取学习包列表
*
* @author puhui
*
*/
public class returnUserInfo extends NWN implements API {
@Override
public void initialize(HashMap<String, Object> data) {
}
@Override
public HashMap<String, Object> handleInput(HashMap<String, Object> data) {
return data;
}
@Override
public Response SendRequest(HashMap<String, Object> data, String Url,
String Request) {
//System.out.println("url==" + Url );
//System.out.println("PHPSESSID==" + PHPSESSID );
Response re = RequestDataUtils.Get_one_cookie(data, Url, "PHPSESSID",PHPSESSID);
//Response re = RequestDataUtils.Get_Notoken_NoCookie(data, Url);
return re;
}
@Override
public String handleOutput(Response re, HashMap<String, Object> data) {
JsonPath jp = re.body().jsonPath();
boolean result = true;
String failReason = "";
String json = re.asString();
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=jp.getString("msg");
String code=jp.getString("retcode");
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("code") + ".";
}
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(code.equals("1002")){
nwn_url=jp.getString("url");
PHPSESSID=re.getCookie("PHPSESSID");
}
}
if (result)
return "Pass";
else
return "Fail:" + failReason;
}
}
......@@ -102,7 +102,7 @@ public class addStudent extends NWN implements API {
String Request) {
// System.out.println("url ===" + Url);
// System.out.println("parameter ===" + parameter);
Response re = HttpRequest.sendGet("http://nwn.t.eoffcn.com"
Response re = HttpRequest.sendGet("http://iip.t.eoffcn.com"
+ Url, parameter);
/*
......
package com.offcn.api.nwn.service;
import io.restassured.path.json.JsonPath;
import io.restassured.response.Response;
import java.io.UnsupportedEncodingException;
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.HttpRequest;
import com.offcn.TestUnti.Log;
import com.offcn.TestUnti.MapUtil;
import com.offcn.TestUnti.RequestDataUtils;
import com.offcn.TestUnti.StringUtils;
import com.offcn.api.nwn.md5.nwngetsign;
import com.offcn.interfaces.API;
import com.offcn.process.NWN;
import com.offcn.system.MyRequest;
import com.offcn.TestUnti.ListUtil;
/**
* 添加作业
*
* @author liyy
*
*/
public class addTask extends NWN implements API {
public String parameter;// 参数集合
public String t_id;//
public String t_id_getdatabase;
@Override
public void initialize(HashMap<String, Object> data) {
// try {
// Thread.sleep(20000);
// } catch (InterruptedException e) {
// // TODO Auto-generated catch block
// e.printStackTrace();
// }
}
@Override
public HashMap<String, Object> handleInput(HashMap<String, Object> data) {
// 获取parameter对应的内容
parameter = MapUtil.getValue("parameter", data);
t_id = MapUtil.getParameter(parameter, "t_id").trim();
if ((!t_id.equals("")) && t_id.contains("t_id")) {
parameter = parameter.replace("\"t_id\":t_id", "\"t_id\":"
+ t_id_getdatabase);
}
data.put("parameter", parameter);
return data;
}
@Override
public Response SendRequest(HashMap<String, Object> data, String Url,
String Request) {
Map<String,String> cookies=new HashMap<String,String>();
cookies.put("PHPSESSID", PHPSESSID);
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 = new JsonPath(re.asString());
System.out.println("jp====" + jp);
boolean result = true;
String failReason = "";
String json = re.asString();
json = 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) {
if (!json.contains(data.get("msg").toString())) {
result = result && false;
failReason = failReason + "msg is expected "
+ data.get("msg").toString() + " but actually "
+ jp.getString("message") + ".";
}
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(jp.getString("retcode"))){
//是否验证数据库
}
}
if (result)
return "Pass";
else
return "Fail:" + failReason;
}
}
......@@ -69,12 +69,7 @@ public class delStuFromPackage extends NWN implements API {
@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>();
......
......@@ -44,7 +44,7 @@ public class findEdupack extends NWN implements API {
public void initialize(HashMap<String, Object> data) {
}
@Override
public HashMap<String, Object> handleInput(HashMap<String, Object> data) {
// 获取parameter对应的内容
......@@ -79,7 +79,7 @@ public class findEdupack extends NWN implements API {
// Response re = RequestDataUtils.Get_token(data, Url, "");
return re;
}
@Override
public String handleOutput(Response re, HashMap<String, Object> data) {
JsonPath jp = re.body().jsonPath();
......
......@@ -95,7 +95,7 @@ public class getTemplateInfo extends NWN implements API {
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())))) {
......@@ -104,7 +104,7 @@ public class getTemplateInfo extends NWN implements API {
+ data.get("statusCode").toString() + " but actually "
+ String.valueOf(re.getStatusCode()) + ". ";
}
if (json.length() != 0) {
String msg=StringUtils.decodeUnicode(getMsg(re));
......
package com.offcn.api.nwn.service;
import io.restassured.path.json.JsonPath;
import io.restassured.response.Response;
import java.io.UnsupportedEncodingException;
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.HttpRequest;
import com.offcn.TestUnti.Log;
import com.offcn.TestUnti.MapUtil;
import com.offcn.TestUnti.RequestDataUtils;
import com.offcn.TestUnti.StringUtils;
import com.offcn.api.nwn.md5.nwngetsign;
import com.offcn.interfaces.API;
import com.offcn.process.NWN;
import com.offcn.system.MyRequest;
import com.offcn.TestUnti.ListUtil;
/**
* 获取直播列表
*
* @author liyy
*
*/
public class programLevel extends NWN implements API {
public String parameter;// 参数集合
public String t_id;//
public String t_id_getdatabase;
@Override
public void initialize(HashMap<String, Object> data) {
// try {
// Thread.sleep(20000);
// } catch (InterruptedException e) {
// // TODO Auto-generated catch block
// e.printStackTrace();
// }
}
@Override
public HashMap<String, Object> handleInput(HashMap<String, Object> data) {
// 获取parameter对应的内容
return data;
}
@Override
public Response SendRequest(HashMap<String, Object> data, String Url,
String Request) {
Map<String,String> cookies=new HashMap<String,String>();
cookies.put("PHPSESSID", PHPSESSID);
cookies.put("admin_login_ssid", admin_login_ssid);
cookies.put("admin_31_encode", admin_31_encode);
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 = new JsonPath(re.asString());
System.out.println("jp====" + jp);
boolean result = true;
String failReason = "";
String json = re.asString();
json = 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) {
if (!json.contains(data.get("msg").toString())) {
result = result && false;
failReason = failReason + "msg is expected "
+ data.get("msg").toString() + " but actually "
+ jp.getString("message") + ".";
}
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(jp.getString("retcode"))){
//是否验证数据库
}
}
if (result)
return "Pass";
else
return "Fail:" + failReason;
}
}
package com.offcn.api.nwn.shop;
import io.restassured.path.json.JsonPath;
import io.restassured.response.Response;
import java.util.HashMap;
import java.util.Map;
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.system.MyRequest;
/**
*
* @Description: 36.3保存是否回放
* @author: liyy
* @date: 2021年3月18日 上午9:55:38
* @version V1.0
*/
public class add extends NWN implements API {
public String parameter;//参数集合
public String record_id;//标识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);
record_id = MapUtil.getParameter(parameter, "record_id").trim();
if ((!record_id.equals("")) && record_id.equals("code")) {
record_id = "1";
parameter = parameter.replace("\"record_id\":code", "\"record_id\":" + record_id);
}
data.put("parameter", parameter);
return data;
}
@Override
public Response SendRequest(HashMap<String, Object> data, String Url,
String Request) {
Map<String,String> cookies=new HashMap<String,String>();
System.out.println("admin_32_encode 脚本用的时候=" + admin_32_encode);
cookies.put("admin_32_encode", admin_32_encode);
System.out.println("go_session_id 脚本用的时候=" + go_session_id);
cookies.put("go_session_id", go_session_id);
cookies.put("admin_login_ssid", admin_login_ssid);
//System.out.println("admin_login_ssid 脚本用的时候=" + admin_login_ssid);
Map<String,String> headers=new HashMap<String,String>();
headers.put("Cookie", "go_session_id=" + go_session_id);
headers.put("Content-Type", "application/json");
MyRequest myRequest=new MyRequest();
myRequest.setUrl(Url);
myRequest.setCookies(cookies);
myRequest.setHeaders(headers);
myRequest.setRequest(Request);
Response re = RequestDataUtils.RestAssuredApi(data, myRequest);
return re;
}
@Override
public String handleOutput(Response re, HashMap<String, Object> data) {
JsonPath jp = re.body().jsonPath();
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 && jp.getString("data")!=null){
String custom=data.get("custom").toString();
String[] ArrayString=StringUtils.getArrayString(custom,",");
// System.out.println(jp.getString("custom"));
// System.out.println(Arrays.toString(ArrayString));
if(!StringUtils.VerificationString(jp.getString("data"),ArrayString)){
result = result && false;
failReason = failReason + "custom is expected "
+ data.get("custom").toString() + " but actually "
+ jp.getString("data") + ".";
}
}
/*if (code.equals("5020")) {
go_session_id = re.getCookie("go_session_id");
System.out.println("5020时候go_session_id==" + go_session_id);
}*/
}
if (result)
return "Pass";
else
return "Fail:" + failReason;
}
}
......@@ -4,29 +4,22 @@ import io.restassured.response.Response;
import java.lang.reflect.Method;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
import net.sf.json.JSONObject;
import com.offcn.TestUnti.Log;
import com.offcn.TestUnti.MYSQLConnection;
import com.offcn.TestUnti.XMLread;
import com.offcn.system.sql;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
public abstract class BasicsGM {
// //数据提取
......@@ -211,7 +204,11 @@ public abstract class BasicsGM {
}
public static String splitData(String str, String strStart, String strEnd) {
String tempStr;
tempStr = str.substring(str.indexOf(strStart) + 1, str.indexOf(strEnd,1));
return tempStr;
}
//判断字符串是否是空或者是“”
public boolean StringIsNull(String str){
......@@ -233,6 +230,14 @@ public abstract class BasicsGM {
}
try {
String status=JSONObject.fromObject(re.body().asString()).getString("status");
if(StringIsNull(status)){
return status;
}
} catch (Exception e) {
}
try {
String retcode=JSONObject.fromObject(re.body().asString()).getString("retcode");
if(StringIsNull(retcode)){
return retcode;
......
package com.offcn.process;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
......@@ -12,15 +7,10 @@ import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
import sun.util.logging.resources.logging;
import com.offcn.TestUnti.Log;
import com.offcn.TestUnti.MapUtil;
import com.offcn.TestUnti.ReadProperties;
import com.offcn.TestUnti.cmdUtil;
import com.offcn.system.system;
......@@ -32,10 +22,14 @@ public class NWN extends BasicsGM{
//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 url = "";//后台登录得到的nwn登录地址
public static String nwn_url = "";//后台登录得到的nwn登录地址
public static String PHPSESSID = "";//后台登录nwn,最终得到的PHPSESSID
public static String go_session_id = "";//后台登录电商,最终得到的go_session_id
public static String Content_Length = "";//后台登录电商,最终得到的go_session_id
public static String admin_32_encode = "";//后台登录nwn,最终得到的admin_32_encode
public static String admin_31_encode = "";//后台登录nwn,最终得到的PHPSESSID
public static String location = "";//后台登录nwn,最终得到的PHPSESSID
public static List<String> n_package_idList = new ArrayList<String>();//n_package的id
public static List<String> n_admin_card_no_List = new ArrayList<String>();//n_admin的card_no
......@@ -73,7 +67,7 @@ public class NWN extends BasicsGM{
public void Connectionsa(){
//================设置数据库连接池=====================
ConnectionsMap=getConnections(new String[]{"zxkt","nwn","iip"});
ConnectionsMap=getConnections(new String[]{"iip","zxkt"});
StatementsMap=getStatements(ConnectionsMap);
conn=ConnectionsMap.get("iip");//设置默认的连接对象
stmt=StatementsMap.get("iip");//设置默认的连接对象
......
......@@ -47,7 +47,7 @@ public class APITest_nwn extends NWN{
public void beforeClass() {
//测试开始删除测试所用的数据
if (!isClearMysql) {
System.out.println("start del **************");
//System.out.println("start del **************");
this.cleann_n_admin_card_no_List_FromDB_beforeTest();
System.out.println("end del **************");
......@@ -67,7 +67,8 @@ public class APITest_nwn extends NWN{
API obj = (API)object;
setDelSystemSql(c, object);//保存曾经操作过的系统
BasicsGM.map=new XMLread().getSystem();
BasicsGM.map=new XMLread().getSystem();
System.out.println(BasicsGM.map);
obj.initialize(data);
......@@ -75,8 +76,9 @@ public class APITest_nwn extends NWN{
String parameter = MapUtil.getValue("parameter", data);
// System.out.println(!data.get("Request").toString().contains("get"));
// System.out.println(data.get("system").toString().equals("nwn_service"));
// 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") ){
//静态和动态参数自动添加
......@@ -84,7 +86,7 @@ public class APITest_nwn extends NWN{
data=setDynamicParameter(c,object,data);//动态公共参数
parameter = MapUtil.getValue("parameter", data);
System.out.println("parameter=====" + parameter);
// System.out.println("parameter=====" + parameter);
String serviceUrl = MapUtil.getValue("serviceUrl", data);
String request = MapUtil.getValue("Request", data);
if (request.equals("get")) {
......@@ -138,26 +140,26 @@ public class APITest_nwn extends NWN{
msgORerrmsy=getMsg(re);
Log.logInfo("返回结果="+StringUtils.decodeUnicode(body));
System.out.println();
//数据回写
// 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(),
// data.get("Description").toString(),
// parameter,
//// JSONObject.fromObject(ExpectResult).toString(),
// re.getStatusCode()+"",
//// StringUtils.decodeUnicode(re==null?"":re.asString()),
// StringUtils.decodeUnicode(body),
// codeORerrcode,
// msgORerrmsy,
// result,
// time
// );
/* //数据回写
HashMap<String, Object> ExpectResult=MapUtil.Expect(data);
SheetUtils sheet = new SheetUtils("DataAllWff.xls", "Output");
sheet.writeExcel(
data.get("NO").toString(),
data.get("TCNO").toString() + "_Step" + data.get("Step").toString(),
data.get("Description").toString(),
parameter,
// JSONObject.fromObject(ExpectResult).toString(),
re.getStatusCode()+"",
// StringUtils.decodeUnicode(re==null?"":re.asString()),
StringUtils.decodeUnicode(body),
codeORerrcode,
msgORerrmsy,
result,
time
);*/
if(result.indexOf("Fail")!=-1){
String Expect1=data.get("code")==null?"":data.get("code").toString();
......
......@@ -38,7 +38,7 @@ public class NewMakeTestCases {
public static void main(String[] args) {
make("TestData/CaseMake.xls","Sheet1","post","tk");
make("TestData/CaseMake.xls","Sheet1","post","nwn_service");
}
......
package_id:package_id
id:menu_id
tags:"作业标签"
work_name:"作业名称"
t_id:"4321"
type:"1","2"
allow_appendix:"1","2"
allow_repeat:"1","2"
allow_download:"1","2"
package_id id
package_id menu_id
tags work_name t_id type allow_appendix allow_repeat allow_download
"作业标签" "作业名称" "4321" "2" "1" "1" "1"
"作业标签" "作业名称" "4321" "2" "2" "2" "2"
"作业标签" "作业名称" "4321" "1" "2" "1" "2"
"作业标签" "作业名称" "4321" "1" "1" "2" "2"
"作业标签" "作业名称" "4321" "1" "2" "2" "1"
xyzb=com.offcn.api.xyzb.
tk=com.offcn.api.tk.
nwn=com.offcn.api.nwn.
nwnht=com.offcn.api.nwn.
nwn_service=com.offcn.api.nwn.service.
nwn_ht=com.offcn.api.nwn.ht.
nwnht=com.offcn.api.nwn.
shop=com.offcn.api.nwn.shop.
nwngg=com.offcn.api.nwn.
tkapp=com.offcn.api.tk.app
tkht=com.offcn.api.tk.ht
\ No newline at end of file
......@@ -16,13 +16,27 @@
</system>
<system name="shop"><!-- shop -->
<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://dianshang.t.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>
</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>
<client_secret>bestbuy-acceptance</client_secret>
<grant_type>client_credentials</grant_type>
<isProduct>false</isProduct>
<RM_URI>http://zgadmin.test.eoffcn.com</RM_URI>
<RM_URI>http://zgadmin.t.eoffcn.com</RM_URI>
<RM_port></RM_port>
<RM_basePath></RM_basePath>
<redis_URI>10.10.229.48</redis_URI>
......
xls=DataAllWff.xls
xls=DataAll.xls
sheet=TestCase2
mysql_local_Online=local
Percentage=0
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment