1. ํ๊ฒฝ๋ณ์ ์ฌ์ฉ
- ํ์ฌ๋ Access, Refresh ํ ํฐ์ ๋งค๋ฒ ๊ฐฑ์ ํด์ผ ํ๋ ๋ถํธํจ์ด ์๋ค.
- ํ๊ฒฝ๋ณ์๋ฅผ ์ด์ฉํ๋ฉด ์ด๋ฅผ ํด๊ฒฐํ ์ ์๋ค.

ํฌ์คํธ๋งจ์ ๋งจ ์ผ์ชฝ์ ๋ฉ๋ด๋ฅผ ๋ณด๋ฉด, ์ด๋๊น์ง๋ Collections ํญ๋ง ์ด์ฉํ๋ค.
- Environments ํญ์ ํด๋ฆญํ๋ค.
- Globals์ new Environments ๋ฒํผ์ ํด๋ฆญํ๋ค.
- ๊ทธ ์์ ๋ณ์๋ฅผ ์ง์ ํ ์ ์๋ค.
- ํ๊ฒฝ๋ณ์๋ ๋ค์ ํ์ ๊ฐ์ด ์ค์ ํ๋ค. ๊ฐ์ ์ฐ๊ณ ๋ฐ๋์ ์ ์ฅ์ ํด์ค์ผ ์ ์ฉ๋๋ค.
| Variable | Type | Initial value | Current value |
|---|---|---|---|
| host | default | localhost:3000 | localhost:3000 |
- cf. Initial value๋ ํฌ์คํธ๋งจ์์ ํ๋ผ๋ฆฌ ๊ณต์ ํ๋ ๊ธฐ๋ฅ ์ฌ์ฉ์ ๊ณต์ ํ ๋ ์ฌ์ฉ๋๋ ๊ฐ
- cf. Current value๋ Initial value๋ฅผ ๋ก์ปฌ์์๋ง ์ค๋ฒ๋ผ์ด๋ํ ์ ์๋ ๊ฐ
๊ทธ๋ฆฌ๊ณ ์ค๋ฅธ์ชฝ ์์ ํ ๊ธ์์ ์์ฑํ Environments๋ฅผ ์ ์ฉ์์ผ์ค๋ค.

