2.1개요
본 문서는 청약 자동화 테스트를 위해 작성되었습니다.
2.2개발 서버
청약 어뎁터 서버
[개발서버] http://10.10.30.47:8450/
[DB] 10.10.30.45
2.2.1청약 어댑터
카카오 청약 홈페이지에서 데이터를 전달 받고, 결과를 전달해 주는 서비스 입니다.
2.2.2트랜젝션 코드
- 트랜젝션시나리오 코드 입니다.
t_create_csapp : 상담앱 상용 설정 트랜젝션
t_create_notitalk: 알림톡 설정 트렌젝션
t_create_callbot: 콜봇 생성 트랜젝션
t_create_notitalk_callbot: 알림톡 + 콜봇 설정 트랜젝션
2.3테스트 시나리오
2.3.1사전 설정
요청받을 서버 정보 설정
요청 시나리오 확인
2.3.1.1요청 받을 서버 정보 설정
subscription > server_list 테이블 수정
server_ip/server_port : 서버 ip/port 정보 수정
server_https : https 여부(http:0, https:1 ) 수정
그림 2-1스크린샷 2023-04-03 오전 11.20.15
2.3.1.2요청 시나리오 정보 확인
subscription > job_transaction_list 테이블 확인
transaction_code : 트렌젝션 코드(t_create_csapp: 상담앱)
order : 진행 순서
server_type : 서버 구분
그림 2-2스크린샷 2023-04-03 오전 11.20.15
2.3.2t_create_csapp (홈페이지 -> 상담앱 ) 실행
tlogId : 중복될수가 없습니다. 실행시 값을 변경해 주셔야 합니다.
activateId : 중복될수가 없습니다. 실행시 값을 변경해 주셔야 합니다.
report : 필요한 값을 변경해서 테스트하면 됩니다.
- [실행]
curl -v -H "Accept: application/json" -H "Content-type: application/json" \ -X PUT -d @homepage_report.json \ http://10.10.30.47:8450/job/nexus
- [homepage.report.json 파일]
{ "tlogId": "9c766de1-39e5-4fcf-a39d-174c11111127", "service": "ss_nexus", "serviceType": "C", "transaction": "t_create_csapp", "prevSteps": [ { "service": "ss_homepage_be", "report": { "activateId": "UUUU-IIII-D007", "tenant": { "name": "넥서스커뮤니티", "alias": "nexus", "inPn": "15660000", "outPn": "15661111", "testPn": "07000000000", "startDate": "20230601", "legalHoliday": true, "businessSch": [ {"openTime": "0900", "closeTime": "1800", "breakStart": "1200", "breakEnd": "1300", "days": [1, 2, 3, 4, 5]}, {"openTime": "0900", "closeTime": "1300", "days": [6]} ] }, "plan": { "type": "starter", "csapp": "basic", "bot": true, "callback": true, "recordPeriod": "1Y", "chatting": true, "chattingMsg": true, "agentEndMsg": true, "botEndMsg": true, "callbackMsg": true }, "csapp":{ "skillName": ["가격", "사이즈", "배송지연", "오배송"], "category":[ { "name": "상품", "category": [ { "name": "문의", "category": [ {"name": "반품"} ] } ] }, { "name": "배송", "category": [ { "name": "지연", "category": [ {"name": "클레임"} ] } ] } ], "user": [ {"id": "nx_agent_01", "name": "", "roleCd": ["agent"], "skillName": ["가격"]}, {"id": "nx_admin_01", "name": "", "roleCd": ["admin"], "skillName": ["가격","사이즈"]}, {"id": "nx_admin_02", "name": "", "roleCd": ["agent","admin"], "skillName": ["배송지연"]} ] }, "bot": { "qty": 10, "callbackQty": 5 }, "ivr": { "firstId": "bot", "welcomeMent": "안녕하세요 브랜디 입니다.", "announcement": "상품문의는 1번, 배송문의는 2번, .... 다시듣기는 *을 눌러주세요.", "numbering": [ { "digit": "1", "announcement": "상품문의입니다. 구매문의는 1번, 가격문의는 2번,.. 이전단계는 .. 다시듣기는 ..", "numbering": [ { "digit": "1", "announcement": "구매문의입니다.", "numbering": [ { "digit": "1", "announcement": "가격문의입니다.", "skillName": "가격" }, { "digit": "2", "announcement": "사이즈문의입니다.", "skillName": "사이즈" } ] }, { "digit": "2", "announcement": "배송문의입니다.", "numbering": [ { "digit": "1", "announcement": "배송지연문의입니다.", "skillName": "배송지연" }, { "digit": "2", "announcement": "오배송문의입니다.", "skillName": "오배송" } ] } ] } ] } } } ], "jobRespAddr": "http://rp:8080/report/add20" }
2.3.3t_create_notitalk (홈페이지 -> 알림톡/상담톡 ) 실행
tlogId : 중복될수가 없습니다. 실행시 값을 변경해 주셔야 합니다.
activateId : t_create_csapp 실행시 성공한 적으로 처리된 값이어야 합니다. (resouce_* 테이블 데이터 이용)
report : 필요한 값을 변경해서 테스트하면 됩니다.
- [실행]
curl -v -H "Accept: application/json" -H "Content-type: application/json" \ -X PUT -d @homepage_report_alim.json \ http://10.10.30.47:8450/job/nexus/alimtalk
- [homepage_report_alim.json 파일]
{ "tlogId": "4ddd2976-680e-4638-8caa-d8a4a66510050", "service": "nexus-resource", "serviceType": "C", "transaction": "t_create_notitalk", "prevSteps": [ { "service": "hbe", "report": { "activateId": "UUUU-IIII-D050", "tenantAlias": "ken50", "clientId": "N00001111", "channelId": "@넥서스", "channelId2": "@넥서스알림", "senderKey": "ad00d48bf63f6f29f641cec728c7907848ac56ac", "senderKey2": "2e377a3721f21f74ef7323ebb653ca3050e91bf9", "outPn": "0215661111", "templetes": [ { "templateCd": "CALL_END0111", "templateType": "CALL_END", "fallback": true, "fallbackType": "LMS", "fallbackTitle": "상담종료", "fallbackMessage": "안녕하세요 브랜디입니다. 통화종료" }, { "templateCd": "CALLBACK0111", "templateType": "CALLBACK", "fallback": true, "fallbackType": "SMS", "fallbackMessage": "안녕하세요 브랜디입니다." } ] } } ], "jobRespAddr": "http://rp:8080/report/add30" }
2.3.4요청 정보 확인
요청된 상태 확인
2.3.4.1요청 정보 상태 및 히스토리
subscription > job_status 테이블 확인
t_logId: 요청아이디
activate_id: 트랜젠션 ID
tranasaction_order : 프로세스 (job_transaction 의 order 값) 순서
job_status : 상태(W:Waiting,P:Progress,C:Complete,F:Failed) 값
그림 2-3스크린샷 2023-04-03 오전 11.33.10
subscription > job_transaction_history 테이블 확인
activate_id 로 현재 서버에 request/ response 의 상태를 확인 할수 있습니다.
그림 2-4스크린샷 2023-04-03 오전 11.35.12