Commit 46570925 authored by zhanhuasheng's avatar zhanhuasheng

新增用例

parent 1b5a3548
import pytest
from Utils import yaml_handler
from Utils import req_handler
from TestData.inbox.ticketInfo_test_data import ticketInfoData
'''
这个文件和ticketStatus公用一个变量类
'''
class TestTicketInfo:
yaml_path = r'inbox\ticketInfo.yaml'
yaml_data = yaml_handler.yaml_handler.get_case(yaml_path)
@pytest.mark.parametrize('case',yaml_data)
def test_ticketInfo(self,case):
print(case)
req_handler.ReqHandler.send_requests(case=case,var_class=ticketInfoData)
from Utils.global_variate import Global
class ticketInfoData(Global):
pass
\ No newline at end of file
from Utils.global_variate import Global
class ticketStatusData(Global):
pass
\ No newline at end of file
ticket_title = 'autotest_ticket_title'
#别改这里的数据
\ No newline at end of file
from Utils.sql_handler import test_env_conn
from TestData.inbox.ticketInfo_test_data import ticketInfoData
all_ticket_select_sql = f'select * from `im_room` where `cate_id` = {ticketInfoData.brandId} and `status` = 1 and `is_ignore` = 0'
wait_ticket_select_sql = f'select * from `im_room` where `cate_id` = {ticketInfoData.brandId} and `status` = 2 and `is_ignore` = 0'
close_ticket_select_sql = f'select * from `im_room` where `cate_id` = {ticketInfoData.brandId} and `status` = 3 and `is_ignore` = 0'
your_ticket_select_sql = f'select * from `im_room` where `cate_id` = {ticketInfoData.brandId} and `status` = 1 and `allocation_uid` = {ticketInfoData.userId} and `is_ignore` = 0'
your_wait_ticket_sql = f'select * from `im_room` where `cate_id` = {ticketInfoData.brandId} and `status` = 2 and `allocation_uid` = {ticketInfoData.userId} and `is_ignore` = 0'
your_close_ticket_sql = f'select * from `im_room` where `cate_id` = {ticketInfoData.brandId} and `status` = 3 and `allocation_uid` = {ticketInfoData.userId} and `is_ignore` = 0'
all_ticket_num = len(test_env_conn.select_many_value(sql=all_ticket_select_sql))
wait_ticket_num = len(test_env_conn.select_many_value(sql=wait_ticket_select_sql))
close_ticket_num = len(test_env_conn.select_many_value(sql=close_ticket_select_sql))
your_ticket_num = len(test_env_conn.select_many_value(sql=your_ticket_select_sql))
your_wait_ticket_num = len(test_env_conn.select_many_value(sql=your_wait_ticket_sql))
your_close_ticket_num = len(test_env_conn.select_many_value(sql=your_close_ticket_sql))
setattr(ticketInfoData,'all_ticket_num',all_ticket_num)
setattr(ticketInfoData,'close_ticket_num',close_ticket_num)
setattr(ticketInfoData,'wait_ticket_num',wait_ticket_num)
setattr(ticketInfoData,'your_ticket_num',your_ticket_num)
setattr(ticketInfoData,'your_wait_ticket_num',your_wait_ticket_num)
setattr(ticketInfoData,'your_close_ticket_num',your_close_ticket_num)
from Utils.sql_handler import test_env_conn
from TestData.inbox.ticketInfo_test_data import ticketInfoData
ticket_info_select_sql = f'select * from im_room where room_id = {ticketInfoData.roomId}'
ticket_info_result = test_env_conn.select_one_value(sql=ticket_info_select_sql)
setattr(ticketInfoData, 'ticketCustomerImage', ticket_info_result['first_send_avatar'])
setattr(ticketInfoData, 'ticketCustomerName', ticket_info_result['first_send_name'])
setattr(ticketInfoData, 'ticketLastMsg', ticket_info_result['last_msg_context'])
setattr(ticketInfoData, 'ticketLastMsgTime', str(ticket_info_result['last_msg_time']))
setattr(ticketInfoData, 'ticketTitle', ticket_info_result['title'])
\ No newline at end of file
......@@ -23,7 +23,7 @@ setattr(ticketStatusData,'unassigned_ticket_num_minus',len(unassigned_ticket_num
setattr(ticketStatusData,'unassigned_ticket_id',unassigned_ticket_num[0]['room_id'])
read_ticket_select_sql = f'select * from `im_room` where `cate_id` = {ticketStatusData.brandId} and `status` = 1 and `read_status` = 2 and `room_platform` = "willdesk" and `is_ignore` = 0'
read_ticket_select_sql = f'select * from `im_room` where `cate_id` = {ticketStatusData.brandId} and `status` = 1 and `read_status` = 2 and `room_platform` = "willdesk" and `is_ignore` = 0 and `site_id` = {ticketStatusData.shopId}'
read_ticket_select_result = test_env_conn.select_one_value(sql=read_ticket_select_sql)
setattr(ticketStatusData,'read_ticket_id',str(read_ticket_select_result["room_id"]))
......
api1:
title: 检查各状态会话数量
url: /api/v1/chat/local/count
method: post
data: { "uid": "${userId}","uType": 2,"platform": 1,"siteIds": [ "${shopId}" ],"keyword": "","countType": [ "all","unread","mention","assigned","unassigned","chatbot","spam" ],"v": "${v}" }
before_sql: inbox/ticketInfo_select.py
expected:
- eq: { "$.code": 0 }
- eq: { "$.data.list.all.openCount": "${all_ticket_num}" }
- eq: { "$.data.list.all.waitCount": "${wait_ticket_num}" }
- eq: { "$.data.list.all.closeCount": "${close_ticket_num}" }
- eq: { "$.data.list.assigned.openCount": "${your_ticket_num}" }
- eq: { "$.data.list.assigned.waitCount": "${your_wait_ticket_num}" }
- eq: { "$.data.list.assigned.closeCount": "${your_close_ticket_num}" }
api2:
title: 获取一个会话id
url: /api/v1/chat/local/roomList
method: post
data: {"uid":"${userId}","uType":2,"platform":1,"siteIds":["${shopId}"],"status":1,"page":1,"pageSize":20,"sortName":"all","keyword":"","v":"${v}"}
set_value: {"roomId" : "$.data.list[0].roomId"}
expected:
- eq: { "$.code": 0 }
api3:
title: 检查会话信息
url: /api/v1/chat/local/roomList
method: post
data: { "uid": "${userId}","uType": 2,"platform": 1,"siteIds": [ "${shopId}" ],"status": 1,"page": 1,"pageSize": 20,"sortName": "all","keyword": "","v": "${v}" }
before_sql: inbox/ticketInfo_select2.py
expected:
- eq: { "$.code": 0 }
- eq: { "$.data.list[?(@.roomId == '${roomId}')].title": "${ticketTitle}"}
- eq: { "$.data.list[?(@.roomId == '${roomId}')].firstSendName": "${ticketCustomerName}"}
- eq: { "$.data.list[?(@.roomId == '${roomId}')].firstSendAvatar": "${ticketCustomerImage}"}
- eq: { "$.data.list[?(@.roomId == '${roomId}')].lastMsgContext": "${ticketLastMsg}"}
# - eq: { "$.data.list[?(@.roomId == '${roomId}')].lastMsgTime": "${ticketLastMsgTime}"}
api1:
title: 标记为垃圾邮件
title: 标记为垃圾会话
url: /api/v1/chat/local/moveToSpamList
method: post
data: {"roomId":"${read_ticket_id}","isMoveToSpam":true,"v":"${v}"}
......@@ -7,7 +7,7 @@ api1:
- eq: {"$.code": 0}
api2:
title: 检查是否标记为垃圾邮件
title: 检查是否标记为垃圾会话
url: /api/v1/chat/local/roomList
method: post
data: {"uid":"${userId}","uType":2,"platform":1,"siteIds":["${shopId}"],"status":1,"page":1,"pageSize":20,"sortName":"spam","keyword":"","v":"${v}"}
......@@ -15,7 +15,7 @@ api2:
- eq: {"$.data.list[?(@.roomId == '${read_ticket_id}')].isIgnore" : true}
api3:
title: 取消标记为垃圾邮件
title: 取消标记为垃圾会话
url: /api/v1/chat/local/moveToSpamList
method: post
data: {"roomId":"${read_ticket_id}","isMoveToSpam":false,"v":"${v}"}
......@@ -29,4 +29,140 @@ api4:
data: {"uid":"${userId}","uType":2,"platform":1,"siteIds":["${shopId}"],"keyword":"","countType":["all","unread","mention","assigned","unassigned","chatbot","spam"],"v":"${v}"}
expected:
- eq: {"$.code" : 0}
- eq: {"$.data.list.all.openCount" : "${all_ticket_num}"}
\ No newline at end of file
- eq: {"$.data.list.all.openCount" : "${all_ticket_num}"}
api5:
title: 标记为紧急会话
url: /api/v1/chatRoom/operate
method: post
data: {"uid":"${userId}","uType":2,"platform":1,"roomId":"${read_ticket_id}","clientId":"${willdesk_clientId}","event":"mark","username":"${name}","isMark":true,"allocationUid":"${userId}","v":"${v}"}
expected:
- eq: {"$.code": 0}
api6:
title: 检查是否标记为紧急会话
url: /api/v1/chat/local/roomList
method: post
data: {"uid":"${userId}","uType":2,"platform":1,"siteIds":["${shopId}"],"status":1,"page":1,"pageSize":20,"sortName":"all","keyword":"","v":"${v}"}
expected:
- eq: {"$.code" : 0}
- eq: {"$.data.list[?(@.roomId == '${read_ticket_id}')].isMark" : true}
api7:
title: 取消标记为紧急会话
url: /api/v1/chatRoom/operate
method: post
data: { "uid": "${userId}","uType": 2,"platform": 1,"roomId": "${read_ticket_id}","clientId": "${willdesk_clientId}","event": "mark","username": "${name}","isMark": false,"allocationUid": "${userId}","v": "${v}" }
expected:
- eq: { "$.code": 0 }
api8:
title: 检查是否取消标记为紧急会话
url: /api/v1/chat/local/roomList
method: post
data: { "uid": "${userId}","uType": 2,"platform": 1,"siteIds": ["${shopId}"],"status": 1,"page": 1,"pageSize": 20,"sortName": "all","keyword": "","v": "${v}" }
expected:
- eq: { "$.code": 0 }
- eq: { "$.data.list[?(@.roomId == '${read_ticket_id}')].isMark": false }
api9:
title: 标记为待定会话
url: /api/v1/chatRoom/operate
method: post
data: {"uid":"${userId}","uType":2,"platform":1,"roomId":"${read_ticket_id}","clientId":"${willdesk_clientId}","event":"wait","username":"${name}","isMark":false,"allocationUid":"${userId}","v":"${v}"}
expected:
- eq: {"$.code": 0}
api10:
title: 检查是否标记为待定会话
url: /api/v1/chat/local/roomList
method: post
data: {"uid":"${userId}","uType":2,"platform":1,"siteIds":["${shopId}"],"status":2,"page":1,"pageSize":20,"sortName":"all","keyword":"","v":"${v}"}
expected:
- eq: {"$.code" : 0}
- eq: {"$.data.list[?(@.roomId == '${read_ticket_id}')].status" : 2}
api11:
title: 取消标记为待定会话
url: /api/v1/chatRoom/operate
method: post
data: {"uid": "${userId}","uType": 2,"platform": 1,"roomId": "${read_ticket_id}","clientId": "${willdesk_clientId}","event": "open","username": "${name}","isMark": false,"allocationUid": "${userId}","v": "${v}" }
expected:
- eq: { "$.code": 0 }
api12:
title: 检查是否取消标记为待定会话
url: /api/v1/chat/local/roomList
method: post
data: { "uid": "${userId}","uType": 2,"platform": 1,"siteIds": ["${shopId}"],"status": 1,"page": 1,"pageSize": 20,"sortName": "all","keyword": "","v": "${v}" }
expected:
- eq: { "$.code": 0 }
- eq: { "$.data.list[?(@.roomId == '${read_ticket_id}')].status": 1}
api13:
title: 关闭会话
url: /api/v1/chatRoom/operate
method: post
data: {"uid":"${userId}","uType":2,"platform":1,"roomId":"${read_ticket_id}","clientId":"${willdesk_clientId}","event":"close","username":"${name}","isMark":false,"allocationUid":"${userId}","v":"${v}"}
expected:
- eq: {"$.code": 0}
api14:
title: 检查是否关闭会话
url: /api/v1/chat/local/roomList
method: post
data: {"uid":"${userId}","uType":2,"platform":1,"siteIds":["${shopId}"],"status":3,"page":1,"pageSize":20,"sortName":"all","keyword":"","v":"${v}"}
expected:
- eq: {"$.code" : 0}
- eq: {"$.data.list[?(@.roomId == '${read_ticket_id}')].status" : 3}
api15:
title: 重新打开会话
url: /api/v1/chatRoom/operate
method: post
data: {"uid": "${userId}","uType": 2,"platform": 1,"roomId": "${read_ticket_id}","clientId": "${willdesk_clientId}","event": "open","username": "${name}","isMark": false,"allocationUid": "${userId}","v": "${v}" }
expected:
- eq: { "$.code": 0 }
api16:
title: 检查是否重新打开会话
url: /api/v1/chat/local/roomList
method: post
data: { "uid": "${userId}","uType": 2,"platform": 1,"siteIds": ["${shopId}"],"status": 1,"page": 1,"pageSize": 20,"sortName": "all","keyword": "","v": "${v}" }
expected:
- eq: { "$.code": 0 }
- eq: { "$.data.list[?(@.roomId == '${read_ticket_id}')].status": 1}
api17:
title: 添加会话标题
url: /api/v1/chatRoom/operate
method: post
data: {"avatar":"","uid":5746,"uType":2,"platform":1,"roomId":"${read_ticket_id}","clientId":"${willdesk_clientId}","event":"title","isMark":true,"title":"${ticket_title}","allocationUid":"${userId}","allocationName":"${name}","allocationAvatar":"","username":"${name}","v":"${v}"}
expected:
- eq: {"$.code": 0}
api18:
title: 检查是否成功添加会话标题
url: /api/v1/chat/local/roomList
method: post
data: {"uid":"${userId}","uType":2,"platform":1,"siteIds":["${shopId}"],"status":1,"page":1,"pageSize":20,"sortName":"all","keyword":"","v":"${v}"}
expected:
- eq: {"$.code" : 0}
- eq: {"$.data.list[?(@.roomId == '${read_ticket_id}')].title" : "${ticket_title}"}
api19:
title: 删除会话标题
url: /api/v1/chatRoom/operate
method: post
data: {"avatar":"","uid":5746,"uType":2,"platform":1,"roomId":"${read_ticket_id}","clientId":"${willdesk_clientId}","event":"title","isMark":true,"title":"","allocationUid":"${userId}","allocationName":"${name}","allocationAvatar":"","username":"${name}","v":"${v}"}
expected:
- eq: { "$.code": 0 }
api20:
title: 检查是否成功删除会话标题
url: /api/v1/chat/local/roomList
method: post
data: { "uid": "${userId}","uType": 2,"platform": 1,"siteIds": ["${shopId}"],"status": 1,"page": 1,"pageSize": 20,"sortName": "all","keyword": "","v": "${v}" }
expected:
- eq: { "$.code": 0 }
- eq: {"$.data.list[?(@.roomId == '${read_ticket_id}')].title" : ""}
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