๋ฆฌํฉํ ๋ง์ ์์ด ํ
์คํธ ์ฝ๋๋ ์ ์ค์ํ ๊น?
์๊ฐ ํ
์คํธ ์ฝ๋์ ๊ฐ์น
- ํ๋ก๊ทธ๋๋จธ๋ค์ ๋๋ถ๋ถ์ ์๊ฐ์ ์ฝ๋์น๋ ์๊ฐ์ด ์๋๋ค.
- ํ์ํฉ ํ์
/ ์ค๊ณ ๊ณ ๋ฏผ / ๋๋ฒ๊น
์ ๋ง์ ์๊ฐ์ ์ด๋ค.
- ๋๋ฒ๊น
์ ๊ฒฝ์ฐ ์์ ์์ฒด๋ ๊ธ๋ฐฉ ๋๋๋ค. ๋ค๋ง ์ฐพ๋๋ฐ ๊ณ ํต์ค๋ฝ๋ค.
๋ชจ๋ ํ
์คํธ๋ฅผ ์์ ํ ์๋ํํ๊ณ ๊ทธ ๊ฒฐ๊ณผ๊น์ง ์ค์ค๋ก ๊ฒ์ฌํ๊ฒ ๋ง๋ค์.
- ํ
์คํธ๋ฅผ ์์ฑํด๋๋ฉด ํ๊ท ๋ฒ๊ทธ(์ด์ ์๋ ์ ๋์ํ๋ค๊ฐ ๋ฌธ์ ๊ฐ ์๊ธฐ๋ ๊ฒ.)๋ฅผ ์ก๋๋ฐ ๋ช ๋ถ ์ด์ ์์ํ ํ์๊ฐ ์๋ค.
- ์ด๋ ๊ฒ ์ข์์๋ ์ ๋ป ์ค๋์ํค๋ ๊ฒ์ ์ฝ์ง ์๋ค.
- ๋ถ๊ฐ์ ์ฝ๋๋ฅผ ๋ง์ด ๋ง๋ค์ด์ผ ํ๊ณ , ์ด ํ
์คํธ๊ฐ ์คํ๋ ค ์๋๋ฅผ ๋์ธ๋ค๋ ๊ฒ์ ํ์ธํ๊ธฐ ์ ๊น์ง๋ ์ ์ดํดํ์ง ๋ชปํ๊ธฐ ๋๋ฌธ์ด๋ค.
ํ
์คํธํ ์ํ ์ฝ๋
- ํน์ ์ง์ญ์ ๋ํ ์์ฐ ๊ณํ์ด๋ค.
- ์์๋ 30, ๊ฐ๊ฒฉ์ 20์ด๋ค.
- ์ด ์ํฉ์์ ์์ฐ์ ์๋ 3๋ช
์ด๋ฉฐ, ๊ฐ ์์ฐ์๊ฐ ๋ง๋ค ์ ์๋ ์คํ์ด ์ ํ์๋ค.
- ์ต์ข
์ ์ผ๋ก ๋ถ์กฑ๋ถ๊ณผ ์ป์ ์ ์๋ ์ด ์์ต์ ๊ณ์ฐํ๋ ์ฑ์ด๋ค.
- ์ฌ๊ธฐ์ ๋น์ฆ๋์ค ๋ก์ง ๋ถ๋ถ๋ง ์ง์คํด์ ์ฒ๋ฆฌํด๋ณด์.
์ฒซ ๋ฒ์งธ ํ
์คํธ
- ์ด ์ฝ๋๋ฅผ ํ
์คํธํ๊ธฐ ์ํด์๋ ํ
์คํธ ํ๋ ์์ํฌ๋ฅผ ๋ง๋ ฟใดํด์ผ ํ๋ค.
- ์ด ๊ธ์ ์ฝ๋ ์์ ์๋ ๋ฌ๋ผ์ง ์ ์์ผ๋, ์ฌ์ฉ๋ฒ์ ํฌ๊ฒ ๋ค๋ฅด์ง ์๋ค.
- ์์ฐ ๋ถ์กฑ๋ถ์ ์ ๋๋ก ๊ณ์ฐํ๋์ง ํ์ธํ๋ ํ
์คํธ์ด๋ค.
- ํฝ์ค์ณ ์ค์ ์, ํ
์คํธ์ ํ์ํ ๋ฐ์ดํฐ์ ๊ฐ์ฒด๋ฅผ ์ค์ ํ๋ ๊ฒ์ ๋งํ๋ค.
- ๋๋ฒ์งธ์์ ์ด๋ฅผ ๊ฒ์ฆํ๋ค.
- ์ด ๋, ์ฑ๊ณต๊ณผ ์คํจ ๋ ๊ฐ์ง ๊ฒฝ์ฐ๋ฅผ ๋ชจ๋ ํ๋ฒ ํ์ธํด๋ณด์. ๊ทธ๋์ผ ํ๋ ์์ํฌ๋ฅผ ์ ๋ขฐํ ์ ์์ผ๋๊น
ํ
์คํธ ์ถ๊ฐํ๊ธฐ
- ํ
์คํธ๋ ์ํ ์์ธ์ ์ค์ฌ์ผ๋ก ์์ฑํด์ผ ํ๋ค.
- ๋ฐ๋ผ์ ๋จ์ํ ํ๋๋ฅผ ์ฝ๊ณ ์ฐ๊ธฐ๋งํ๋ ์ ๊ทผ์๋ ํ
์คํธํ ํ์๊ฐ ์๋ค.
- ์คํ๋ ค ํ์ํ ํ
์คํธ๋ฅผ ๋์น์ง ๋ง์.
์๋ฒฝํ๊ฒ ๋ง๋๋๋ผ ํ
์คํธ๋ฅผ ์ํํ์ง ๋ชปํ๋๋, ๋ถ์์ ํ ํ
์คํธ๋ผ๋ ์์ฑํด ์คํํ๋๊ฒ ๋ซ๋ค.
- ์ด๋ฒ์๋ ์ด ์์ต์ ๊ณ์ฐํ๋ ํ
์คํธ๋ฅผ ์ถ๊ฐํด๋ณด์.
- ๊ทธ๋ฐ๋ฐ ๋๊ตฌ๋ ์ด๋ ๊ฒ ๋ ์ํฉ์ ๋ณด๊ณ ์ค๋ณต!์ด๋ผ ํ ์ ์๋ค.
const asia = new Province(sampleProvinceData());
์ด ๋ถ๋ถ์ด ์ค๋ณต๋๋๊น ๋ง์ด๋ค.
- ๊ทธ๋ฐ๋ฐ ๊ทธ๋ ๋คํด์ ์ด๊ฑธ ๊ณต์ ํ๋๋ก ํด์๋ ์๋;ใด๋ค.
- ํ
์คํธ๋ผ๋ฆฌ ์ํธ์์ฉํ๊ฒ ๋๊ธฐ ๋๋ฌธ์ด๋ค.
- ๊ทธ๋ผ์๋ ์ค๋ณต์ด ๋ฐ์ํ๊ณ ์๋๋ฐ, ์ข๋ ์๋นกํ๊ฒ ํ ์๋ ์์๊น?
beforeEach
๋ฅผ ์ฌ์ฉํ๋ฉด ๋๋ค.
- ์ด ๊ตฌ๋ฌธ์ ๊ฐ๊ฐ์ ํ
์คํธ ๋ฐ๋ก ์ ์ ์คํ๋์ด asia๋ฅผ ์ด๊ธฐํ ํ๋ค.
- swift์์๋
setUpWithError()
๊ฐ ๊ทธ์ญํ ์ ํ๋ค.
ํฝ์ค์ฒ ์์ ํ๊ธฐ
- change production์์ ๊ฐ์ ์์ ํ๊ณ ํ
์คํธํ๋ ์ฝ๋๋ฅผ ์ถ๊ฐํ๋ค.
- ๋น์ฐํ beforeEach์์ ์ํํ๋ฉด ์๋๊ณ , ์ค์ฝํ๋ฅผ ๋ช
ํํ ๊ตฌ๋ถํด์ ์ฒ๋ฆฌํด์ผ ํ๋ค.
- ๊ทธ๋ฆฌ๊ณ ๊ตณ์ด ํ๋์ ํ
์คํธ์์ ๋๊ฐ์ง ์์ฑ์ ๊ฒ์ฆํด๋ ๋๋ค.
๊ฒฝ๊ณ ์กฐ๊ฑด ๊ฒ์ฌํ๊ธฐ
- ์ง๊ธ๊น์ง๋ ๊ฝ๊ธธ ํ
์คํธ๋ง ์งํํ๋ค.
- ์ฐ๋ฆฌ ์๋๋๋ก ์๋ํ๋ ์ํฉ๋ง ๊ฒ์ฆํ๋ค๋ ๋ง์ด๋ค.
- ์ถ๊ฐ์ ์ผ๋ก ๊ฒฝ๊ณ ์ง์ ์ ๋ํ ๋ฌธ์ ๋ ๊ฒ์ฆํด์ผ ํ๋ค.
- ์์๊ฐ ๋ง์ด๋์ค์ธ ๊ฒฝ์ฐ ๋ญ๊ฐ ์ด์ํ๋ค.
- ์์ต์ด ์์๋ก ๋์ค๋ ๊ฒ์ด ๋ง์ด๋๋?
- ์ด๋ฐ ๊ฒฝ์ฐ 0์ผ๋ก ๊ณ ์ ํ๋ ๊ฒ์ด ์ข์ ๊ฒ ๊ฐ๋ค.
๋ฌธ์ ๊ฐ ์๊ธธ ๊ฐ๋ฅ์ฑ์ด ์๋ ๊ฒฝ๊ณ ์กฐ๊ฑด์ ์๊ฐํด๋ณด๊ณ ๊ทธ ๋ถ๋ถ์ ์ง์ค์ ์ผ๋ก ํ
์คํธํ์.
- ์์ฐ์ ์ ํ๋์ ๋ฌธ์์ด์ ๋์
ํ๋ ๊ฒฝ์ฐ๋ฅผ ์ถ๊ฐํ๋ค.
- ์๋๋ ์์ฐ์์ ๋ํ ์ ๋ณด๋ค์ด ๋ค์ด๊ฐ์ ๊ฒ์ด๋ค.
- ๊ทธ๋ฆฌ๊ณ
forEach
๋ฅผ ํตํด ๊ฒฐ๊ณผ๊ฐ์ ๋ง๋ค์์๋ค.
- ๋น์ฐํ ๋น ์คํธ๋ง์ด๋
forEach
๊ฐ ๋์ํ์ง ์์ ์๋ฌ๋ฅผ ๋์ด๋ค.
9 passing (12ms)
1 failing
1) string for producers :
TypeError: doc.producers.forEach is not a function
- ์ด๋ ๊ฒ ๊ฒฝ๊ณ์์ ๋ฌธ์ ๊ฐ ์๊ธฐ๋ ๊ฒฝ์ฐ๋ฅผ ํ
์คํธํด์ผ ํ๋ค.
์ด์ฐจํผ ๋ชจ๋ ๋ฒ๊ทธ๋ฅผ ์ก์๋ผ ์๋ ์๋ค ์๊ฐํ์ฌ ํ
์คํธ๋ฅผ ์์ฑํ์ง ์์ผ๋ฉด, ๋๋ค์์ ๋ฒ๊ทธ๋ฅผ ์ก์ ๊ธฐํ๋ฅผ ๋์น๊ฒ ๋๋ค.
- ๊ทธ๋ ๋ค๊ณ ๋๋ฌด๋ ์ธ์ธํ ํ
์คํธ๊น์ง ํ๊ธฐ๋ ๋ฒ๊ฒ๋ค.
- ์ํ ์ฒด๊ฐ ๋ฒ์น์ด ์ ์ฉ๋๊ธฐ ๋๋ฌธ์ด๋ค.
- ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ์ฝ๋์์ ์ฒ๋ฆฌ ๊ณผ์ ์ด ๋ณต์กํ ๋ถ๋ถ๋ถํฐ ์ฒ๋ฆฌํ์.
- ์ฆ, ์ฐ์ ์์๋ฅผ ์ ํด์ ์ฒ๋ฆฌํด๋ผ.
๋๋์ง ์์ ์ฌ์
- ์ง๊ธํ ๊ฑด ๋จ์ ํ
์คํธ์ด๋ค.
- ์๊ฐ ํ
์คํธ ์์คํ
์ ๋๋ถ๋ถ์ ๋จ์ ํ
์คํธ๊ฐ ์ฐจ์งํ๋ค.
- ํ
์คํธ๋ ๋ฐ๋ณต์ ์ผ๋ก ์งํํ๋ค. ํ๋ฒ์ ์๋ฒฝํ ํ
์คํธ๋ฅผ ๊ฐ์ถ ์ ์๋ค.
- ํ
์คํธ๊ฐ ์ถฉ๋ถํ์ง๋ฅผ ํ๊ฐํ๋ ๊ธฐ์ค์ ์ฃผ๊ด์ ์ด๋ค.
๋ฒ๊ทธ ๋ฆฌํฌํธ๋ฅผ ๋ฐ์ผ๋ฉด ๊ทธ ๋ฒ๊ทธ๋ฅผ ๋๋ฌ๋ด๋ ๋จ์ ํ
์คํธ ๋ถํฐ ์์ฑํ์.
Reference