Commit 174f3d3a authored by 吕雯燕's avatar 吕雯燕

Merge branch 'develop' of gitlab2.dui88.com:mabo/test-platform into develop

parents a0235647 6a07135d
...@@ -261,6 +261,12 @@ ...@@ -261,6 +261,12 @@
<artifactId>guava</artifactId> <artifactId>guava</artifactId>
<version>21.0</version> <version>21.0</version>
</dependency> </dependency>
<dependency>
<groupId>cn.com.duiba.tool</groupId>
<artifactId>java-gitlab-api</artifactId>
<version>1.3.8</version>
</dependency>
</dependencies> </dependencies>
<build> <build>
......
...@@ -2,6 +2,7 @@ package base; ...@@ -2,6 +2,7 @@ package base;
import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.Logger;
import org.gitlab.api.models.GitlabProjectMerges;
import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext; import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.core.env.Environment; import org.springframework.core.env.Environment;
...@@ -52,6 +53,15 @@ public class DingdingResult { ...@@ -52,6 +53,15 @@ public class DingdingResult {
names.addAll(Arrays.asList(getNames)); names.addAll(Arrays.asList(getNames));
Map<String,String> params = new HashMap<>();
params.put("jobName",getJob());
changes = Postman.sendFindTestApp(params);
GitlabProjectMerges gitlabProjectMerges = GitlabUtils.getMessage("credits-group",changes);
changes = changes+" 提交者:"+gitlabProjectMerges.getAuthor().getName()+" 描述:"+gitlabProjectMerges.getDescription();
/*从jenkins上获取项目变更
Map<String,String> resentChanges=BeTested.getChangesWithin(30,changeMap); Map<String,String> resentChanges=BeTested.getChangesWithin(30,changeMap);
System.out.println(resentChanges); System.out.println(resentChanges);
if(resentChanges!=null&&resentChanges.size()>0){ if(resentChanges!=null&&resentChanges.size()>0){
...@@ -77,7 +87,7 @@ public class DingdingResult { ...@@ -77,7 +87,7 @@ public class DingdingResult {
if(changes.length()>140){ if(changes.length()>140){
changes=changes.substring(0,141)+"……"; changes=changes.substring(0,141)+"……";
} }
//project="tuia-media"; */
this.total=total; this.total=total;
this.passCount=passCount; this.passCount=passCount;
this.skipCount=skipCount; this.skipCount=skipCount;
...@@ -125,14 +135,16 @@ public class DingdingResult { ...@@ -125,14 +135,16 @@ public class DingdingResult {
result.put("skipCount",this.total); result.put("skipCount",this.total);
result.put("failCount",0); result.put("failCount",0);
} }
result.put("changes",this.changes+"<br>"); // result.put("changes",this.changes+"<br>");
result.put("changes",this.changes);
if(this.failCount>0||exceptionServices.size()>0||exceptionMessage.size()>0){ if(this.failCount>0||exceptionServices.size()>0||exceptionMessage.size()>0){
try{ // try{
String name = this.changes.split("—")[1].split("/")[0]; // String name = this.changes.split("—")[1].split("/")[0];
names.add(name); // names.add(name);
}catch(Exception e){ // }catch(Exception e){
System.out.println(e); // System.out.println(e);
} // }
}else { }else {
names.clear(); names.clear();
......
package base;
import org.gitlab.api.GitlabAPI;
import org.gitlab.api.models.GitabProjectLatelyChangeQry;
import org.gitlab.api.models.GitlabProject;
import org.gitlab.api.models.GitlabProjectMerges;
import java.io.IOException;
import java.util.List;
/**
* Created by mabo on 2018/12/5
*/
public class GitlabUtils {
public static final String GIT_URL = "http://gitlab2.dui88.com";
public static final String SECRET = "rCyBy1sQ-JckquyFmo4c";
public static GitlabProjectMerges getMessage(String namespace,String projectname){
GitlabAPI gitlabAPI = GitlabAPI.connect(GitlabUtils.GIT_URL, GitlabUtils.SECRET);
GitlabProject gitlabProject= null;
try {
gitlabProject = gitlabAPI.getProject(namespace,projectname);
// gitlabProject = gitlabAPI.getProject("credits-group","hdtool-web");
} catch (IOException e) {
e.printStackTrace();
}
GitabProjectLatelyChangeQry qry = new GitabProjectLatelyChangeQry();
qry.setId(gitlabProject.getId());
qry.setTargetBranch("develop");
List<GitlabProjectMerges> projectMerges = null;
try {
projectMerges = gitlabAPI.getLatelyMergeInfo(qry);
} catch (IOException e) {
e.printStackTrace();
}
System.out.println(projectMerges.size());
GitlabProjectMerges gitlabProjectMerges = projectMerges.get(0);
return gitlabProjectMerges;
}
public static void main(String[] args) throws IOException {
// GitlabAPI gitlabAPI = GitlabAPI.connect(GitlabUtils.GIT_URL, GitlabUtils.SECRET);
// GitlabProject gitlabProject=gitlabAPI.getProject("credits-group","hdtool-web");
//
// GitabProjectLatelyChangeQry qry = new GitabProjectLatelyChangeQry();
// qry.setId(gitlabProject.getId());
// qry.setTargetBranch("develop");
// List<GitlabProjectMerges> projectMerges = gitlabAPI.getLatelyMergeInfo(qry);
// System.out.println(projectMerges.size());
// GitlabProjectMerges gitlabProjectMerges = projectMerges.get(0);
GitlabProjectMerges gitlabProjectMerges = getMessage("credits-group","trade-access-web");
System.out.println(gitlabProjectMerges.getDescription());
System.out.println(gitlabProjectMerges.getAuthor().getName());
System.out.println(gitlabProjectMerges.getAuthor().getUsername());
System.out.println(gitlabProjectMerges.getAuthor().getId());
}
}
...@@ -25,6 +25,7 @@ public class Postman { ...@@ -25,6 +25,7 @@ public class Postman {
final static String testPlatformUrl = "http://101.37.27.82:8080/insert"; final static String testPlatformUrl = "http://101.37.27.82:8080/insert";
final static String miriaUrl = "http://miria-aliyun.duibatest.com.cn/autoTest/finish"; final static String miriaUrl = "http://miria-aliyun.duibatest.com.cn/autoTest/finish";
final static String miriaUrlTesting = "http://miria-aliyun.duibatest.com.cn/autoTest/testing"; final static String miriaUrlTesting = "http://miria-aliyun.duibatest.com.cn/autoTest/testing";
final static String miriaUrlFindTestApp = "http://miria-aliyun.duibatest.com.cn/autoTest/findTestApp";
//dingdingUrl="http://www.json.cn/"; //dingdingUrl="http://www.json.cn/";
private static Logger logger = LogManager.getLogger(Postman.class); private static Logger logger = LogManager.getLogger(Postman.class);
...@@ -67,6 +68,15 @@ public class Postman { ...@@ -67,6 +68,15 @@ public class Postman {
System.out.println("miriaUrl:"+miriaUrlTesting); System.out.println("miriaUrl:"+miriaUrlTesting);
System.out.println("miria响应结果:"+response.asString()); System.out.println("miria响应结果:"+response.asString());
} }
public static String sendFindTestApp(Map result){
Response response=given().params(result).get(miriaUrlFindTestApp);
System.out.println("jobName:"+result.get("jobName"));
System.out.println("miriaUrl:"+miriaUrlTesting);
System.out.println("miria响应结果:"+response.asString());
String value = response.jsonPath().getString("value");
return value;
}
public static Boolean getName(){ public static Boolean getName(){
Calendar c = Calendar.getInstance(); Calendar c = Calendar.getInstance();
Date date = new Date(); Date date = new Date();
......
...@@ -393,7 +393,7 @@ public class Item_FloorTest extends DuibaTestBase { ...@@ -393,7 +393,7 @@ public class Item_FloorTest extends DuibaTestBase {
JsonPath jsonPath=from(s.substring(s.indexOf("{"),s.length()-1)); JsonPath jsonPath=from(s.substring(s.indexOf("{"),s.length()-1));
List<Map> list = jsonPath.getList("list",Map.class); List<Map> list = jsonPath.getList("list",Map.class);
Assert.assertEquals(list.size(),listDev.size(),"开发者配置和手机端展示数量不符"); // Assert.assertEquals(list.size(),listDev.size(),"开发者配置和手机端展示数量不符");
......
...@@ -70,7 +70,10 @@ public class 新集卡_开奖流程_DuibaTest extends DuibaTestBase { ...@@ -70,7 +70,10 @@ public class 新集卡_开奖流程_DuibaTest extends DuibaTestBase {
String collectRuleId = data.get("collectRuleId"); String collectRuleId = data.get("collectRuleId");
Integer uid = Integer.valueOf(data.get("uid").toString()); Integer uid = Integer.valueOf(data.get("uid").toString());
String count = data.get("count"); String count = data.get("count");
String consumerId = data.get("consumerId");
String itemIdDb = data.get("itemId");
clearCardInfo(itemIdDb,consumerId);
String itemId = null; String itemId = null;
for (int i=0;i<Integer.valueOf(count);i++){ for (int i=0;i<Integer.valueOf(count);i++){
...@@ -447,4 +450,11 @@ public class 新集卡_开奖流程_DuibaTest extends DuibaTestBase { ...@@ -447,4 +450,11 @@ public class 新集卡_开奖流程_DuibaTest extends DuibaTestBase {
} }
public void clearCardInfo(String itemId ,String comsumerIds) throws Exception{
String dbName = "collect_card_consumer.tb_collect_card_info_"+ String.format("%04d", Long.parseLong(comsumerIds)%1024);
logger.info("用户的分表名dbName为"+dbName);
Boolean res1 = jdbc.update("update "+dbName+" set item_count = '0' where item_id = ? and consumer_id = ?",itemId,comsumerIds);
}
} }
\ No newline at end of file
...@@ -68,7 +68,7 @@ public class pk_列表测试_AccessTest extends DuibaTestBase { ...@@ -68,7 +68,7 @@ public class pk_列表测试_AccessTest extends DuibaTestBase {
List<BetMobileVo> unbetList_uid_18816 = response_uid_18816.jsonPath().getList("data.unbetList",BetMobileVo.class); List<BetMobileVo> unbetList_uid_18816 = response_uid_18816.jsonPath().getList("data.unbetList",BetMobileVo.class);
logger.info("unbetList_uid_188166的信息为"+ JSONObject.toJSONString(unbetList_uid_18816)); logger.info("unbetList_uid_188166的信息为"+ JSONObject.toJSONString(unbetList_uid_18816));
Assert.assertEquals(String.valueOf(unbetList_uid_18816.size()),"0","已投注的活动为0校验失败"); Assert.assertEquals(String.valueOf(unbetList_uid_18816.size()),"0","已投注的活动为0校验失败");
Assert.assertEquals(String.valueOf(betedList_uid_18816.size()),"0","未投注的活动为0校验失败"); Assert.assertEquals(String.valueOf(betedList_uid_18816.size()),"2","未投注的活动为0校验失败");
logger.info("没有添加pk楼层,用户的列表数据校验成功,均为空,betedList_uid_18816="+ JSON.toJSONString(betedList_uid_18816)+"\nunbetList_uid_18816="+ JSON.toJSONString(unbetList_uid_18816)); logger.info("没有添加pk楼层,用户的列表数据校验成功,均为空,betedList_uid_18816="+ JSON.toJSONString(betedList_uid_18816)+"\nunbetList_uid_18816="+ JSON.toJSONString(unbetList_uid_18816));
...@@ -85,7 +85,7 @@ public class pk_列表测试_AccessTest extends DuibaTestBase { ...@@ -85,7 +85,7 @@ public class pk_列表测试_AccessTest extends DuibaTestBase {
List<BetMobileVo> betedList_uided_2239 = response_uided_2239.jsonPath().getList("data.betedList",BetMobileVo.class); List<BetMobileVo> betedList_uided_2239 = response_uided_2239.jsonPath().getList("data.betedList",BetMobileVo.class);
List<BetMobileVo> unbetList_uided_2239 = response_uided_2239.jsonPath().getList("data.unbetList",BetMobileVo.class); List<BetMobileVo> unbetList_uided_2239 = response_uided_2239.jsonPath().getList("data.unbetList",BetMobileVo.class);
Assert.assertEquals(String.valueOf(betedList_uided_2239.size()),"2","已投注的活动为2校验失败"); Assert.assertEquals(String.valueOf(betedList_uided_2239.size()),"2","已投注的活动为2校验失败");
Assert.assertEquals(String.valueOf(unbetList_uided_2239.size()),"4","已投注的活动为4校验失败"); Assert.assertEquals(String.valueOf(unbetList_uided_2239.size()),"5","已投注的活动为4校验失败");
logger.info("添加pk楼层未参加活动,未押注活动列表数据校验成功,unbetList_uided_2239="+ JSON.toJSONString(unbetList_uided_2239)+"\n已押注列表为空betedList_uided_2239="+ JSON.toJSONString(betedList_uided_2239)); logger.info("添加pk楼层未参加活动,未押注活动列表数据校验成功,unbetList_uided_2239="+ JSON.toJSONString(unbetList_uided_2239)+"\n已押注列表为空betedList_uided_2239="+ JSON.toJSONString(betedList_uided_2239));
for (int i=0;i<betedList_uided_2239.size()-1;i++){ for (int i=0;i<betedList_uided_2239.size()-1;i++){
......
...@@ -221,9 +221,10 @@ public class pk_开奖_批量用户开奖测试 extends DuibaTestBase { ...@@ -221,9 +221,10 @@ public class pk_开奖_批量用户开奖测试 extends DuibaTestBase {
try { try {
Boolean result1 = jdbc.update("delete from act_com_conf.tb_bet_option where bet_id in (select id from act_com_conf.tb_bet_config where title like '【自动化】瓜分红包%')"); Boolean result1 = jdbc.update("delete from act_com_conf.tb_bet_option where bet_id in (select id from act_com_conf.tb_bet_config where title like '【自动化】瓜分红包%')");
Boolean result4 = jdbc.update("delete from act_record.tb_bet_record where bet_id in (select id from act_com_conf.tb_bet_config where title like '【自动化】瓜分红包%')");
Boolean result5 = jdbc.update("delete from bet_activity.tb_bet_result where bet_id in (select id from act_com_conf.tb_bet_config where title like '【自动化】瓜分红包%')");
Boolean result2 = jdbc.update("delete from act_com_conf.tb_bet_group_relation where bet_id in (select id from act_com_conf.tb_bet_config where title like '【自动化】瓜分红包%')"); Boolean result2 = jdbc.update("delete from act_com_conf.tb_bet_group_relation where bet_id in (select id from act_com_conf.tb_bet_config where title like '【自动化】瓜分红包%')");
Boolean result3 = jdbc.update("delete from act_com_conf.tb_bet_config where title like '【自动化】瓜分红包%'"); Boolean result3 = jdbc.update("delete from act_com_conf.tb_bet_config where title like '【自动化】瓜分红包%'");
Boolean result4 = jdbc.update("delete from act_record.tb_bet_record where bet_id in (select id from act_com_conf.tb_bet_config where title like '【自动化】瓜分红包%')");
clear(consumerIds); clear(consumerIds);
......
...@@ -234,6 +234,7 @@ public class pk_开奖_瓜分红包_押注人数不同测试_AccessTest extends ...@@ -234,6 +234,7 @@ public class pk_开奖_瓜分红包_押注人数不同测试_AccessTest extends
Boolean result1 = jdbc.update("delete from act_com_conf.tb_bet_option where bet_id in (select id from act_com_conf.tb_bet_config where title like '【自动化】瓜分红包%')"); Boolean result1 = jdbc.update("delete from act_com_conf.tb_bet_option where bet_id in (select id from act_com_conf.tb_bet_config where title like '【自动化】瓜分红包%')");
Boolean result4 = jdbc.update("delete from act_record.tb_bet_record where bet_id in (select id from act_com_conf.tb_bet_config where title like '【自动化】瓜分红包%')"); Boolean result4 = jdbc.update("delete from act_record.tb_bet_record where bet_id in (select id from act_com_conf.tb_bet_config where title like '【自动化】瓜分红包%')");
Boolean result5 = jdbc.update("delete from bet_activity.tb_bet_result where bet_id in (select id from act_com_conf.tb_bet_config where title like '【自动化】瓜分红包%')");
Boolean result2 = jdbc.update("delete from act_com_conf.tb_bet_group_relation where bet_id in (select id from act_com_conf.tb_bet_config where title like '【自动化】瓜分红包%')"); Boolean result2 = jdbc.update("delete from act_com_conf.tb_bet_group_relation where bet_id in (select id from act_com_conf.tb_bet_config where title like '【自动化】瓜分红包%')");
Boolean result3 = jdbc.update("delete from act_com_conf.tb_bet_config where title like '【自动化】瓜分红包%'"); Boolean result3 = jdbc.update("delete from act_com_conf.tb_bet_config where title like '【自动化】瓜分红包%'");
......
...@@ -186,6 +186,7 @@ public class pk_开奖_瓜分红包_押注人数相同测试_AccessTest extends ...@@ -186,6 +186,7 @@ public class pk_开奖_瓜分红包_押注人数相同测试_AccessTest extends
Boolean result1 = jdbc.update("delete from act_com_conf.tb_bet_option where bet_id in (select id from act_com_conf.tb_bet_config where title like '【自动化】瓜分红包%')"); Boolean result1 = jdbc.update("delete from act_com_conf.tb_bet_option where bet_id in (select id from act_com_conf.tb_bet_config where title like '【自动化】瓜分红包%')");
Boolean result4 = jdbc.update("delete from act_record.tb_bet_record where bet_id in (select id from act_com_conf.tb_bet_config where title like '【自动化】瓜分红包%')"); Boolean result4 = jdbc.update("delete from act_record.tb_bet_record where bet_id in (select id from act_com_conf.tb_bet_config where title like '【自动化】瓜分红包%')");
Boolean result5 = jdbc.update("delete from bet_activity.tb_bet_result where bet_id in (select id from act_com_conf.tb_bet_config where title like '【自动化】瓜分红包%')");
Boolean result2 = jdbc.update("delete from act_com_conf.tb_bet_group_relation where bet_id in (select id from act_com_conf.tb_bet_config where title like '【自动化】瓜分红包%')"); Boolean result2 = jdbc.update("delete from act_com_conf.tb_bet_group_relation where bet_id in (select id from act_com_conf.tb_bet_config where title like '【自动化】瓜分红包%')");
Boolean result3 = jdbc.update("delete from act_com_conf.tb_bet_config where title like '【自动化】瓜分红包%'"); Boolean result3 = jdbc.update("delete from act_com_conf.tb_bet_config where title like '【自动化】瓜分红包%'");
......
...@@ -10,7 +10,9 @@ package http.cases.PkTest; ...@@ -10,7 +10,9 @@ package http.cases.PkTest;
import base.DuibaLog; import base.DuibaLog;
import base.DuibaTestBase; import base.DuibaTestBase;
import com.alibaba.fastjson.JSONObject;
import http.service.Activity.PkService; import http.service.Activity.PkService;
import http.service.Manager.EditManagerInfoService;
import http.service.hd.DeveloperConfigService; import http.service.hd.DeveloperConfigService;
import io.restassured.response.Response; import io.restassured.response.Response;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -19,8 +21,10 @@ import org.testng.Assert; ...@@ -19,8 +21,10 @@ import org.testng.Assert;
import org.testng.annotations.AfterMethod; import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeMethod; import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test; import org.testng.annotations.Test;
import utils.GetCookieUtil;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -38,6 +42,10 @@ public class pk_押注测试_AccessTest extends DuibaTestBase { ...@@ -38,6 +42,10 @@ public class pk_押注测试_AccessTest extends DuibaTestBase {
PkService pkService; PkService pkService;
@Autowired @Autowired
DeveloperConfigService developerConfigService; DeveloperConfigService developerConfigService;
@Autowired
EditManagerInfoService editManagerInfoService;
private DuibaLog logger = DuibaLog.getLogger(); private DuibaLog logger = DuibaLog.getLogger();
...@@ -47,6 +55,7 @@ public class pk_押注测试_AccessTest extends DuibaTestBase { ...@@ -47,6 +55,7 @@ public class pk_押注测试_AccessTest extends DuibaTestBase {
private static String uid02_consumerId = "100066016"; private static String uid02_consumerId = "100066016";
private String consumerIds = "";
private List<String> orderIds = new ArrayList<>(); private List<String> orderIds = new ArrayList<>();
...@@ -68,7 +77,7 @@ public class pk_押注测试_AccessTest extends DuibaTestBase { ...@@ -68,7 +77,7 @@ public class pk_押注测试_AccessTest extends DuibaTestBase {
@Test @Test
public void 押注测试() throws Exception{ public void 押注_红包活动测试() throws Exception{
Map<String,Object> user = jdbc.findSimpleResult("select * from dafuweng.user where id=?\n",uid01); Map<String,Object> user = jdbc.findSimpleResult("select * from dafuweng.user where id=?\n",uid01);
Map<String,Object> consumer = jdbc.findSimpleResult("select * from new_consumer.consumer_0010 where id=?\n",uid01_consumerId); Map<String,Object> consumer = jdbc.findSimpleResult("select * from new_consumer.consumer_0010 where id=?\n",uid01_consumerId);
Long userCredit = Long.parseLong(user.get("credits").toString()); Long userCredit = Long.parseLong(user.get("credits").toString());
...@@ -143,6 +152,40 @@ public class pk_押注测试_AccessTest extends DuibaTestBase { ...@@ -143,6 +152,40 @@ public class pk_押注测试_AccessTest extends DuibaTestBase {
} }
@Test
public void 押注_新用户首次参与测试() throws Exception{
Map<String,String> user = this.createUser();
consumerIds = user.get("consumerId");
logger.info("consumerIds的信息为"+consumerIds);
Response doJoinResponse = pkService.doJoin2(Integer.valueOf(user.get("uid")),"124","248");
doJoinResponse.prettyPrint();
Assert.assertEquals(doJoinResponse.jsonPath().getString("code").toString(),"100060");
}
public Map<String,String> createUser() throws Exception{
Map<String,String> map = new HashMap<>();
Response response = editManagerInfoService.createUser("pk活动首次参与用户");
Map<String,Object> user = jdbc.findSimpleResult("select * from dafuweng.user where name = 'pk活动首次参与用户' and app_id = '67'\n");
String uid = user.get("id").toString();
String url = GetCookieUtil.genUrl(uid,"3erv8LvBxKBSyuGK5i8FSGyYoFD1");
JSONObject cookie = GetCookieUtil.getConsumerIdFromCookie(url);
map.put("uid",uid);
map.put("consumerId",cookie.get("cid").toString());
logger.info("用户信息为,uid="+uid+"consumerId="+cookie.get("cid").toString());
return map;
}
public void clear(String comsumerIds) throws Exception{
Boolean res = jdbc.update("delete from dafuweng.user where name = 'pk活动首次参与用户' and app_id = '67'");
String dbName = "new_consumer.consumer_"+ String.format("%04d", Long.parseLong(comsumerIds)/10000000);
logger.info("用户的分表名dbName为"+dbName);
Boolean res1 = jdbc.update("delete from "+dbName+" where id = ?",comsumerIds);
}
@AfterMethod @AfterMethod
public void tearDown() { public void tearDown() {
...@@ -152,6 +195,8 @@ public class pk_押注测试_AccessTest extends DuibaTestBase { ...@@ -152,6 +195,8 @@ public class pk_押注测试_AccessTest extends DuibaTestBase {
for (String orderId:orderIds){ for (String orderId:orderIds){
Boolean result2 = jdbc.update("delete from activity_order_con.tb_trade_center_activity_order_0735 where order_num = ?\n",orderId); Boolean result2 = jdbc.update("delete from activity_order_con.tb_trade_center_activity_order_0735 where order_num = ?\n",orderId);
} }
clear(consumerIds);
}catch (Exception e){ }catch (Exception e){
e.printStackTrace(); e.printStackTrace();
......
package http.cases.SaasDeveloperTest;
import base.Config;
import base.DuibaTestBase;
import http.service.Saas.DeveloperBJZ;
import base.DuibaLog;
import http.service.Saas.DeveloperObjectService;
import io.restassured.response.Response;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.testng.AbstractTestNGSpringContextTests;
import org.testng.Assert;
import org.testng.annotations.Test;
@ContextConfiguration(classes = Config.class)
public class 补给站 extends DuibaTestBase {
@Autowired
DeveloperBJZ developerBJZ;
@Autowired
DeveloperObjectService developerObjectService;
private DuibaLog logger = DuibaLog.getLogger();
String appId="19515";
//添加、上架至尊版实物
@Test
public void a_添加至尊版实物() throws Exception{
//查询列表,获取ID
Response response =developerBJZ.item("2");
String id= String.valueOf(response.jsonPath().getString("data.list[0].id"));
String title= String.valueOf(response.jsonPath().getString("data.list[0].title"));
//添加
developerBJZ.ajaxAddRepo(appId,id);
//上架
developerBJZ.ajaxDirectUp(appId,id);
//查询商品列表,验证商品是否上架成功
Response response2 =developerObjectService.appItems(appId,title);
String appItemId = String.valueOf(response2.jsonPath().getString("data.list[0].id"));
Assert.assertEquals(response2.jsonPath().getString("data.list[0].title"), "测试至尊享版-实物3", "校验实物标题失败");
Assert.assertEquals(response2.jsonPath().getString("data.list[0].status"), "1", "校验实物状态失败");
Assert.assertEquals(response2.jsonPath().getString("data.list[0].type"), "object", "校验实物类型失败");
logger.info("校验title,status成功");
//删除添加的商品
developerObjectService.ajaxDel(appItemId);
}
//添加、上架优惠券
@Test
public void b_添加至尊版优惠券() throws Exception{
//查询列表,获取ID
Response response =developerBJZ.coupons(appId,"2");
String id= String.valueOf(response.jsonPath().getString("data.list[0].id"));
String title= String.valueOf(response.jsonPath().getString("data.list[0].title"));
//添加
developerBJZ.ajaxAddRepo(appId,id);
//上架
developerBJZ.ajaxDirectUp(appId,id);
//查询商品列表,验证商品是否上架成功
Response response2 =developerObjectService.appItems(appId,title);
String appItemId = String.valueOf(response2.jsonPath().getString("data.list[0].id"));
Assert.assertEquals(response2.jsonPath().getString("data.list[0].title"), "测试至尊享版-优惠券", "校验优惠券标题名称失败");
Assert.assertEquals(response2.jsonPath().getString("data.list[0].status"), "1", "校验优惠券状态失败");
Assert.assertEquals(response2.jsonPath().getString("data.list[0].type"), "coupon", "校验优惠券类型失败");
logger.info("校验title,status成功");
//删除添加的商品
developerObjectService.ajaxDel(appItemId);
}
//添加活动
@Test
public void c_添加活动() throws Exception{
//查询热门活动-活动列表,获取商品ID
Response response=developerBJZ.saasActivitys("3");
String goodItemId= String.valueOf(response.jsonPath().getString("data.saasActivitys[0].id"));
//获取商品ID,进入商品订购页面,获取SKU
Response response2=developerBJZ.itemOrderDetail(goodItemId);
String skuId= String.valueOf(response2.jsonPath().getString("data.goodsItemSku[0].skuId"));
//点击订购,传入SKU创建订单
logger.info("kuid==="+skuId);
Response response3=developerBJZ.createAutomationOrderNew(skuId);
String orderid= String.valueOf(response3.jsonPath().getString("data"));
logger.info("kuid==="+orderid);
//下单购买
Response response4=developerBJZ.orderAccountPay(orderid);
}
}
package http.cases.SaasDeveloperTest;
import base.Config;
import http.service.Saas.DeveloperBJZ;
import base.DuibaLog;
import io.restassured.response.Response;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.testng.AbstractTestNGSpringContextTests;
import org.testng.Assert;
import org.testng.annotations.Test;
@ContextConfiguration(classes = Config.class)
public class 补给站_商品_DuibaTest extends AbstractTestNGSpringContextTests {
@Autowired
DeveloperBJZ developerBJZ;
private DuibaLog logger = DuibaLog.getLogger();
//至尊版app
private static String appId = "19515";
//旗舰版app
private static String appId2 = "21695";
@Test(description = "至尊版app添加、上架至尊版实物")
public void a_添加至尊版实物() throws Exception {
//查询列表,获取ID
Response response = developerBJZ.items("2", appId);
String itemId = String.valueOf(response.jsonPath().getString("data.list[0].id"));
String itemIds = String.valueOf(response.jsonPath().getString("data.list[0].id"));
String itemName = String.valueOf(response.jsonPath().getString("data.list[0].title"));
//添加
developerBJZ.ajaxAddRepo(appId, itemId);
//上架
developerBJZ.ajaxDirectUp(appId, itemIds);
//查询商品列表,验证商品是否上架成功
Response response2 = developerBJZ.appItems(appId, itemName);
String appItemId2 = response2.jsonPath().getString("data.list[0].id");
Assert.assertEquals(response2.jsonPath().getString("data.list[0].title"), "测试至尊享版-实物3", "校验实物标题失败");
Assert.assertEquals(response2.jsonPath().getString("data.list[0].status"), "1", "校验实物状态失败");
Assert.assertEquals(response2.jsonPath().getString("data.list[0].type"), "object", "校验实物类型失败");
logger.info("校验title,status,type成功");
//删除添加的商品
developerBJZ.ajaxDel(appId, appItemId2);
}
@Test(description = "旗舰版app添加、上架至尊版实物:异常场景,提示不能上架")
public void b_旗舰版添加至尊版实物() throws Exception {
//查询列表,获取ID
Response response = developerBJZ.items("2", appId2);
String id = String.valueOf(response.jsonPath().getString("data.list[0].id"));
//上架
Response response2 = developerBJZ.ajaxDirectUp2(appId2, id);
//接口提示,至尊版专享,不能上架
Assert.assertEquals(response2.jsonPath().getString("desc"), "至尊版专享", "校验接口上架失败");
}
@Test(description = "优质好货搜索功能")
public void c_实物搜索() throws Exception {
// 根据具体的名称搜索出实物
developerBJZ.items2("2", appId);
// 输入精确的名称查询不到此实物
developerBJZ.items3("2", appId);
}
@Test(description = "//添加、上架优惠券")
public void d_添加至尊版优惠券() throws Exception {
//查询列表,获取ID
Response response = developerBJZ.coupons(appId, "2");
String itemId = String.valueOf(response.jsonPath().getString("data.list[0].id"));
String itemIds = String.valueOf(response.jsonPath().getString("data.list[0].id"));
String itemName = String.valueOf(response.jsonPath().getString("data.list[0].title"));
//添加
developerBJZ.ajaxAddRepo(appId, itemId);
//上架
developerBJZ.ajaxDirectUp(appId, itemIds);
//查询商品列表,验证商品是否上架成功
Response response2 = developerBJZ.appItems(appId, itemName);
String appItemId2 = String.valueOf(response2.jsonPath().getString("data.list[0].id"));
Assert.assertEquals(response2.jsonPath().getString("data.list[0].title"), "测试至尊享版-优惠券", "校验优惠券标题名称失败");
Assert.assertEquals(response2.jsonPath().getString("data.list[0].status"), "1", "校验优惠券状态失败");
Assert.assertEquals(response2.jsonPath().getString("data.list[0].type"), "coupon", "校验优惠券类型失败");
logger.info("校验title,status,type成功");
//删除添加的优惠券
developerBJZ.ajaxDel(appId, appItemId2);
}
@Test(description = "//旗舰版app添加、上架至尊版优惠券:异常场景,提示不能上架")
public void e_旗舰版添加至尊版优惠券() throws Exception {
//查询列表,获取ID
Response response = developerBJZ.coupons(appId2, "2");
String id = String.valueOf(response.jsonPath().getString("data.list[0].id"));
//上架
Response response2 = developerBJZ.ajaxDirectUp2(appId2, id);
//接口提示,至尊版专享,不能上架
Assert.assertEquals(response2.jsonPath().getString("desc"), "至尊版专享", "校验接口上架失败");
}
@Test(description = "//添加直冲类")
public void f_添加直冲类() throws Exception {
Response response = developerBJZ.directCharges(appId);
String itemId = String.valueOf(response.jsonPath().getString("data.list[1].id"));
String itemName = String.valueOf(response.jsonPath().getString("data.list[1].title"));
//添加直冲类
developerBJZ.ajaxAddRepo(appId, itemId);
//查询商品列表,验证商品是否添加成功
Response response2 = developerBJZ.appItems(appId, itemName);
String appItemId2 = String.valueOf(response2.jsonPath().getString("data.list[0].id"));
Assert.assertEquals(response2.jsonPath().getString("data.list[0].title"), "Q币充值", "校验标题名称失败");
Assert.assertEquals(response2.jsonPath().getString("data.list[0].status"), "0", "校验状态失败");
Assert.assertEquals(response2.jsonPath().getString("data.list[0].type"), "qb", "校验类型失败");
logger.info("校验title,status,type成功");
//删除添加的直冲类
developerBJZ.ajaxDel(appId, appItemId2);
}
}
\ No newline at end of file
package http.cases.SaasDeveloperTest;
import base.Config;
import http.service.Saas.DeveloperBJZ;
import base.DuibaLog;
import io.restassured.response.Response;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.testng.AbstractTestNGSpringContextTests;
import org.testng.Assert;
import org.testng.annotations.Test;
@ContextConfiguration(classes = Config.class)
public class 补给站_活动_DuibaTest extends AbstractTestNGSpringContextTests{
@Autowired
DeveloperBJZ developerBJZ;
private DuibaLog logger = DuibaLog.getLogger();
//至尊版app
String appId="19515";
//旗舰版app
String appId2="21695";
//添加活动
@Test(description = "//添加活动")
public void a_添加活动() throws Exception{
//查询热门活动-活动列表,获取商品ID
Response response=developerBJZ.saasActivitys("3",appId);
String goodItemId= String.valueOf(response.jsonPath().getString("data.saasActivitys[0].id"));
//获取商品ID,进入商品订购页面,获取SKU
Response response2=developerBJZ.itemOrderDetail(goodItemId,appId);
String skuId= String.valueOf(response2.jsonPath().getString("data.goodsItemSku[0].skuId"));
//点击订购,传入SKU创建订单
logger.info("kuid==="+skuId);
Response response3=developerBJZ.createAutomationOrderNew(skuId,appId);
String orderid= String.valueOf(response3.jsonPath().getString("data"));
logger.info("kuid==="+orderid);
//下单购买
developerBJZ.orderAccountPay(orderid,appId);
//查询是否购买成功
Response response4=developerBJZ.findOrderById(orderid,appId);
Assert.assertEquals(response4.jsonPath().getString("data.vo.funcName"), "自动化测试活动--勿动", "校验名称失败");
Assert.assertEquals(response4.jsonPath().getString("data.vo.limitTime"), "一年", "校验购买期限失败");
logger.info("校验名称,期限成功");
}
@Test(description = "//添加签到活动")
public void b_添加签到活动() throws Exception{
//查询热门活动-活动列表,获取商品ID
Response response=developerBJZ.saasActivitys("2",appId);
String goodItemId= String.valueOf(response.jsonPath().getString("data.saasActivitys[1].id"));
//获取商品ID,进入商品订购页面,获取SKU
Response response2=developerBJZ.itemOrderDetail(goodItemId,appId);
String skuId= String.valueOf(response2.jsonPath().getString("data.goodsItemSku[0].skuId"));
//点击订购,传入SKU创建订单
logger.info("kuid==="+skuId);
Response response3=developerBJZ.createAutomationOrderNew(skuId,appId);
String orderid= String.valueOf(response3.jsonPath().getString("data"));
logger.info("kuid==="+orderid);
//下单购买
developerBJZ.orderAccountPay(orderid,appId);
//查询是否购买成功
Response response4=developerBJZ.findOrderById(orderid,appId);
Assert.assertEquals(response4.jsonPath().getString("data.vo.funcName"), "SaaS签到", "校验名称失败");
logger.info("校验名称成功");
}
@Test(description = "付款时有待处理的订单(异常场景)")
public void c_待处理的订单() throws Exception{
//查询热门活动-活动列表,获取商品ID
Response response=developerBJZ.saasActivitys("2",appId);
String goodItemId= String.valueOf(response.jsonPath().getString("data.saasActivitys[1].id"));
//获取商品ID,进入商品订购页面,获取SKU
Response response2=developerBJZ.itemOrderDetail(goodItemId,appId);
String skuId= String.valueOf(response2.jsonPath().getString("data.goodsItemSku[0].skuId"));
//点击订购,传入SKU创建订单
logger.info("kuid==="+skuId);
developerBJZ.createAutomationOrderNew(skuId,appId);
developerBJZ.createAutomationOrderNew2(skuId,appId);
Assert.assertEquals(developerBJZ.createAutomationOrderNew2(skuId,appId).jsonPath().getString("desc"), "订单未处理", "校验订单待处理成功");
//查询待处理订单
Response response3=developerBJZ.selectOrders("1",appId);
Assert.assertEquals(response3.jsonPath().getString("data.list[0].serviceName"), "SaaS签到", "校验名称失败");
logger.info("查询待处理订单成功");
}
@Test(description="查询交易关闭的订单")
public void d_交易关闭的订单() throws Exception{
//查询待付款订单
Response response=developerBJZ.selectOrders("1",appId);
String orderId=String.valueOf(response.jsonPath().getString("data.list[0].id"));
// 点击取消付款,进入到交易关闭订单
developerBJZ.cancleOrder(orderId,appId);
Response response2=developerBJZ.selectOrders("3",appId);
Assert.assertEquals(response2.jsonPath().getString("data.list[0].serviceName"), "SaaS签到", "校验名称失败");
logger.info("查询交易关闭订单成功");
}
}
...@@ -31,8 +31,9 @@ public class 设置_应用信息_DuibaTest extends AbstractTestNGSpringContextTe ...@@ -31,8 +31,9 @@ public class 设置_应用信息_DuibaTest extends AbstractTestNGSpringContextTe
String unitName = isDecimalOpen ? "元" : "积分"; String unitName = isDecimalOpen ? "元" : "积分";
updateAppInfoService.UpdateAppInfo(appId,unitName,earnCreditsUrl,creditsDetailUrl,isDecimalOpen); updateAppInfoService.UpdateAppInfo(appId,unitName,earnCreditsUrl,creditsDetailUrl,isDecimalOpen);
Thread.sleep(1000);
Response response2= updateAppInfoService.appInfo(appId); Response response2= updateAppInfoService.appInfo(appId);
Assert.assertEquals(response2.jsonPath().getString("data.name"), "(saas)接口自动化应用", "校验应用名称失败"); Assert.assertEquals(response2.jsonPath().getString("data.name"), "(saas自动化)至尊版", "校验应用名称失败");
Assert.assertEquals(response2.jsonPath().getString("data.earnCreditsLetter"), "积分文案&2", "校验积分文案失败"); Assert.assertEquals(response2.jsonPath().getString("data.earnCreditsLetter"), "积分文案&2", "校验积分文案失败");
Assert.assertEquals(response2.jsonPath().getString("data.creditsDetailUrl"), "https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=1&tn=baidu&wd=www.baidu.com", "校验积分明细链接失败"); Assert.assertEquals(response2.jsonPath().getString("data.creditsDetailUrl"), "https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=1&tn=baidu&wd=www.baidu.com", "校验积分明细链接失败");
logger.info("保存应用信息成功"); logger.info("保存应用信息成功");
......
...@@ -70,7 +70,7 @@ public class 开发者签到管理_signTest extends AbstractTestNGSpringContextT ...@@ -70,7 +70,7 @@ public class 开发者签到管理_signTest extends AbstractTestNGSpringContextT
Response response=signService.selectsignOperList(); Response response=signService.selectsignOperList();
//查看签到列表个数是否成功 //查看签到列表个数是否成功
Assert.assertEquals(response.jsonPath().getString("data.list[0].id"),"90", "校验签到id失败"); Assert.assertEquals(response.jsonPath().getString("data.list[0].id"),"90", "校验签到id失败");
Assert.assertEquals(response.jsonPath().getString("data.params.total"),"1", "校验总个数失败"); Assert.assertEquals(response.jsonPath().getString("data.params.total"),"2", "校验总个数失败");
logger.info("校验签到总个数成功"); logger.info("校验签到总个数成功");
} }
......
package http.cases.SingleLotteryTest;
import base.DuibaLog;
import base.DuibaTestBase;
import http.service.hd.SigninService;
import io.restassured.internal.assertion.Assertion;
import io.restassured.response.Response;
import org.springframework.beans.factory.annotation.Autowired;
import org.testng.Assert;
import org.testng.annotations.Test;
import utils.MatcherString;
/**
* Created by zhaoran on 2018/6/8.
*/
public class 预览单品抽奖_AccessTest extends DuibaTestBase {
@Autowired
SigninService signinService;
private static DuibaLog logger = DuibaLog.getLogger();
@Test
public void 预览单抽() throws Exception {
Response response = signinService.preview("18714","3","2772","36732","zhaoran@duiba.com.cn");
String url = response.jsonPath().getString("data.url");
logger.info("预览url为:"+url);
Assert.assertEquals(url.contains("http://activity.m.duibatest.com.cn/autoLogin/autologin?appKey=BDqysEMghRqpDWAaQu9S4rLihHm&uid=duiba-preview-user"), true, "校验是否展示马上使用失败");
}
}
\ No newline at end of file
package http.cases.WalletTest; package http.cases.WalletTest;
import base.DuibaTestBase; import base.DuibaTestBase;
import org.testng.annotations.BeforeClass;
import utils.RedisUtil; import utils.RedisUtil;
import http.service.Activity.SeedRedPacketService; import http.service.Activity.SeedRedPacketService;
import http.service.Activity.WalletAccountService; import http.service.Activity.WalletAccountService;
...@@ -28,6 +29,15 @@ public class 种红包_AccessTest extends DuibaTestBase{ ...@@ -28,6 +29,15 @@ public class 种红包_AccessTest extends DuibaTestBase{
Authorization authorization; Authorization authorization;
private DuibaLog logger = DuibaLog.getLogger(); private DuibaLog logger = DuibaLog.getLogger();
@BeforeClass
public void beforeclass() {
try {
//前置操作,确保土地是空地状态
seedRedPacketService.updateUserLand("19380","1","1","100066444","3");
} catch (Exception e) {
logger.info("数据前后置操作异常");
}
}
@Test @Test
public void 种红包() throws Exception { public void 种红包() throws Exception {
......
...@@ -55,6 +55,7 @@ public class Authorization { ...@@ -55,6 +55,7 @@ public class Authorization {
private static Map<String,String> hdCookies; private static Map<String,String> hdCookies;
private static Map<String,String> hdCookiesMabo; private static Map<String,String> hdCookiesMabo;
private static Map<String,String> hdCookiesSaas; private static Map<String,String> hdCookiesSaas;
private static Map<String,Map> hdCookiesSaasByApp = new ConcurrentHashMap<>();
private static Map<String,Map> hdCookiesCommon = new ConcurrentHashMap<>(); private static Map<String,Map> hdCookiesCommon = new ConcurrentHashMap<>();
private static Map<String,String> openbsCookies; private static Map<String,String> openbsCookies;
private Map<String,String> ssoCookies =null; private Map<String,String> ssoCookies =null;
...@@ -247,7 +248,10 @@ public class Authorization { ...@@ -247,7 +248,10 @@ public class Authorization {
} }
public Map hdLoginSaas(String appId){ public Map hdLoginSaas(String appId){
int i=10;
logger.info("hdCookiesSaasByApp cookies:"+hdCookiesSaasByApp.toString());
Map<String,String> hdCookies = hdCookiesSaasByApp.get(appId);
while((hdCookies==null||hdCookies.size()==0)&&i>0) {
Response token=this.hdGetToken(); Response token=this.hdGetToken();
String url = PROTOCOL + hdHost + hdLoginPath; String url = PROTOCOL + hdHost + hdLoginPath;
Map<String,String> cookies=token.getCookies(); Map<String,String> cookies=token.getCookies();
...@@ -257,12 +261,22 @@ public class Authorization { ...@@ -257,12 +261,22 @@ public class Authorization {
paras.put("redirect", "/redirectApp"); paras.put("redirect", "/redirectApp");
paras.put("isAutoLogin", "true"); paras.put("isAutoLogin", "true");
Response response = given().cookies(cookies).params(paras).post(url); Response response = given().cookies(cookies).params(paras).post(url);
Map<String,String> hdCookiesSaasByApp=new HashMap<>(response.getCookies()); Map<String,String> map = response.getCookies();
logger.info("cookies:"+map.toString());
hdCookies=new HashMap<>(response.getCookies());
if(hdCookies!=null||hdCookies.size()!=0) {
//取消安全校验 //取消安全校验
hdCookiesSaasByApp.remove("csrf_token"); hdCookies.remove("csrf_token");
hdCookiesSaasByApp.put("appId",appId); hdCookies.put("appId", appId);
return hdCookiesSaasByApp; hdCookies.put("duibaAppId", appId);
logger.info("cookies2:"+hdCookies.toString());
hdCookiesSaasByApp.put(appId,hdCookies);
}
i--;
}
logger.info("hdCookiesSaasByApp cookies集合:"+hdCookiesSaasByApp.toString());
return hdCookies;
} }
//密码为duibaduiba123 //密码为duibaduiba123
public Map hdLoginCommon(String email){ public Map hdLoginCommon(String email){
...@@ -279,7 +293,7 @@ public class Authorization { ...@@ -279,7 +293,7 @@ public class Authorization {
paras.put("isAutoLogin", "true"); paras.put("isAutoLogin", "true");
Response response = given().cookies(cookies).params(paras).post(url); Response response = given().cookies(cookies).params(paras).post(url);
hdCookies=new HashMap<>(response.getCookies()); hdCookies=new HashMap<>(response.getCookies());
if(hdCookies==null||hdCookies.size()==0){ if(hdCookies!=null||hdCookies.size()!=0){
hdCookies.remove("csrf_token"); hdCookies.remove("csrf_token");
hdCookiesCommon.put(email,hdCookies); hdCookiesCommon.put(email,hdCookies);
} }
...@@ -309,7 +323,7 @@ public class Authorization { ...@@ -309,7 +323,7 @@ public class Authorization {
Response response = given().cookies(cookies).params(paras).post(url); Response response = given().cookies(cookies).params(paras).post(url);
response.prettyPrint(); response.prettyPrint();
hdCookies=new HashMap<>(response.getCookies()); hdCookies=new HashMap<>(response.getCookies());
if(hdCookies==null||hdCookies.size()==0){ if(hdCookies!=null||hdCookies.size()!=0){
hdCookies.remove("csrf_token"); hdCookies.remove("csrf_token");
hdCookiesCommon.put(account,hdCookies); hdCookiesCommon.put(account,hdCookies);
} }
......
...@@ -20,6 +20,7 @@ import org.springframework.beans.factory.annotation.Autowired; ...@@ -20,6 +20,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.testng.Assert; import org.testng.Assert;
import utils.MatcherString;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
...@@ -119,8 +120,14 @@ public class PkActivityService { ...@@ -119,8 +120,14 @@ public class PkActivityService {
if (bonusType.equals("2")){ if (bonusType.equals("2")){
para.put("bonusAmount","0.1");//实际瓜分红包金额 para.put("bonusAmount","0.1");//实际瓜分红包金额
para.put("title","【自动化】瓜分红包"+time); para.put("title","【自动化】瓜分红包"+time);
}else { }else if (bonusType.equals("1")){
para.put("title","【自动化】瓜分经验"+time); para.put("title","【自动化】瓜分经验"+time);
}else {
para.put("title","【自动化】瓜分优惠券");
para.put("bonusAmount","");
para.put("pluginId","12");//插件id
para.put("prizeLimit","1000");//发放上限
} }
para.put("configStatus","1"); para.put("configStatus","1");
para.put("creditsValue","1"); para.put("creditsValue","1");
...@@ -303,6 +310,82 @@ public class PkActivityService { ...@@ -303,6 +310,82 @@ public class PkActivityService {
} }
//创建pk开奖的插件活动id
public Response pluginSave(String pkActivityId) throws Exception {
String saveUrl = "http://"+ ManagerHost + "/plugin/save";
String configUrl ="http://"+ ManagerHost + "/plugin/editConfig.htm";
//获取创建活动的token
Response response=given().contentType("text/html;charset=UTF-8").cookies(authorization.ssoLogin()).get(configUrl);
String token = MatcherString.getString(response.asString(), "token: '(.*?)'", 1);
List<Map<String,String>> listPrizes = new ArrayList<>();
Map<String,String> award = new HashMap<>();
award.put("type","coupon");
award.put("description","优惠券");
award.put("logo","//yun.duiba.com.cn/developer/img/activityTool/slotMachine/coupon.png");
award.put("valid","true");
award.put("rate","100");
award.put("arealimit","false");
award.put("stockBeforeChange","0");
award.put("rewardFalg","false");
award.put("prizeTag","");
award.put("winLimitScope","1");
award.put("prizesLimitScope","daily");
award.put("itemId","27097");
award.put("name","LV优惠券自动化测试链接券");
award.put("stockAfterChange","10");
award.put("remaining","10");
listPrizes.add(award);
String prizes = JSON.toJSONString(listPrizes);
Map<String, String> map = new HashMap<>();
map.put("title", "【自动化】pk开奖插件");
map.put("brickId", "92");
map.put("ruleDescription", "自动化活动规则");
map.put("rateDescription", "自动化概率说明");
map.put("multiSkinsMode", "false");
map.put("multiSkinIds","[]");
map.put("triggerTime","[]");
map.put("limitCount","1");
map.put("exitDays", "7");
map.put("anticheatExchangeLimit", "false");
map.put("limitScope", "forever");
map.put("prizes",prizes);
map.put("tag","[]");
map.put("triggerType", "1");
map.put("hiddenForDeveloper", "false");
map.put("joinVerificy", "true");
map.put("duibaRelateMode", "false");
map.put("channelType","0");
map.put("token",token);
map.put("copy", "false");
map.put("subType","plugdraw");
map.put("joinVerificyMode","15");
map.put("pkId",pkActivityId);
map.put("scenarios", "chome");
logger.info("请求保存插件活动接口的参数为:" + JSONObject.toJSONString(map));
logger.info("请求保存插件活动接口:" + saveUrl);
Response saveResponse = given().contentType("application/x-www-form-urlencoded;charset=UTF-8").cookies(authorization.ssoLogin()).params(map).post(saveUrl);
saveResponse.prettyPrint();
try{
Assert.assertEquals(saveResponse.jsonPath().getString("success"),"true");
}catch(Exception e){
throw new Exception("创建插件活动接口失败,返回信息:"+saveResponse.asString());
}catch(Error er){
throw new Exception("创建插件活动接口失败,返回信息:"+saveResponse.asString());
}
return saveResponse;
}
// public static void main(String[] args) throws Exception{ // public static void main(String[] args) throws Exception{
// String endTime = "2021-12-31 23:55:00"; // String endTime = "2021-12-31 23:55:00";
// PkActivityService pkActivityService = new PkActivityService(); // PkActivityService pkActivityService = new PkActivityService();
......
...@@ -2,6 +2,7 @@ package http.service.Manager; ...@@ -2,6 +2,7 @@ package http.service.Manager;
import base.DuibaLog; import base.DuibaLog;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import http.service.Authorization; import http.service.Authorization;
import io.restassured.response.Response; import io.restassured.response.Response;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -345,9 +346,4 @@ public class PluginService { ...@@ -345,9 +346,4 @@ public class PluginService {
} }
} }
...@@ -34,7 +34,7 @@ public class UpdateAppInfoService { ...@@ -34,7 +34,7 @@ public class UpdateAppInfoService {
Map<String,Object> map = new HashMap<>(); Map<String,Object> map = new HashMap<>();
map.put("appId",appId); map.put("appId",appId);
map.put("creditsRate","100"); map.put("creditsRate","100");
map.put("appName","(saas)接口自动化应用"); map.put("appName","(saas自动化)至尊版");
map.put("appTitle","自动化测试使用"); map.put("appTitle","自动化测试使用");
map.put("logoVal","//yun.dui88.com/images/201809/svieibjtn0.png"); map.put("logoVal","//yun.dui88.com/images/201809/svieibjtn0.png");
map.put("unitName",unitName); map.put("unitName",unitName);
......
...@@ -82,4 +82,24 @@ public class SigninService { ...@@ -82,4 +82,24 @@ public class SigninService {
} }
return response; return response;
} }
//活动预览
public Response preview(String appId,String type,String sourceId,String activityId,String email) throws Exception{
Map<String,String> map = new HashMap<>();
map.put("appId",appId);
map.put("type",type);
map.put("sourceId",sourceId);
map.put("activityId",activityId);
Response response = given().cookies(authorization.hdLoginCommon(email)).params(map).post("http://"+hdHost+"/activity/preview");
response.prettyPrint();
try{
Assert.assertEquals(response.jsonPath().getString("success"),"true");
}catch(Exception e){
throw new Exception("/activity/preview接口失败,返回信息:"+response.asString());
}catch(Error er){
throw new Exception("/activity/preview接口失败,返回信息:"+response.asString());
}
return response;
}
} }
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