๊ทธ๋ฐ ๋ค์, ๋ชจ๋ API์ {{ํ๊ฒฝ๋ณ์๋ช
}}์ ์
๋ ฅํด์ ์ ์ฉ์์ผ ์ค๋ค.
2. Test๋ก ํ๊ฒฝ๋ณ์ ์ ์ฅ
์ ์ฉํ ํ๊ฒฝ๋ณ์๋ฅผ ๋ค์๊ณผ ๊ฐ์ด ์์ ํ๋ค.
| Variable | Type | Initial value | Current value |
|---|---|---|---|
| accessToken | default | ||
| refreshToken | default | ||
| host | default | localhost:3000 | localhost:3000 |
๋ก๊ทธ์ธํ๋ฉด, ์๋์ผ๋ก accessToken ๊ฐ์ ์ฑ์์ฃผ๊ฒ ํ ๊ฒ์ด๋ค.
/auth/login/email API์์ Tests ํญ์ ํด๋ฆญํ๋ค.
- ์๋ Tests ํญ์ ์์ฒญ์ ํ์ ๋, ์๋ต๊ฐ์ด ์ ๋๋ก ๋ค์ด์ค๋์ง ๊ฒ์ฆํ๊ธฐ ์ํ ์ฝ๋๋ฅผ ์ง๋ ๊ณณ์ด๋ค.
- ๊ทธ๋์ ์์ฒญ์ ๋ณด๋ผ ๋๋ง๋ค, Tests๊ฐ ๊ฐ์ด ๋๋ฉด์ ์๋ต์ด ์ ๋๋ก ๋๋์ง ํ์ธํ ์ ์๋ค.
- ๊ทธ๊ฑฐ ์ธ์๋ ์ํ๋ค๋ฉด, ํ๊ฒฝ๋ณ์๋ฅผ ๋ณํํ๋ ์ฝ๋๋ฅผ ํฌ์คํธ๋งจ์์ ์ ๊ณตํ๋ค.
- cf. pm์ postman์ด๋ผ๋ ๋ป
1pm.test('Store access token', function () {2pm.environment.set('accessToken', pm.response.json().accessToken)3})45pm.test('Store refresh token', function () {6pm.environment.set('refreshToken', pm.response.json().refreshToken)7})
/auth/login/emailAPI๋ฅผ ์์ฒญ์ ๋ณด๋ด๊ณ , ํ๊ฒฝ๋ณ์ ํญ์ผ๋ก ๋์๊ฐ ํ์ธํด๋ณด๋ฉด, current value์ ๊ฐ์ด ๋ค์ด๊ฐ๋ค./auth/login/emailAPI์ ๋ฐ์ Test Results ํด๋ฆญํด๋ณด๋ฉด ์์ฒญ์ด ์ ๋ณด๋ด์ง ๊ฒ(PASS)์ ํ์ธํ ์ ์๋ค.
3. Authorization ํญ ์ด์ฉํด Basic ํ ํฐ ๋ณด๋ด๊ธฐ
/auth/login/email API์ Headers ํญ์์ authorization์ ์ญ์ ํ๋ค.
- ๊ทธ๋ฆฌ๊ณ
/auth/login/emailAPI์ Authorization ํญ์์ Type์ Basic Auth๋ฅผ ์ ํํ๋ค. - ์ฌ์ฉํ ID, PW๋ฅผ ์ ๋ ฅํ๋ค. ์ ์ฅํ๊ณ ์์ฒญ์ ๋ณด๋ธ๋ค.
- ๊ทธ๋ฌ๋ฉด ์๋์ผ๋ก Base64๋ก ์ธ์ฝ๋ฉํด์ค๋ค.
ํฌ์คํธ๋งจ์ ๋งจ ์๋ console ํญ์ ํด๋ฆญํด๋ณด๋ฉด, ์ง๊ธ๊น์ง ๋ณด๋ธ ์์ฒญ๋ค์ ํ์ธํ ์ ์๋ค.
- ๊ฐ์ฅ ์ต๊ทผ์ด ๋งจ ๋ฐ์ ์๋ค.
- ํ์ธํด๋ณด๋ฉด, Request Headers.Authorization๋ฅผ ํ์ธํด๋ณด๋ฉด ๋ค์๊ณผ ๊ฐ์ด ์ ๋ค์ด๊ฐ ๊ฒ์ ํ์ธํ ์ ์๋ค.
1Request Headers2Authorization: Basic c3dAZ21haWwuYWk6MTIzMTIz3User-Agent: PostmanRuntime/7.32.34Accept: */*5Postman-Token: a889e7c9-220b-4123-bd1a-6c1ac6b283df6Host: localhost:30007Accept-Encoding: gzip, deflate, br8Connection: keep-alive9Content-Length: 0
4. ํ์๊ฐ์ ๋ผ์ฐํธ์ Test ์ ์ฉ
/auth/login/email API์ Tests ํญ์ ์ฝ๋๋ฅผ /auth/register/email์ Tests์ ๋ณต๋ถํ๋ค.
- ํ์๊ฐ์ ์ Body์์ ํ๋, ๊ทธ๋๋ก ๋๋ฉด ๋๋ค.
5. ํค๋์ Bearer ํ ํฐ ์ ์ฉ
/postsAPI์ Headers ํญ์์ Authorization๋ฅผ ์ง์ด๋ค./postsAPI์ Authorization ํญ์์ type์Bearer Token์ ํด๋ฆญํ๋ค.- Token์ ํ๊ฒฝ๋ณ์
{{accessToken}}๋ฅผ ์ ๋ ฅํด๋๋ฉด, ์์์ ํ๊ฒฝ๋ณ์์ ๊ฐ์ ๊ฐ์ ธ์์ ์ ์ฉํ๋ค. - ์ด์ ๋ถํฐ ๊ทธ๋ฅ ๋ฐ๋ก ์ต์ ํ ํฐ์ ๊ธฐ๋ฐ์ผ๋ก API ์์ฒญ๋ง ํด์ฃผ๋ฉด ๋๋ค.
๋ค๋ฅธ ํ๋ก์ ํธ์์๋ ํ๊ฒฝ๋ณ์๋ฅผ ์ ์ ์ฉํ๋ฉด ํธํด์ง๋ค.