[Node.js] jest: code coverage
๊ด๋ จ ํฌ์คํธ
https://blog.naver.com/sssang97/222009530791
ํ
์คํธ ์ปค๋ฒ๋ฆฌ์ง๋ ๋จ์ํ
์คํธ๋ฅผ ์ผ๋ง๋ ๊ผผ๊ผผํ๊ฒ ํ๋์ง ์ ์ ์๊ฒ ํด์ฃผ๋ ์ธก๋ ๊ธฐ์ค์ด๋ค.
๋น์ฐํ 100%์ ๊ฐ๊น๊ฒ ๋ฌ์ฑํ๋ฉด ์ข..๊ธด ์ข์๋ฐ, ํ์ค์ ์ผ๋ก ๊ทธ๋ฐ ๊ฒฝ์ฐ๋ ๊ฑฐ์ ์๋ค.
๊ตฌ๋ฌธ๊ณผ ๋ผ์ธ, ๋ธ๋์น, ํจ์ ๋ฑ์ ๋จ์๊ฐ ์๋ค.
๊ตฌ๋ฌธ ๋จ์์ ์ปค๋ฒ๋ฆฌ์ง๋ ์๋ณธ์์ค์ ์ ์ฒด ๊ตฌ๋ฌธ ์ค์์ ๋ช๊ฐ์ ๊ตฌ๋ฌธ์ด jest test ํ์ผ์์ ํ
์คํธ๊ฐ ๋์๋์ง๋ฅผ ๋ปํ๊ณ , ๋ผ์ธ ๋จ์ ์ปค๋ฒ๋ฆฌ์ง๋ ์ ์ฒด ๋ผ์ธ ์ค์์ ์ผ๋ง๋ jest test์์ ํ
์คํธ๋์๋์ง๋ฅผ ๋ํ๋ธ๋ค.
๋๋จธ์ง๋ ๋์ผํ ๊ฐ๋
์ด๋ค.
์ปค๋ฒ๋ฆฌ์ง ๋ฌ์ฑ๋๋ jest CLI์ --coverage ํ๋๊ทธ๋ฅผ ์ฃผ๋ฉด ๋ณผ ์ ์๋ค.
์์ฃผ ์ธ๋งํ ๊ธฐ๋ฅ์ด๋ package.json ์คํฌ๋ฆฝํธ๋ก ๋ฃ์ด์ฃผ๋๊ฒ ์ข๋ค.

jest --coverage์ปค๋ฒ๋ฆฌ์ง ์ฌ์ฉ๋ฒ
์๋ฅผ ๋ค์ด ์ด๋ฐ 2๊ฐ์ ํจ์๊ฐ ์๋ค ์น๊ฒ ๋ค.

๊ทธ๋ฐ๋ฐ ์ ๊ธฐ์ add์ ๋ํด์๋ง ํ ์คํธ์ผ์ด์ค๋ฅผ ์์ฑํ๊ณ , ๋ค๋ฅธ๊ฑด ํ์ง ์๋๋ค๋ฉด

๋ฑ ์ ๋ฐ๋ง ๋ฌ์ฑํ๋ค๊ณ ์๋ ค์ค๋ค.
๋ผ์ธ ์ปค๋ฒ๋ฆฌ์ง๋ ๋ช๋ฒ์งธ ๋ผ์ธ์ด ๋น ์ก๋์ง๋ ์๋ ค์ค๋ค.
6๋ฒ์งธ ์ค์ด๋ผ๋๋ฐ,
๋ง๋ค.
๊ทธ๋ฆฌ๊ณ ์ปค๋ฒ๋ฆฌ์ง๋ฅผ ๋๋ฆฌ๋ฉด coverage ๋๋ ํฐ๋ฆฌ๊ฐ ์์ฑ๋๋๋ฐ, ์ปค๋ฒ๋ฆฌ์ง ๊ฒฐ๊ณผ๋ฅผ ์ข๋ ์์๊ฒ ๋ณด๊ณ ์ถ๋ค๋ฉด

์คํํด์ ๋ณด๋ฉด ๋๋ค.

๊ฝค ์์๊ฒ ํ์ด๋ผ์ดํ ๋ ๋๋ค.
๋ป๊ฑด์์ด ๋ถ์กฑํ ๋ถ๋ถ์ด๋ผ๋ ๊ฒ์ด๋ค.
์ด์ sub๋ฅผ ํ ์คํธ์ ์ถ๊ฐํด์ฃผ๋ฉด

๊ฝ ์ฐฌ ๊ฒ์ ๋ณผ ์ ์๋ค.
๋์ถฉ ์ด๋ฐ ์์ผ๋ก ํ๋ฉด ๋๋ค.