자동 테스트를 돌리기 위해 Postman 을 설치해 사용했다. Postman은 개발한 API를 테스트하고, 테스트 결과를 공유하여 API 개발의 생산성을 높여주는 플랫폼이다. Mock 서버를 열 수도 있고 TEST 코드를 작성하는 등, API 테스트에 필요한 다양한 기능을 가지고 있다. 설치하여 사용하면 된다.
Postman | The Collaboration Platform for API Development
Postman을 사용해 미디버스 재생량 통계 서버에 데이터를 쌓는 작업을 진행했다. Postman에 있는 Code runner 기능을 사용하면 같은 request 작업을 원하는 만큼 자동으로 수행할 수 있다.
Collections에 테스트 코드를 작성한다.
임시 재생 데이터를 request body에 설정했다. Dynamic한 변수가 들어갈 수 있도록 아래와 같이 작성했다.
{
"play20": 1,
"play40": 0,
"play60": 0,
"play80": 0,
"play100": 0,
"mediaPos" : 1,
"mediaLength" : 5,
"channelId": "test_ch_{{channelIdIdx}}",
"objectId": "object_ch_{{objectIdIdx}}",
"type" : "flow",
"uuid" : "{{$guid}}",
"date" : "202102040000"
}
테스트 코드는 아래와 같다. 0~9 까지의 번호로 channelId와 obejctId가 다른 값들이 랜덤하게 들어가 집계되도록 했다.
const channelIdIdx = Math.floor( Math.random() * 10 );
const objectIdIdx = Math.floor(Math.random() * 10);
pm.environment.set("channelIdIdx", channelIdIdx);
pm.environment.set("objectIdIdx", objectIdIdx);
pm.variables.replaceIn('{{$guid}}')
pm.test("Status code is 200", function(){
pm.response.to.have.statusCode("200")
});