Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
X
xm-sportstest
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
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
xiamai-test
xm-sportstest
Commits
bb3bb9c4
Commit
bb3bb9c4
authored
Dec 28, 2024
by
DuJunLi
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
ssh://xmgit.ixm5.cn:10022/xiamai-test/xm-sportstest
parents
2adcaa5b
0676c928
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
303 additions
and
1 deletions
+303
-1
src/main/java/com/xiaomai/cases/polar/coupon/CouponTools.java
+1
-1
src/main/java/com/xiaomai/cases/polar/invitationGifts/InvitationGiftsMinTools.java
+110
-0
src/main/java/com/xiaomai/cases/polar/invitationGifts/InvitationGiftsTools.java
+0
-0
src/main/java/com/xiaomai/cases/polar/invitationGifts/TestInvitationActivityDelete.java
+82
-0
src/main/java/com/xiaomai/cases/polar/invitationGifts/TestJoinActivity.java
+107
-0
src/main/java/com/xiaomai/enums/ApiModule.java
+3
-0
No files found.
src/main/java/com/xiaomai/cases/polar/coupon/CouponTools.java
View file @
bb3bb9c4
...
...
@@ -203,7 +203,7 @@ public class CouponTools extends BaseTestImpl {
* 查看优惠券详情
* @param couponId
*/
public
void
getCouponDetail
(
String
couponId
){
public
void
getCouponDetail
(
String
couponId
,
DataUserInfo
...
dataUserInfos
){
setUP
(
"API_getCouponDetail"
);
JSONObject
body
=
new
JSONObject
();
body
.
put
(
"operatorId"
,
dataApi
.
getLoginInfo
().
getAdminId
());
...
...
src/main/java/com/xiaomai/cases/polar/invitationGifts/InvitationGiftsMinTools.java
0 → 100644
View file @
bb3bb9c4
package
com
.
xiaomai
.
cases
.
polar
.
invitationGifts
;
import
com.alibaba.fastjson.JSONObject
;
import
com.xiaomai.basetest.BaseTestImpl
;
import
com.xiaomai.client.DataUserInfo
;
import
com.xiaomai.enums.ApiModule
;
import
com.xiaomai.enums.RequestType
;
import
com.xiaomai.enums.Terminal
;
import
org.springframework.stereotype.Component
;
@Component
(
"InvitationGiftsMinTools"
)
public
class
InvitationGiftsMinTools
extends
BaseTestImpl
{
/**
* @param
* @description:小程序获取邀请有礼详情-邀请人页面
* @author: yangjian
* @param memberId 会员ID
**/
public
JSONObject
invitationActivityGetStudioActivityDetail
(
String
memberId
,
DataUserInfo
...
dataUserInfos
)
{
dataApi
.
setApiModule
(
ApiModule
.
Lunar_Invitation
)
.
setApiName
(
"API_invitationActivityGetStudioActivityDetail"
)
.
setTerminal
(
Terminal
.
minApp
);
super
.
beforeDataRequest
(
dataUserInfos
);
JSONObject
jsonObject
=
new
JSONObject
();
jsonObject
.
put
(
"studioId"
,
dataApi
.
getLoginInfo
().
getStudioId
());
jsonObject
.
put
(
"promoterId"
,
memberId
);
//String memberId = userTools.getMemberInfo().getString("memberId");
dataApi
.
doRequest
(
RequestType
.
JSON
,
dataparams
,
jsonObject
.
toJSONString
(),
dataheadrs
).
assetsSuccess
(
true
);
JSONObject
response
=
dataApi
.
getBodyInJSON
();
return
response
;
}
/**
* @param
* @description:被邀请人页面
* @author: yangjian
* @param memberId 会员ID
* @param activityId 邀请有礼活动ID
**/
public
JSONObject
invitationActivityGetStudioActivityDetail1
(
String
memberId
,
String
activityId
,
DataUserInfo
...
dataUserInfos
)
{
dataApi
.
setApiModule
(
ApiModule
.
Lunar_Invitation
)
.
setApiName
(
"API_invitationActivityGetStudioActivityDetail"
)
.
setTerminal
(
Terminal
.
minApp
);
super
.
beforeDataRequest
(
dataUserInfos
);
JSONObject
jsonObject
=
new
JSONObject
();
jsonObject
.
put
(
"studioId"
,
dataApi
.
getLoginInfo
().
getStudioId
());
jsonObject
.
put
(
"activityId"
,
activityId
);
jsonObject
.
put
(
"promoterId"
,
memberId
);
//String memberId = userTools.getMemberInfo().getString("memberId");
dataApi
.
doRequest
(
RequestType
.
JSON
,
dataparams
,
jsonObject
.
toJSONString
(),
dataheadrs
).
assetsSuccess
(
true
);
JSONObject
response
=
dataApi
.
getBodyInJSON
();
return
response
;
}
/**
* @param
* @description:参与邀请有礼活动
* @author: yangjian
* @param memberId 会员ID
* @param promoteRecordId //被邀请人页面memberPromoteRecord-id
**/
public
JSONObject
joinActivity
(
String
memberId
,
String
promoteRecordId
,
DataUserInfo
...
dataUserInfos
)
{
dataApi
.
setApiModule
(
ApiModule
.
Lunar_Invitation
)
.
setApiName
(
"API_joinActivity"
)
.
setTerminal
(
Terminal
.
minApp
);
super
.
beforeDataRequest
(
dataUserInfos
);
JSONObject
jsonObject
=
new
JSONObject
();
jsonObject
.
put
(
"studioId"
,
dataApi
.
getLoginInfo
().
getStudioId
());
jsonObject
.
put
(
"inviteeId"
,
memberId
);
jsonObject
.
put
(
"newRegisterMember"
,
true
);
jsonObject
.
put
(
"noConsumeMember"
,
true
);
jsonObject
.
put
(
"promoteRecordId"
,
promoteRecordId
);
//String memberId = userTools.getMemberInfo().getString("memberId");
dataApi
.
doRequest
(
RequestType
.
JSON
,
dataparams
,
jsonObject
.
toJSONString
(),
dataheadrs
).
assetsSuccess
(
true
);
JSONObject
response
=
dataApi
.
getBodyInJSON
();
return
response
;
}
/**
* @param
* @description:生成推广记录
* @author: yangjian
* @param memberId 会员ID
* @param activityId 活动ID
**/
public
JSONObject
promoteActivity
(
String
memberId
,
String
activityId
,
DataUserInfo
...
dataUserInfos
)
{
dataApi
.
setApiModule
(
ApiModule
.
Lunar_Invitation
)
.
setApiName
(
"API_promoteActivity"
)
.
setTerminal
(
Terminal
.
minApp
);
super
.
beforeDataRequest
(
dataUserInfos
);
JSONObject
jsonObject
=
new
JSONObject
();
jsonObject
.
put
(
"studioId"
,
dataApi
.
getLoginInfo
().
getStudioId
());
jsonObject
.
put
(
"promoterId"
,
memberId
);
jsonObject
.
put
(
"activityId"
,
activityId
);
dataApi
.
doRequest
(
RequestType
.
JSON
,
dataparams
,
jsonObject
.
toJSONString
(),
dataheadrs
).
assetsSuccess
(
true
);
JSONObject
response
=
dataApi
.
getBodyInJSON
();
return
response
;
}
}
src/main/java/com/xiaomai/cases/polar/invitationGifts/InvitationGiftsTools.java
0 → 100644
View file @
bb3bb9c4
This diff is collapsed.
Click to expand it.
src/main/java/com/xiaomai/cases/polar/invitationGifts/TestInvitationActivityDelete.java
0 → 100644
View file @
bb3bb9c4
package
com
.
xiaomai
.
cases
.
polar
.
invitationGifts
;
import
com.alibaba.fastjson.JSONObject
;
import
com.xiaomai.cases.polar.coupon.CouponTools
;
import
com.xiaomai.cases.polar.luckyDraw.LuckyDrawTools
;
import
com.xiaomai.enums.ApiModule
;
import
com.xiaomai.enums.LoginAccount
;
import
com.xiaomai.enums.Terminal
;
import
com.xiaomai.utils.RandomStringUtil
;
import
com.xiaomai.utils.TimeUtils
;
import
com.xiaomai.utils.XMBaseTest
;
import
com.xiaomai.utils.XMJSONPath
;
import
org.testng.Assert
;
import
org.testng.annotations.BeforeMethod
;
import
org.testng.annotations.Test
;
import
javax.annotation.Resource
;
public
class
TestInvitationActivityDelete
extends
XMBaseTest
{
@Resource
(
name
=
"InvitationGiftsTools"
)
InvitationGiftsTools
InvitationGiftsTools
;
@Resource
(
name
=
"couponTools"
)
CouponTools
couponTools
;
@BeforeMethod
public
void
beforeTest
(){
xmAppApi
.
setApiModule
(
ApiModule
.
Polar_Invitation
)
.
setApiName
(
"API_invitationActivityDelete"
)
.
setLoginUser
(
LoginAccount
.
GYM_PROD
)
.
setTerminal
(
Terminal
.
B
);
dal
.
setCase_owner
(
"yangjian"
)
.
setCase_name
(
Thread
.
currentThread
().
getStackTrace
()[
1
].
getFileName
().
split
(
"\\."
)[
0
]);
super
.
beforeTest
();
}
@Test
(
description
=
"删除分享有礼活动"
)
public
void
testInvitationActivityDelete
(){
JSONObject
result1
=
InvitationGiftsTools
.
invitationActivity_getStudioPage
();
//获取邀请有礼列表
int
before
=
Integer
.
parseInt
(
result1
.
getJSONObject
(
"result"
).
getString
(
"total"
));
//列表当前有的邀请有礼数量
String
couponName
=
"邀请优惠券"
+
RandomStringUtil
.
randomString
(
5
);
//优惠券名称
String
activityName
=
"邀请有礼活动"
+
RandomStringUtil
.
randomString
(
5
);
//活动名称
String
couponId
=
couponTools
.
createStudioCoupon
(
"WITHOUT"
,
couponName
,
true
);
//创建优惠券,拿优惠券ID
String
activeId
=
InvitationGiftsTools
.
createInvitationActivity
(
activityName
,
"UNREGISTERED"
,
TimeUtils
.
getTodayEndTime
(),
TimeUtils
.
getTodayTime
(),
false
,
couponId
,
couponId
,
couponId
,
couponId
,
"COUPON"
,
"COUPON"
,
"COUPON"
,
"COUPON"
).
getString
(
"result"
);
//创建一个未发布的邀请有礼活动;
InvitationGiftsTools
.
invitationActivity_getStudioPage1
(
activityName
);
Assert
.
assertEquals
(
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result.total"
),
"1"
,
"未搜索到目标邀请有礼活动"
);
InvitationGiftsTools
.
getInvitationActivityDetail
(
activeId
);
//查看活动详情
Assert
.
assertEquals
(
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result.state"
),
"UNPUBLISHED"
,
"活动非未发布状态"
);
//断言列表第一条为未发布的活动
InvitationGiftsTools
.
invitationActivityPublish
(
activeId
);
//发布邀请有礼活动
InvitationGiftsTools
.
getInvitationActivityDetail
(
activeId
);
//查看活动详情
Assert
.
assertEquals
(
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result.state"
),
"PROCESSING"
,
"活动发布失败"
);
//断言列表第一条为进行中的活动
InvitationGiftsTools
.
invitationActivity_getStudioPage
();
//获取邀请有礼列表
Assert
.
assertEquals
(
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result.records[0].activityName"
),
activityName
,
"邀请有礼活动第一条非新建"
);
//断言列表第一条为新建的活动的名字
JSONObject
result2
=
InvitationGiftsTools
.
invitationActivity_getStudioPage
();
//获取邀请有礼列表
int
after
=
Integer
.
parseInt
(
result2
.
getJSONObject
(
"result"
).
getString
(
"total"
));
//新建后列表中邀请有礼活动数量
Assert
.
assertEquals
(
after
,
before
+
1
);
//新建邀请有礼后,列表活动数+1
InvitationGiftsTools
.
invitationActivityEdit
(
"UNREGISTERED"
,
activeId
,
TimeUtils
.
getTodayEndTime
(),
TimeUtils
.
getTodayTime
(),
true
,
couponId
,
couponId
,
couponId
,
couponId
,
"COUPON"
,
"COUPON"
,
"COUPON"
,
"COUPON"
).
getString
(
"result"
);
//编辑邀请有礼活动
InvitationGiftsTools
.
invitationActivity_getStudioPage
();
Assert
.
assertEquals
(
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result.records[0].activityName"
),
"自动化-编辑邀请有礼"
,
"邀请有礼活动第一条非新建"
);
//断言列表第一条为编辑的活动的名字
InvitationGiftsTools
.
invitationActivityInvalid
(
activeId
);
//失效邀请有礼活动
InvitationGiftsTools
.
getInvitationActivityDetail
(
activeId
);
//查看是失效的邀请有礼活动
Assert
.
assertEquals
(
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result.state"
),
"ABNORMAL"
,
"活动失效失败"
);
//断言列表第一条为失效的活动
InvitationGiftsTools
.
invitationActivityDelete
(
activeId
);
//删除活动
JSONObject
result3
=
InvitationGiftsTools
.
invitationActivity_getStudioPage
();
int
after2
=
Integer
.
parseInt
(
result3
.
getJSONObject
(
"result"
).
getString
(
"total"
));
//列表当前有的邀请有礼数量
Assert
.
assertEquals
(
after2
,
before
);
//删除后回到最初条数
}
}
src/main/java/com/xiaomai/cases/polar/invitationGifts/TestJoinActivity.java
0 → 100644
View file @
bb3bb9c4
package
com
.
xiaomai
.
cases
.
polar
.
invitationGifts
;
import
com.xiaomai.cases.lunar.user.UserTools
;
import
com.xiaomai.cases.polar.clue.MemberTools
;
import
com.xiaomai.cases.polar.coupon.CouponTools
;
import
com.xiaomai.cases.polar.memberCard.CardTools
;
import
com.xiaomai.client.DataUserInfo
;
import
com.xiaomai.enums.ApiModule
;
import
com.xiaomai.enums.LoginAccount
;
import
com.xiaomai.enums.Terminal
;
import
com.xiaomai.utils.RandomStringUtil
;
import
com.xiaomai.utils.TimeUtils
;
import
com.xiaomai.utils.XMBaseTest
;
import
com.xiaomai.utils.XMJSONPath
;
import
org.testng.Assert
;
import
org.testng.annotations.BeforeMethod
;
import
org.testng.annotations.Test
;
import
javax.annotation.Resource
;
public
class
TestJoinActivity
extends
XMBaseTest
{
@BeforeMethod
public
void
beforeTest
(){
xmAppApi
.
setApiModule
(
ApiModule
.
Lunar_Invitation
)
.
setApiName
(
"API_joinActivity"
)
.
setLoginUser
(
LoginAccount
.
GYM_MINIAPPC
)
.
setTerminal
(
Terminal
.
minApp
);
dal
.
setCase_owner
(
"yangjian"
)
.
setCase_name
(
Thread
.
currentThread
().
getStackTrace
()[
1
].
getFileName
().
split
(
"\\."
)[
0
]);
super
.
beforeTest
();
}
DataUserInfo
info
=
new
DataUserInfo
();
@Resource
(
name
=
"InvitationGiftsTools"
)
InvitationGiftsTools
InvitationGiftsTools
;
@Resource
(
name
=
"couponTools"
)
CouponTools
couponTools
;
@Resource
(
name
=
"InvitationGiftsMinTools"
)
InvitationGiftsMinTools
invitationGiftsMinTools
;
@Resource
(
name
=
"userTools"
)
UserTools
userTools
;
@Resource
(
name
=
"memberTools"
)
MemberTools
memberTools
;
@Test
(
description
=
"参与邀请有礼活动"
)
public
void
testJoinActivity
()
throws
InterruptedException
{
String
memberId
=
userTools
.
getMemberInfo
().
getString
(
"memberId"
);
//邀请人
info
.
setTerminal
(
Terminal
.
B
);
info
.
setLoginUser
(
LoginAccount
.
GYM_PROD
);
String
name
=
"自动化被邀请人"
+
RandomStringUtil
.
randomString
(
3
);
String
phone
=
RandomStringUtil
.
randomMobile
(
"111"
);
String
memberId1
=
memberTools
.
create
(
name
,
phone
,
info
).
getString
(
"result"
);
//被邀请人创建
String
couponName
=
"邀请优惠券"
+
RandomStringUtil
.
randomString
(
5
);
//优惠券名称
String
activityName
=
"邀请有礼活动"
+
RandomStringUtil
.
randomString
(
5
);
//活动名称
String
couponId
=
couponTools
.
createStudioCoupon
(
"WITHOUT"
,
couponName
,
true
,
info
);
//创建优惠券,拿优惠券ID
String
activeId
=
InvitationGiftsTools
.
createInvitationActivity
(
activityName
,
"NO_CONSUME"
,
TimeUtils
.
getTodayEndTime
(),
TimeUtils
.
getTodayTime
(),
true
,
couponId
,
couponId
,
couponId
,
couponId
,
"COUPON"
,
"COUPON"
,
"COUPON"
,
"COUPON"
,
info
).
getString
(
"result"
);
//创建发布的邀请有礼活动;
int
before
=
Integer
.
parseInt
(
XMJSONPath
.
readPath
(
InvitationGiftsTools
.
getInvitationActivityDetail
(
activeId
,
info
),
"$.result.promotedNum"
));
//B端初始推广人数
int
before1
=
Integer
.
parseInt
(
XMJSONPath
.
readPath
(
InvitationGiftsTools
.
getInvitationActivityDetail
(
activeId
,
info
),
"$.result.invitedNum"
));
//B端初始受邀人数
invitationGiftsMinTools
.
promoteActivity
(
memberId
,
activeId
);
//生成推广记录
String
promoteRecordId
=
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result"
);
//获取推广ID
int
after
=
Integer
.
parseInt
(
XMJSONPath
.
readPath
(
InvitationGiftsTools
.
getInvitationActivityDetail
(
activeId
,
info
),
"$.result.promotedNum"
));
//B端推广后的人数
Assert
.
assertEquals
(
after
,
before
+
1
);
//生成推广记录后,推广人数+1
invitationGiftsMinTools
.
joinActivity
(
memberId1
,
promoteRecordId
);
//潜在会员参与活动
int
after1
=
Integer
.
parseInt
(
XMJSONPath
.
readPath
(
InvitationGiftsTools
.
getInvitationActivityDetail
(
activeId
,
info
),
"$.result.invitedNum"
));
//B端参与活动后的受邀人数
Assert
.
assertEquals
(
after1
,
before1
+
1
);
//生成推广记录后,推广人数+1
Thread
.
sleep
(
2000
);
InvitationGiftsTools
.
InvitationGetStudioStatisticsData
(
activeId
,
null
,
null
,
info
);
//查看活动数据概括、
Assert
.
assertEquals
(
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result.promotedNum"
),
"1"
,
"邀请有礼推广失败"
);
//断言目标活动推广人数为1
Assert
.
assertEquals
(
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result.invitedNum"
),
"1"
,
"邀请有礼受邀失败"
);
//断言目标活动受邀请人数为1
InvitationGiftsTools
.
getPromoteRecordPage
(
activeId
,
null
,
null
,
null
,
info
);
//查看活动推广名单
Assert
.
assertEquals
(
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result.records[0].promoterInfo.id"
),
memberId
,
"目标推广人不正确"
);
//断言推广人为目标人员
InvitationGiftsTools
.
getJoinedRecordPage
(
activeId
,
info
);
//查看活动受邀名单
Assert
.
assertEquals
(
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result.records[0].inviteeInfo.id"
),
memberId1
,
"目标受邀请人不正确"
);
//断言受邀人为目标人员
InvitationGiftsTools
.
getRewardSendRecordPage
(
activeId
,
info
);
//查看活动发放奖品
Assert
.
assertEquals
(
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result.records[0].receivedMemberInfo.id"
),
memberId1
,
"C立即领取的奖励不是给受邀人员"
);
//断言受邀人获取奖励
couponTools
.
getCouponDetail
(
couponId
,
info
);
Assert
.
assertEquals
(
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result.received"
),
"1"
,
"优惠券没有发放成功"
);
//优惠券给受邀人发放
InvitationGiftsTools
.
invitationActivityInvalid
(
activeId
,
info
);
}
}
src/main/java/com/xiaomai/enums/ApiModule.java
View file @
bb3bb9c4
...
...
@@ -31,6 +31,7 @@ public class ApiModule {
public
static
String
Polar_LuckyDraw
=
"polar_luckyDraw"
;
//幸运抽奖
public
static
String
Polar_Membercluster
=
"polar_membercluster"
;
public
static
String
Polar_Salary
=
"polar_salary"
;
public
static
String
Polar_Invitation
=
"polar_invitation"
;
public
static
String
Polar_MemberEntry
=
"polar_memberEntry"
;
//入场
public
static
String
Polar_Export
=
"polar_export"
;
//导出
...
...
@@ -47,5 +48,6 @@ public class ApiModule {
public
static
String
Lunar_Training
=
"lunar_training"
;
//训练
public
static
String
Lunar_Share
=
"lunar_share"
;
//分享
public
static
String
Lunar_VenueArea
=
"lunar_venueArea"
;
//场地
public
static
String
Lunar_Invitation
=
"lunar_invitation"
;
}
\ 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