์๋
ํ์ธ์ ์ฌ๋ฌ๋ถ. ์ฐ๋ฆฌ๋ ์ฒ์ฒํ ๊ทธ๋ฆผ์์์ ๋ฒ์ด๋ ์ ํ์ ๋ํ ์ผ๋ จ์ ๊ธฐ์ฌ๋ฅผ ๊ณ์ํ๊ณ ์์ต๋๋ค. ํ์
์ค์น
์ง๋ถํจ๋ถํฐ ์์ํด๋ณด์. ์ด ์ ํ๋ฆฌ์ผ์ด์
์ Linux, Windows, MacOS์ ์ธ ๊ฐ์ง ํ๋ซํผ์์ ์ฌ์ฉ ๊ฐ๋ฅํ๋ฉฐ ์ค์ ๋ก ํ
์คํธ๋์์ต๋๋ค. ๊ด์ฌ ์๋ OS์ ์ค์น ํ๋ก๊ทธ๋จ์ ๋ค์ด๋ก๋ํ ์ ์์ต๋๋ค.
์คํ ์๋๋ฆฌ์ค
์ฐ๋ฆฌ๋ ํ ์คํธ ์ฃผ์ ๋ก ๋ค์ ํ์ค ์๋๋ฆฌ์ค๋ฅผ ์ ํํ์ต๋๋ค.
- ๋ก๊ทธ์ธ: ์ฌ์ฉ์ - ๊ด๋ฆฌ์, ๋น๋ฐ๋ฒํธ - ๋น๋ฐ๋ฒํธ
- ์ ํญ๋ชฉ ์ถ๊ฐ
- ๋ ์ฝ๋๊ฐ ์ฌ๋ฐ๋ฅด๊ฒ ์ถ๊ฐ๋์๋์ง ํ์ธํด ๋ด ์๋ค
์ฐ๋ฆฌ๋ ํ
์คํธํ ๊ฒ์
๋๋ค
ํ๋ก์ ํธ๋ฅผ ์์ฑํ๊ณ ์น์ธ ์์ด ์ํฐํฐ๋ฅผ ์์ฑํ๋ ค๊ณ ํฉ๋๋ค.
๋จผ์ ์ ํ๋ก์ ํธ(์ ์ ๋ถ๋ชจ๋ก์์ ๊ทํ์ ์ ํฉ์ฑ์ ๊ฒฐ์ ํ๊ธฐ ์ํด ๋ฏธ๊ตญ ์ด๋ฏผ๊ตญ์->์ ํ๋ก์ ํธ). ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฒ์ ์์ํ๋ ๊ฒฝ์ฐ ์ ํ๋ก์ ํธ๊ฐ ์๋์ผ๋ก ์ด๋ฆฝ๋๋ค. ๋จผ์ ์๋ก์ด ๋ ์ฝ๋ ์์ฑ์ ์์ฒญํด ๋ณด๊ฒ ์ต๋๋ค(์ธ์ฆ ์์ด ๋ ์ฝ๋ ์์ฑ์ด ๊ฐ๋ฅํ ๊ฒฝ์ฐ). ํ๋ก์ ํธ ๋ ธ๋ ์ํฉ์ ๋ง๋ ๋ฉ๋ด์์ ํญ๋ชฉ ์ ํ ๋ ธ๋ ์ถ๊ฐ -> ์์ฒญ ๋จ๊ณ. ๋ ธ๋ ์ด๋ฆ์ ๋ค์์ผ๋ก ์ค์ ํฉ๋๋ค. ๊ฒ์๋ฌผ ์์ฑ. ๊ฒฐ๊ณผ์ ์ผ๋ก ํธ๋ฆฌ์ ์ ๋ ธ๋๊ฐ ์์ฑ๋๊ณ ์ด ๋ ธ๋์ ๋ํ ํญ์ด ์ด๋ฆฝ๋๋ค. ๋ค์ ์์ฒญ ๋งค๊ฐ๋ณ์๋ฅผ ์ค์ ํด ๋ณด๊ฒ ์ต๋๋ค.
- ์์ฒญ ์ ํ: POST
- URL :
https://testmace-quick-start.herokuapp.com/posts - ์์ฒญ ๋ณธ๋ฌธ: ๊ฐ์ด ํฌํจ๋ json
{"title": "New testmace quick start post"}
๋ชจ๋ ์์ ์ ์ฌ๋ฐ๋ฅด๊ฒ ์ํํ๋ค๋ฉด ์ธํฐํ์ด์ค๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
๊ทธ๋ฌ๋ ์์ฒญ์ ์ดํํ๋ ค๊ณ ํ๋ฉด ์๋ฒ๋ 401 ์ฝ๋๋ฅผ ๋ฐํํ๊ณ ์น์ธ ์์ด๋ ์ด ์๋ฒ์์ ์๋ฌด๊ฒ๋ ์ป์ ์ ์์ต๋๋ค. ๊ธ์, ์ผ๋ฐ์ ์ผ๋ก ์์๋๋ก).
์น์ธ ์์ฒญ ์ถ๊ฐ
์ด๋ฏธ ๋งํ๋ฏ์ด POST ์๋ํฌ์ธํธ๊ฐ ์์ต๋๋ค. /login
, ๋ค์ ํ์์ ์์ฒญ ๋ณธ๋ฌธ์ผ๋ก json์ ์ฌ์ฉํฉ๋๋ค. {"username": "<username>", "password": "<password>"}
์ด๋์์ username
ะธ password
(๋ค์, ์์ ์๊ฐ ๋จ๋ฝ์์) ์๋ฏธ๊ฐ ์์ต๋๋ค admin
ะธ password
๊ฐ๊ธฐ. ์ด์ ๋ํ ์๋ต์ผ๋ก ์ด ๋์ ์ ๋ค์๊ณผ ๊ฐ์ json์ ๋ฐํํฉ๋๋ค. {"token": "<token>"}
. ์ธ์ฆ์ ์ฌ์ฉํ๊ฒ ์ต๋๋ค. ๋ง๋ค์ด ๋ณด์ ์์ฒญ ๋จ๊ณ ์ด๋ฆ์ด ์๋ ๋
ธ๋ ๋ก๊ทธ์ธ, ์กฐ์ ์ญํ ์ ํ ๊ฒ์
๋๋ค ํ๋ก์ ํธ ๋ง๋ ๋๋๊ทธ ์ค ๋๋กญ์ ์ฌ์ฉํ์ฌ ํธ๋ฆฌ์ ํน์ ๋
ธ๋๋ฅผ ํด๋น ๋
ธ๋๋ณด๋ค ๋๊ฒ ์ด๋ํฉ๋๋ค. ๊ฒ์๋ฌผ ์์ฑ. ์๋ก ์์ฑ๋ ์์ฒญ์ ๋ค์ ๋งค๊ฐ๋ณ์๋ฅผ ์ค์ ํด ๋ณด๊ฒ ์ต๋๋ค.
- ์์ฒญ ์ ํ: POST
- URL :
https://testmace-quick-start.herokuapp.com/login - ์์ฒญ ๋ณธ๋ฌธ: ๊ฐ์ด ํฌํจ๋ json
{"username": "admin", "password": "password"}
์์ฒญ์ ์คํํ๊ณ ์๋ต์ ํ ํฐ์ด ํฌํจ๋ XNUMX๋ฒ์งธ ์ฝ๋๋ฅผ ๋ฐ๊ฒ ์ต๋๋ค. ์ด ๊ฐ์:
๋ฆฌํฉํ ๋ง: ๋๋ฉ์ธ ์ค๋ณต ์ ๊ฑฐ
์ง๊ธ๊น์ง ์์ฒญ์ ๋จ์ผ ์คํฌ๋ฆฝํธ๋ก ์ฐ๊ฒฐ๋์ง ์์์ต๋๋ค. ๊ทธ๋ฌ๋ ์ด๊ฒ์ด ์ ์ผํ ๋จ์ ์ ์๋๋๋ค. ์์ธํ ์ดํด๋ณด๋ฉด ๋ ์์ฒญ ๋ชจ๋์์ ์ต์ํ ๋๋ฉ์ธ์ด ์ค๋ณต๋์ด ์์์ ์ ์ ์์ต๋๋ค. ์์ข๋ค. ์ด์ ๋ฏธ๋ ์คํฌ๋ฆฝํธ์ ์ด ๋ถ๋ถ์ ๋ฆฌํฉํ ๋งํ ์๊ฐ์ด๋ฉฐ, ๋ณ์๋ ์ด์ ๋์์ด ๋ ๊ฒ์ ๋๋ค.
์ฒซ ๋ฒ์งธ ๊ทผ์ฌ์น๋ก, ๋ณ์๋ ๋ค๋ฅธ ์ ์ฌํ ๋๊ตฌ ๋ฐ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์์์ ๋์ผํ ์ญํ ์ ์ํํฉ๋๋ค(์ค๋ณต ์ ๊ฑฐ, ๊ฐ๋
์ฑ ํฅ์ ๋ฑ). ๋ณ์์ ๋ํ ์์ธํ ๋ด์ฉ์
ํ๋ก์ ํธ ๋
ธ๋ ์์ค์์ ๋ณ์๋ฅผ ์ ์ํด ๋ณด๊ฒ ์ต๋๋ค. domain
์๋ฏธ๋ฅผ ๊ฐ์ง๊ณ https://testmace-quick-start.herokuapp.com
. ์ด๊ฒ์ ์ํด์ ๋น์ ์
- ์ด ๋ ธ๋๊ฐ ์๋ ํญ์ ์ด๊ณ ์ค๋ฅธ์ชฝ ์๋จ์ ๊ณ์ฐ๊ธฐ ์์ด์ฝ์ ํด๋ฆญํ์ธ์.
- ํด๋ฆญ + ๋ณ์ ์ถ๊ฐ
- ๋ณ์ ์ด๋ฆ๊ณผ ๊ฐ์ ์
๋ ฅํ์ธ์.
์ฐ๋ฆฌ์ ๊ฒฝ์ฐ ๋ณ์๊ฐ ์ถ๊ฐ๋ ๋ํ ์์๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
์ข์์. ์ด์ ์์์ผ๋ก ์ธํด ๋ชจ๋ ์ค์ฒฉ ์์ค์ ํ์ ํญ๋ชฉ์์ ์ด ๋ณ์๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ฐ๋ฆฌ์ ๊ฒฝ์ฐ ์ด๋ ๋
ธ๋์
๋๋ค. ๋ก๊ทธ์ธ ะธ ๊ฒ์๋ฌผ ์์ฑ. ํ
์คํธ ํ๋์์ ๋ณ์๋ฅผ ์ฌ์ฉํ๋ ค๋ฉด ๋ค์์ ์์ฑํด์ผ ํฉ๋๋ค. ${<variable_name>}
. ์๋ฅผ ๋ค์ด ๋ก๊ทธ์ธ URL์ ๋ค์์ผ๋ก ๋ณํ๋ฉ๋๋ค. ${domain}/login
, ๊ฐ๊ฐ ๊ฒ์๋ฌผ ์์ฑ ๋
ธ๋ URL์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค ${domain}/posts
.
๋ฐ๋ผ์ DRY ์์น์ ๋ฐ๋ผ ์๋๋ฆฌ์ค๋ฅผ ์ฝ๊ฐ ๊ฐ์ ํ์ต๋๋ค.
ํ ํฐ์ ๋ณ์์ ์ ์ฅ
์ง๊ธ์ ๋ณ์์ ๋ํด ์ด์ผ๊ธฐํ๊ณ ์์ผ๋ฏ๋ก ์ด ์ฃผ์ ๋ฅผ ์กฐ๊ธ ๋ ํ์ฅํด ๋ณด๊ฒ ์ต๋๋ค. ํ์ฌ ๋ก๊ทธ์ธ์ ์ฑ๊ณตํ๋ฉด ์๋ฒ๋ก๋ถํฐ ํ์ ์์ฒญ์ ํ์ํ ์ธ์ฆ ํ ํฐ์ ๋ฐ์ต๋๋ค. ์ด ํ ํฐ์ ๋ณ์์ ์ ์ฅํด ๋ณด๊ฒ ์ต๋๋ค. ์๋ํ๋ฉด ๋ณ์์ ๊ฐ์ ์คํฌ๋ฆฝํธ ์คํ ์ค์ ๊ฒฐ์ ๋๋ฉฐ ์ด๋ฅผ ์ํด ํน๋ณํ ๋ฉ์ปค๋์ฆ์ ์ฌ์ฉํฉ๋๋ค.
๋จผ์ ๋ก๊ทธ์ธ ์์ฒญ์ ์ํํด ๋ณด๊ฒ ์ต๋๋ค. ํญ์์ ํ์ฑ โโ๋จ ๋๋ตํ๋ ค๋ฉด ํ ํฐ ์๋ก ์ปค์๋ฅผ ์ด๋ํ๊ณ ์ํฉ์ ๋ง๋ ๋ฉ๋ด(๋ง์ฐ์ค ์ค๋ฅธ์ชฝ ๋ฒํผ์ ์ฌ์ฉํ๊ฑฐ๋ ๋ฒํผ์ ํด๋ฆญํ์ฌ ํธ์ถ๋จ ...)์์ ํญ๋ชฉ์ ์ ํํฉ๋๋ค. ๋ณ์์ ํ ๋น. ๋ค์ ํ๋๊ฐ ํฌํจ๋ ๋ํ ์์๊ฐ ๋ํ๋ฉ๋๋ค.
- ๊ฒฝ๋ก โ ๋ต๋ณ์ ์ด๋ ๋ถ๋ถ์ด ์ทจํด์ก๋๊ฐ(์ฐ๋ฆฌ์ ๊ฒฝ์ฐ์๋
body.token
) - ํ์ฌ ๊ฐ์น โ ๊ฒฝ๋ก์ ์๋ ๊ฐ(์ด ๊ฒฝ์ฐ ํ ํฐ ๊ฐ)
- ๋ณ์ ์ด๋ฆ โ ๋ณ์ ์ด๋ฆ ํ์ฌ ๊ฐ์น ๋ณด์กด๋ ๊ฒ์
๋๋ค. ์ฐ๋ฆฌ์ ๊ฒฝ์ฐ์๋
token
- ๋ ธ๋ โ ๋ณ์๊ฐ ์์ฑ๋ ์กฐ์ ์ค ์ด๋ ๊ฒ์ ๋๊น? ๋ณ์ ์ด๋ฆ. ํ๋ก์ ํธ๋ฅผ ์ ํํ์
์์ฑ๋ ๋ํ ์์๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
์ด์ ๋
ธ๋๊ฐ ์คํ๋ ๋๋ง๋ค ๋ก๊ทธ์ธ ๋์ ๋ณ์ token
์๋ต์ ์ ๊ฐ์ผ๋ก ์
๋ฐ์ดํธ๋ฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด ๋ณ์๋ ๋ค์ ์์น์ ์ ์ฅ๋ฉ๋๋ค. ํ๋ก์ ํธ ๋
ธ๋์ด๋ฉฐ ์์ ๋๋ถ์ ์์์ด ์ฌ์ฉํ ์ ์์ต๋๋ค.
๋์ ๋ณ์์ ์ก์ธ์คํ๋ ค๋ฉด ๋ค์์ ์ฌ์ฉํด์ผ ํฉ๋๋ค. $dynamicVar
. ์๋ฅผ ๋ค์ด ์ ์ฅ๋ ํ ํฐ์ ์ก์ธ์คํ๋ ค๋ฉด ๋ค์์ ํธ์ถํด์ผ ํฉ๋๋ค. ${$dynamicVar.token}
.
์ธ์ฆ ํ ํฐ์ ์์ฒญ์ ์ ๋ฌํฉ๋๋ค.
์ด์ ๋จ๊ณ์์ ์ธ์ฆ ํ ํฐ์ ๋ฐ์์ผ๋ฏ๋ก ํค๋๋ง ์ถ๊ฐํ๋ฉด ๋ฉ๋๋ค. Authorization
์๋ฏธ๋ฅผ ๊ฐ์ง๊ณ Bearer <tokenValue>
๋ค์์ ํฌํจํ์ฌ ์น์ธ์ด ํ์ํ ๋ชจ๋ ์์ฒญ์์ ๊ฒ์๋ฌผ ์์ฑ. ์ด๋ฅผ ์ํํ๋ ๋ฐฉ๋ฒ์๋ ์ฌ๋ฌ ๊ฐ์ง๊ฐ ์์ต๋๋ค.
- ํ ํฐ์ ์๋์ผ๋ก ๋ณต์ฌํ๊ณ ๊ด์ฌ ์๋ ์์ฒญ์ ์ธ์ฆ ํค๋๋ฅผ ์ถ๊ฐํฉ๋๋ค. ์ด ๋ฐฉ๋ฒ์ ์๋ํ์ง๋ง "๋ง๋ค๊ณ ๋ฒ๋ ค์ง" ์ ํ์ ์์ฒญ์๋ง ์ฌ์ฉ์ด ์ ํ๋ฉ๋๋ค. ์คํฌ๋ฆฝํธ์ ๋ฐ๋ณต ์คํ์๋ ์ ํฉํ์ง ์์ต๋๋ค.
- ๊ธฐ๋ฅ์ ํ์ฉํ์ธ์
๊ถํ ๋ถ์ฌ . - ์ฌ์ฉ
๊ธฐ๋ณธ ํค๋
๋ ๋ฒ์งธ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ๋ ๊ฒ์ ๋น์ฐํด ๋ณด์ด์ง๋ง ์ด ๊ธฐ์ฌ์ ๋งฅ๋ฝ์์ ์ด ์ ๊ทผ ๋ฐฉ์์... ํฅ๋ฏธ๋กญ์ง ์์ต๋๋ค. ๊ธ์์, ์ค์ ๋ก: ์น์ธ ๋ฉ์ปค๋์ฆ์ ๋ง์ด๋์ค๋ฅผ ๋ํ๋ ๋ฐฉ์์ ๋ค๋ฅธ ๋๊ตฌ์์ ์ต์ํฉ๋๋ค(๋ค์๊ณผ ๊ฐ์ ๊ฒ์ด ์๋๋ผ๋).
๋ ๋ค๋ฅธ ๊ฒ์ ๊ธฐ๋ณธ ํค๋์ ๋๋ค! ๊ฐ๋จํ ๋งํด์ ๊ธฐ๋ณธ ํค๋๋ ๋ช ์์ ์ผ๋ก ๋นํ์ฑํํ์ง ์๋ ํ ๊ธฐ๋ณธ์ ์ผ๋ก ์์ฒญ์ ์ถ๊ฐ๋๋ ์์๋ HTTP ํค๋์ ๋๋ค. ์๋ฅผ ๋ค์ด ์ด ๊ธฐ๋ฅ์ ์ฌ์ฉํ๋ฉด ์ฌ์ฉ์ ์ ์ ์ธ์ฆ์ ๊ตฌํํ๊ฑฐ๋ ์คํฌ๋ฆฝํธ์์ ์ค๋ณต์ ์ ๊ฑฐํ ์ ์์ต๋๋ค. ์ด ๊ธฐ๋ฅ์ ์ฌ์ฉํ์ฌ ํค๋์ ํ ํฐ์ ์ ๋ฌํด ๋ณด๊ฒ ์ต๋๋ค.
์ด์ ์๋ ํ ํฐ์ ๋์ ๋ณ์์ ์ ์คํ๊ฒ ์ ์ฅํ์ต๋๋ค. $dynamicVar.token
ํ๋ก์ ํธ ๋
ธ๋ ์์ค์์. ๋จ์ ๊ฒ์ ๋ค์์ ์ํํ๋ ๊ฒ์
๋๋ค.
- ๊ธฐ๋ณธ ์ ๋ชฉ ์ ์
Authorization
์๋ฏธ๋ฅผ ๊ฐ์ง๊ณBearer ${$dynamicVar.token}
ํ๋ก์ ํธ ๋ ธ๋ ์์ค์์. ์ด๋ ๊ฒ ํ๋ ค๋ฉด ๋ ธ๋์ ํ๋ก์ ํธ ์ธํฐํ์ด์ค์์ ๊ธฐ๋ณธ ์ ๋ชฉ(๋ฒํผ)์ด ์๋ ๋ํ ์์๋ฅผ ์ด์ด์ผ ํฉ๋๋ค. ํค๋ ์ค๋ฅธ์ชฝ ์๋จ ๋ชจ์๋ฆฌ์ ์์) ํด๋น ์ ๋ชฉ์ ์ถ๊ฐํฉ๋๋ค. ์ฑ์์ง ๊ฐ์ด ํฌํจ๋ ๋ํ ์์๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
- ๋ก๊ทธ์ธ ์์ฒญ์์ ์ด ํค๋๋ฅผ ๋นํ์ฑํํฉ๋๋ค. ์ด๋ ์ดํดํ ์ ์์ต๋๋ค. ๋ก๊ทธ์ธ ์ ์์ง ํ ํฐ์ด ์์ผ๋ฉฐ ์ด ์์ฒญ์ ํตํด ํ ํฐ์ ์ค์นํ ๊ฒ์ ๋๋ค. ๋ฐ๋ผ์ ํญ์ ์๋ ์์ฒญ์ ๋ก๊ทธ์ธ ์ธํฐํ์ด์ค์์ ํค๋ ์ ์ง์ญ์์ ์์ํ๋ Authorization ํค๋๋ฅผ ์ ํ ์ทจ์ํ์ธ์.
๊ทธ๊ฒ ๋ค์ผ. ์ด์ ๋ก๊ทธ์ธ ๋ ธ๋๋ฅผ ์ ์ธํ๊ณ ํ๋ก์ ํธ ๋ ธ๋์ ํ์์ธ ๋ชจ๋ ์์ฒญ์ โโ์ธ์ฆ ํค๋๊ฐ ์ถ๊ฐ๋ฉ๋๋ค. ์ด ๋จ๊ณ์์ ์ฐ๋ฆฌ๋ ์ด๋ฏธ ์คํฌ๋ฆฝํธ๊ฐ ์ค๋น๋์ด ์๊ณ ์ฐ๋ฆฌ๊ฐ ํด์ผ ํ ์ผ์ ๊ทธ๊ฒ์ ์คํํ๋ ๊ฒ๋ฟ์ ๋๋ค. ์ ํํ์ฌ ์คํฌ๋ฆฝํธ๋ฅผ ์คํํ ์ ์์ต๋๋ค. ๋ฌ๋ฆฌ๊ธฐ ํ๋ก์ ํธ ๋ ธ๋์ ์ปจํ ์คํธ ๋ฉ๋ด์ ์์ต๋๋ค.
๊ฒ์๋ฌผ ์์ฑ์ ์ ํ์ฑ ํ์ธ
์ด ๋จ๊ณ์์ ์คํฌ๋ฆฝํธ๋ ๋ก๊ทธ์ธํ๊ณ ์ธ์ฆ ํ ํฐ์ ์ฌ์ฉํ์ฌ ๊ฒ์๋ฌผ์ ์์ฑํ ์ ์์ต๋๋ค. ํ์ง๋ง ์๋ก ์์ฑ๋ ๊ฒ์๋ฌผ์ ์ด๋ฆ์ด ์ฌ๋ฐ๋ฅธ์ง ํ์ธํด์ผ ํฉ๋๋ค. ์ฆ, ๋ณธ์ง์ ์ผ๋ก ๋จ์ ๊ฒ์ ๋ค์์ ์ํํ๋ ๊ฒ๋ฟ์ ๋๋ค.
- ์์ด๋๋ก ๊ฒ์๋ฌผ ์์ ์์ฒญ์ ๋ณด๋ด๊ณ ,
- ์๋ฒ์์ ๋ฐ์ ์ด๋ฆ๊ณผ ๊ฒ์๋ฌผ ์์ฑ ์ ๋ณด๋ธ ์ด๋ฆ์ด ์ผ์นํ๋์ง ํ์ธํ์ธ์.
์ฒซ ๋ฒ์งธ ๋จ๊ณ๋ฅผ ์ดํด๋ณด๊ฒ ์ต๋๋ค. id ๊ฐ์ ์คํฌ๋ฆฝํธ ์คํ ์ค์ ๊ฒฐ์ ๋๋ฏ๋ก ๋์ ๋ณ์๋ฅผ ์์ฑํด์ผ ํฉ๋๋ค(์ด๋ฅผ ํธ์ถํ๊ฒ ์ต๋๋ค). postId
) ๋
ธ๋์์ ๊ฒ์๋ฌผ ์์ฑ ํ๋ก์ ํธ ๋
ธ๋ ์์ค์์. ์ฐ๋ฆฌ๋ ์ด๋ฏธ ์ด ์์
์ ์ํํ๋ ๋ฐฉ๋ฒ์ ์๊ณ ์์ต๋๋ค. ์น์
์ ์ฐธ์กฐํ์ธ์. ํ ํฐ์ ๋ณ์์ ์ ์ฅ. ๋จ์ ๊ฒ์ ์ด ID๋ฅผ ์ฌ์ฉํ์ฌ ๊ฒ์๋ฌผ์ ์์ ํ๋ผ๋ ์์ฒญ์ ๋ง๋๋ ๊ฒ์
๋๋ค. ์ด๋ฅผ ์ํด RequestStep์ ์์ฑํด ๋ณด๊ฒ ์ต๋๋ค. get-post ๋ค์ ๋งค๊ฐ๋ณ์๋ฅผ ์ฌ์ฉํฉ๋๋ค.
- ์์ฒญ ์ ํ: GET
- URL: ${domain}/posts/${$dynamicVar.postId}
๋ ๋ฒ์งธ ๋จ๊ณ๋ฅผ ๊ตฌํํ๋ ค๋ฉด ๋ค์ ์ฌํญ์ ์์งํด์ผ ํฉ๋๋ค. Compare
์ฐ์ฐ์๋ฅผ ์ฌ์ฉํ ์ด์ค์
equal
. ์ด์ค์
์ ๋ง๋๋ ๋ฐฉ๋ฒ์๋ ์ฌ๋ฌ ๊ฐ์ง๊ฐ ์์ต๋๋ค.
- ๊ธด. RequestStep ๋ ธ๋์ ์ปจํ ์คํธ ๋ฉ๋ด์์ Assertion ๋ ธ๋๋ฅผ ์๋์ผ๋ก ์์ฑํฉ๋๋ค. ์์ฑ๋ ์ด์ค์ ๋ ธ๋์์ ๊ด์ฌ ์๋ ์ด์ค์ ์ ์ถ๊ฐํ๊ณ ํ๋๋ฅผ ์ฑ์๋๋ค.
- ๋น ๋ฅธ. ์ํฉ์ ๋ง๋ ๋ฉ๋ด๋ฅผ ์ฌ์ฉํ์ฌ RequestStep ๋ ธ๋ ์๋ต์ ์ด์ค์ ๊ณผ ํจ๊ป ์ด์ค์ ๋ ธ๋๋ฅผ ์์ฑํฉ๋๋ค.
๋ ๋ฒ์งธ ๋ฐฉ๋ฒ์ ์ฌ์ฉํด ๋ณด๊ฒ ์ต๋๋ค. ์ด๊ฒ์ด ์ฐ๋ฆฌ์ ๊ฒฝ์ฐ์ ๋ชจ์ต์ ๋๋ค.
์ดํดํ์ง ๋ชปํ๋ ์ฌ๋๋ค์ ์ํด ๋ฌด์จ ์ผ์ด ์ผ์ด๋๊ณ ์๋์ง ์๋ ค๋๋ฆฝ๋๋ค.
- ๋ ธ๋์์ ์์ฒญํ๊ธฐ get-post
- ํญ์์ ํ์ฑ โโ๋จ ๋๋ต, ์ํฉ์ ๋ง๋ ๋ฉ๋ด๋ฅผ ํธ์ถํ๊ณ ์ ํ ์ด์ค์ ๋ง๋ค๊ธฐ -> ๋น๊ต -> ๊ฐ์
์ถํํฉ๋๋ค. ์ฒซ ๋ฒ์งธ ํ
์คํธ๋ฅผ ๋ง๋ค์์ต๋๋ค! ๊ฐ๋จํ์ง ์๋์? ์ด์ ์คํฌ๋ฆฝํธ๋ฅผ ์์ ํ ์คํํ๊ณ ๊ฒฐ๊ณผ๋ฅผ ์ฆ๊ธธ ์ ์์ต๋๋ค. ๋จ์ ๊ฒ์ ์กฐ๊ธ ๋ฆฌํฉํ ๋งํด์ ๊บผ๋ด๋ ๊ฒ๋ฟ์ด๋ค. title
๋ณ๋์ ๋ณ์๋ก. ํ์ง๋ง ์ด๊ฑด ์์ ๋ก ๋จ๊ฒจ๋๊ฒ ์ต๋๋ค)
๊ฒฐ๋ก
์ด ๊ฐ์ด๋์์๋ ๋ณธ๊ฒฉ์ ์ธ ์๋๋ฆฌ์ค๋ฅผ ์์ฑํ๋ ๋์์ ์ ํ์ ์ผ๋ถ ๊ธฐ๋ฅ์ ๊ฒํ ํ์ต๋๋ค. ๋ฌผ๋ก ์ฐ๋ฆฌ๋ ๋ชจ๋ ๊ธฐ๋ฅ์ ์ฌ์ฉํ์ง๋ ์์์ผ๋ฉฐ ๋ค์ ๊ธฐ์ฌ์์๋ TestMace์ ๊ธฐ๋ฅ์ ๋ํ ์์ธํ ๊ฐ์๋ฅผ ์ ๊ณตํ ๊ฒ์ ๋๋ค. ๊ณ์ ์ง์ผ๋ด ์ฃผ์๊ธฐ ๋ฐ๋๋๋ค!
PS ๋ชจ๋ ๋จ๊ณ๋ฅผ ์ฌํํ๊ธฐ ๊ท์ฐฎ์ผ์ ๋ถ๋ค์ ์ํด ์น์ ํ ๋
น์ํด๋์์ต๋๋ค.
์ถ์ฒ : habr.com