์ฝ๋ ์กฐ์ปค
โฆ ๊ธฐ์ด๋ถํฐ ์์ฑ๊น์ง, ํ๋ฐํธ์๋(๊ฐ๋ฐ๋ถํฐ ํ
์คํธ๊น์ง, ์ด๋ก ๊ณผ ์์ ๋ก ๋ฐฐ์ฐ๋ ํ๋ฐํธ์๋) ์ ์
โฆ 12๋
์ฐจ ํ๋ฐํธ์๋ ๊ฐ๋ฐ์
โฆ (ํ) ๊ธ๋ก๋ฒ ์ปจํ
์ธ ํ์ฌ FE ๊ฐ๋ฐ ๋ถ๋ฌธ ํ์ฅ
โฆ (์ ) NHN TOAST Cloud FE ๊ฐ๋ฐ ํ์ฅ
โฆ (์ ) ์ผ์ฑ SDS FE ๊ฐ๋ฐ์
์คํ
โฆ ๊ธฐ์ด๋ถํฐ ์์ฑ๊น์ง, ํ๋ฐํธ์๋(๊ฐ๋ฐ๋ถํฐ ํ
์คํธ๊น์ง, ์ด๋ก ๊ณผ ์์ ๋ก ๋ฐฐ์ฐ๋ ํ๋ฐํธ์๋) ์ ์
โฆ 8๋
์ฐจ ํ๋ฐํธ์๋ ๊ฐ๋ฐ์
โฆ (ํ) ๊ธ๋ก๋ฒ ๋ฉ์ ์ ํ์ฌ FE ๊ฐ๋ฐ์
โฆ (์ ) NHN TOAST UI ์คํ์์ค ๊ฐ๋ฐ์
Courses
Reviews
wjdgksak0677
ยท
Frontend Testing for Immediate Application - Part 1. Testing Basics: Unit & Integration TestsFrontend Testing for Immediate Application - Part 1. Testing Basics: Unit & Integration Testsjdy8739
ยท
Front-end testing for practical use - Part 2. Testing in depth: Visual regression and E2E testingFront-end testing for practical use - Part 2. Testing in depth: Visual regression and E2E testingjdy8739
ยท
Frontend Testing for Immediate Application - Part 1. Testing Basics: Unit & Integration TestsFrontend Testing for Immediate Application - Part 1. Testing Basics: Unit & Integration Testsholali
ยท
Frontend Testing for Immediate Application - Part 1. Testing Basics: Unit & Integration TestsFrontend Testing for Immediate Application - Part 1. Testing Basics: Unit & Integration Testsjangexpedition9088
ยท
Frontend Testing for Immediate Application - Part 1. Testing Basics: Unit & Integration TestsFrontend Testing for Immediate Application - Part 1. Testing Basics: Unit & Integration Tests
Posts
Q&A
2๋ถ ํ ์ธ์ฟ ํฐ ๊ด๋ จ
๋ฉ์ผ ์ฃผ์๋ฉด ๋ค์ ๋ฐ๊ธํด๋๋ฆฌ๊ฒ ์ต๋๋ค!
- 0
- 1
- 98
Q&A
์๋ฌ ํด๊ฒฐ ๋ฐฉ๋ฒ
์๋ ํ์ธ์~AI ์ธํด ์น๊ตฌ๊ฐ ๋จ๊ฒจ์ฃผ์ ๊ฒ์ฒ๋ผ ์๋ง ๋ ธ๋ ๋ฒ์ ์ ๋ฌธ์ ์ด์ง ์์๊น ์ถ์ต๋๋ค.์ฌ์ฉํ์๋ ๋ ธ๋ ๋ฒ์ ์ด 22๋ฒ์ ์ด๋ผ๊ณ ๋์ด์๋๋ฐ, ๊ฐ์๋ 19๋ฒ์ ์ ์ฌ์ฉํ๊ณ ์์ด์์.๊ฐ๋ฅํ๋ค๋ฉด nvm use ๋ฅผ ํตํด ๋ฒ์ ์ ๋ง์ถฐ ๊ฐ์๋ฅผ ์งํํด์ฃผ์๊ฑฐ๋ ํ์ฌ ๋ฒ์ ์ผ๋ก ์งํํ๊ณ ์ถ์ผ์๋ค๋ฉด assert ๋์ with๋ก ๊ตฌ๋ฌธ์ ๋ณ๊ฒฝํด์ ์ฌ์ฉํด์ฃผ์๋ฉด ๋ ๊ฒ ๊ฐ์ต๋๋ค. ๊ด๋ จ ์ด์๋ ์ฌ๋ ค๋๋ฆด๊ฒ์!๊ฐ์ฌํฉ๋๋ค~https://stackoverflow.com/questions/78876691/syntaxerror-unexpected-identifier-assert-on-json-import-in-node-v22
- 0
- 2
- 157
Q&A
Retry-ability์ ์ปค์คํ ์ปค๋งจ๋, ์ปค์คํ ์ฟผ๋ฆฌ ์ง๋ฌธ
์๋ ํ์ธ์ ๋ฉ๊ฐ๋! ๋ต์ด ์กฐ๊ธ ๋ฆ์๋ค์ ใ ใ ์ฃ์กํฉ๋๋ค.1. ์ปค์คํ ์ฟผ๋ฆฌ๋ Retry-ability ์ง์๋๊ณ ์ปค์คํ ์ฟผ๋ฆฌ ์์ ์ปค๋งจ๋๋ Retry-ability๊ฐ ์ง์๋๋ฉด n์ m์ ๊ณฑ ๋ฒ์ ์ฌ์๋๊ฐ ๋ฐ์ํ๋ ๊ฒ์ผ๊น์?์ด ๋ถ๋ถ์ ์ค์ ๊ตฌํ์ ์ฐธ๊ณ ํด๋ด์ผ ํ ๊ฒ ๊ฐ์๋ฐ์. ์ ๊ฐ ๊ตฌํ์ ํ๋ค๊ณ ๊ฐ์ ์ ํ๊ณ ๊ฐํ ์ถ์ธก์ ํด๋ณด๋ฉด, n์ m์น์ผ๋ก ์ฌ์๋๊ฐ ๋ฐ์ํ๋ ๊ฒฝ์ฐ ๊ทธ๋ ๊ฒ ์ฌ์๋ ์๊ธฐ์ ๊ฒ์ฆ ํจ์ฉ์ด ์๋ค๊ณ ํ๋จํ๊ณ (์ ๋ค ๋ณด๋ ์๋ ๊ฒฝ์ฐ๋ ์์ ์ ์์ ๊ฒ ๊ฐ๋ค์) ์ต์ ํ๋ฅผ ํ์ ๊ฒ ๊ฐ์๋ฐ cypress์ธก์ ๋ฌธ์๋ฅผ ํด๋ด์ผ ํ ๊ฒ ๊ฐ๋ค์ ใ ใ https://github.com/cypress-io/cypress/issues์๊ธฐ์ ๋ฌธ์๋ฅผ ์งํํด๋ณด์๋ฉด ์ด๋จ๊น ์ถ์ต๋๋ค!2. ์ปค์คํ ์ปค๋งจ๋์ ์ปค์คํ ์ฟผ๋ฆฌ ์ค์ ๋ญ ์ฌ์ฉํ ๊ฒ์ธ์ง๋ Retry-ability ์ง์ ์ ๋ฌด์ ์ฒด์ด๋์ ๊ธฐ์ค์ผ๋ก ์ ํํ๋ฉด ๋ ๊น์?์์์ฝ๋๋ฅผ ๋ดค์ ๋ getCardButton์getProductCardByIndex ๋ ๋ค DOM ์์๋ฅผ ์กฐํํด์ subject๋ฅผ ๋ฆฌํดํ์ฌ ์ฒด์ด๋์ ํตํด ํ์ ์์ ์ ํ๋ ๊ฒ์ฒ๋ผ ๋ณด์ด๋๋ฐ ์ getProductCardByIndex๋ ์ปค์คํ ์ปค๋งจ๋๋ก ์์ฑํ๋์ง ์ ๋ชจ๋ฅด๊ฒ ์ต๋๋ค.. ๋ง์ํด์ฃผ์ ๋๋ก Query๊ฐ ๋ถ์ API์ ์๋ถ์ API์ ๊ฐ์ฅ ํฐ ์ฐจ์ด๋ retry-ability์ง์ ์ฌ๋ถ์ ๋๋ค.Query๊ฐ ๋ถ์ API๋ ๋๊ธฐ ๋ฐฉ์์ผ๋ก ๋์ํ๋ฉฐ ์ด์ ๊น์ง ์ฒด์ด๋์ผ๋ก ์ฌ์ฉํ ์ปค๋งจ๋์ subject ๊ฒฐ๊ณผ๋ฅผ ๋ฐ์ ์ฌ์ฉํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฒด์ด๋์ผ๋ก ์ฐ๊ฒฐ๋ ์ฝ๋๋ฅผ ์ผ์ ์๊ฐ๋์ ์ฌ์๋ํฉ๋๋ค.(https://docs.cypress.io/api/cypress-api/custom-queries)๋ฐ๋๋ก Query๊ฐ ๋ถ์ง ์์ ์ปค์คํ ์ปค๋งจ๋๋ ๋น๋๊ธฐ๋ก ๋์ํ ์ ์์ผ๋ฉฐ, ํน๋ณํ ์ค์ ์ ํ์ง ์์ผ๋ฉด ์ด์ ์ subject๋ฅผ ์ด์ด ๋ฐ์ ์ฌ์ฉํ์ง๋ ์์ต๋๋ค.๋ํ ๋ด๋ถ์ ์ผ๋ก ์ฌ์๋๋ฅผ ์คํํ์ง ์๊ณ ๋จ ํ๋ฒ๋ง ์คํํฉ๋๋ค.์์์ ๊ฒฝ์ฐ ์๋ง ๊ฐ์ ํน์ฑ์ ์ฌ๋ฌ ๋ฐฉ๋ฒ์ด ์๋ค๊ณ ์๊ฐ๋ฅผ ๋๋ฆฌ๋ ค๊ณ ํ๋ค๋ณด๋ ์ง์ ์ ์ด๊ฒ ์๋ฟ๋ ์์๊ฐ ์๋ ์ ์๋๋ฐ์. ์ด ๋ถ๋ถ์ ์ฃ์กํฉ๋๋ค. ๋ชฉ์ ์ ๋ง๊ฒ ์ ํํด ๊ตฌํํ ๋ค ์ฌ์ฉํ๋ฉด ๋ฉ๋๋ค.
- 0
- 1
- 75
Q&A
์ง์ ๊ตฌํํ atom ์ปดํฌ๋ํธ ํ ์คํธ ๋ฒ์ ์ง๋ฌธ
์๋ ํ์ธ์. ๋ฉ๊ฐ๋!์ง์ ์์ฑํ atom ์ปดํฌ๋ํธ์ ๊ฒฝ์ฐ ๋ค์ํ ๋ฒ์์์ ์ฌ์ฉ๋ ์ ์๊ณ ์ํฅ๋๊ฐ ๋์ ์ปดํฌ๋ํธ์ด๋ฉฐ ํ๋กํผํฐ์ ๊ตฌ์กฐ์ ๋ฐ๋ผ ๋ค๋ฅธ ๋ชจ์ต์ ๋ํ๋ผ ๊ฐ๋ฅ์ฑ์ด ๋๊ธฐ ๋๋ฌธ์ ๊ฐ๊ฐ์ ๋ํด ๋ช ํํ ๊ธฐ๋ฅ์ ํ ์คํธ์ ์๊ฐ์ ํ ์คํธ๊ฐ ์์ผ๋ฉด ์ข์ ๊ฒ ๊ฐ์ต๋๋ค.
- 0
- 1
- 98
Q&A
setup, teardown ๋์ ์์
์๋ ํ์ธ์!์ง๋ฌธ์ฃผ์ ๋ด์ฉ ๋ต๋ณ๋๋ฆฝ๋๋ค.beforeAll ๋ด์ console์ด ์ฒซ๋ฒ์งธ๋ก ์ฐํ๋ค๊ฐ afterAll๊ณผ ํจ๊ป ์ฌ์ฉํ ๊ฒฝ์ฐ์๋ afterAll ๋ฐ๋ก ์ง์ (๋ง์ง๋ง ๋ฐ๋ก ์)์ ์ฐํ๊ณ ์์ต๋๋ค. (afterAll์ ์ง์ธ ๊ฒฝ์ฐ์๋ ์ฒซ๋ฒ์งธ๋ก ์ฐํ๊ณ ์์ต๋๋ค.)vitest์ ๊ฒฝ์ฐ ํฌ๋งคํ ์ ์ํด ๊ธฐ๋ณธ console ํด๋์ค์ ๋์์ ๊ฐ๋ก์ฑ์ด ๋ก๊ทธ๋ฅผ ์ฐ๋๋ก ๊ตฌํ๋์ด ์๋๋์. ์ด ๊ตฌํ ๊ณผ์ ์์ ๋ก๊น ์ ํ์ด๋ฐ์ด ๋ณด์ฅ๋์ง ์๋ ๊ฑธ๋ก ๋ณด์ ๋๋ค. ์ค์ ๋ก setup, teardown์ ์ฝ๋ ์คํ ์์ฒด๋ beforeAll -> beforeEach -> afterEach -> afterAll ๋ก ์ด๋ค์ง๋ log ์์ฒด์ ๋์๋๋ฌธ์ ๋ค๋ฅด๊ฒ ์ฐํ๋ ๊ฑธ๋ก ๋ณด์ ๋๋ค. vite.config.js์ disableConsoleIntercept์ต์ ์ true์ค์ ํ๋ฉด ์์ํ ์์๋๋ก ๋ก๊ทธ๊ฐ ์ฐํ๋ ๊ฒ์ ํ์ธํ ์ ์์ต๋๋ค..!beforeEach๋ it์ ์คํํ๋ ํ์๋งํผ ์คํ๋๋๊ฑฐ ๊ฐ์๋ฐ์. describe๋ด์ ์ ์ธํ beforeEach๋ describe๋ด์ ํธ์ถํ it์ ํ์๋งํผ ์คํ๋๋๊ฒ ๋ง๋๊ฑฐ ๊ฐ์๋ฐ root์ beforeEach, afterEach๋ it์ ํ์๋งํผ ์คํ๋๋๊ฒ ๋ง์๊น์?๋ต ๋ง์ต๋๋ค. ๋ค๋ง, root์ beforeEach, afterEach ๋ชจ๋ it์ ๊ฐ์์ ๋น๋กํ์ฌ ์คํ๋ฉ๋๋ค~!
- 0
- 1
- 128
Q&A
debounce ํจ์ ํ ์คํธ ์ ํ๋ ๊ด๋ จ ์ง๋ฌธ์ ๋๋ค.
์๋ ํ์ธ์ ์ผ์๋!debouncedFn์ด 300ms์ด ์ง๋ ํ ์คํ๋์ด์ผ ํจ์ ํ ์คํธํ ๋, ๊ธฐ์กด์ ์์ฑํด์ฃผ์ ๊ฒ ์ฒ๋ผ ํ ์คํธํ ์์๋ ํจ์๊ฐ 300ms ํ๊ฐ ์๋ ์ฆ์ ์คํ์ด ๋๊ฑฐ๋ ๊ทธ๋ณด๋ค ์์ ์๊ฐ์ด ์ง๋๊ณ ์คํ์ด ๋์ด๋ ํ ์คํธ๊ฐ ํต๊ณผํ๊ฒ ๋ฉ๋๋ค.์ด ๋ง์์ ๋ํด ์กฐ๊ธ ๋ ์ฌ์ญค๋ณด๊ณ ์ถ์๋ฐ์! ํน์ ์ด๋ฐ ๊ฒฝ์ฐ์ ์์ ์๊ฐ์ด ์ง๋๋ ํ ์คํธ๊ฐ ์ฑ๊ณตํ๋ค๋ ์๋ฏธ๋ ์ด๋ค๊ฑด์ง ์ ์ ์์๊น์? ์ ๊ฐ ์ถ์ธกํด๋ณด๋ฉดit('ํน์ ์๊ฐ์ด ์ง๋ ํ ํจ์๊ฐ ํธ์ถ๋๋ค.', () => { const spy = vi.fn(); const debouncedFn = debounce(spy, 300); debouncedFn(); expect(spy).toHaveBeenCalled(); // ์ถ๊ฐ vi.advanceTimersByTime(300); expect(spy).toHaveBeenCalled(); });์ด๋ ๊ฒ ํ์ ๋ ํต๊ณผ๋๋ ๊ฒ ์๋๋ ๋ผ๋ ์๋ฏธ๋ก ์ดํดํ๋๋ฐ ๊ด์ฐฎ์๊น์? ์ ๊ฐ ํ ์คํธ๋ฅผ ํ์ ๋๋ ํด๋น ์๋๋ฆฌ์ค์ ๋ํด์๋ ํต๊ณผํ์ง ์์์ ์กฐ๊ธ ๋ ์ค๋ช ํด์ฃผ์๋ฉด ์ ํฌ๊ฐ ์์ฑํ ์ฝ๋๊ฐ ์๋ชป๋ ๋ถ๋ถ์ด ์๋์ง ํ์ธ์ ํด๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค. ์ถ๊ฐ๋ก ๋ง์ํด์ฃผ์ ๋๋ก ์ข ๋ ๊ตฌ์ฒด์ ์ผ๋ก ํธ์ถ์ด ๋์ง ์์์์ ํ์ธํ ๋ค ์ดํ์ ํธ์ถ์ด ๋์์์ ํ์ธํ๊ณ ์ถ๋ค๋ฉด, ์์ฑํด์ฃผ์ ์ฝ๋์์ ์กฐ๊ธ๋ง ์์ ํด์ it('ํน์ ์๊ฐ์ด ์ง๋ ํ ํจ์๊ฐ ํธ์ถ๋๋ค.', () => { const spy = vi.fn(); const debouncedFn = debounce(spy, 300); debouncedFn(); expect(spy).not.toHaveBeenCalled(); // ์ฆ์ ํธ์ถ๋์ง ์์๋์ง ํ์ธ vi.advanceTimersByTime(300); expect(spy).toHaveBeenCalledTimes(1); // 300ms ํ์ ์ ํํ ํ ๋ฒ ํธ์ถ๋์๋์ง ํ์ธ });์ ๋๋ก๋ง ๊ฒ์ฆ์ ํด๋ ์ถฉ๋ถํ์ง ์์๊น ์ถ์ต๋๋ค! ๋ง์ฝ ๊ฒฝ๊ณ์ ๋ํ ๋ช ํํ ํธ๋ฆฌ๊ฑฐ ์์ ์ ๋ํด ๊ฒ์ฆ์ ํ๊ณ ์ถ์ผ์๋ค๋ฉด ์์ฑํด์ฃผ์ ๋๋ก (๋ง์ง๋ง toHaveBeenCalled๋ง ์ ๊ฑฐํ๊ณ ) ์์ฑํด์ฃผ์ ๋ ์ถฉ๋ถํ ์ข์ ๊ฒ์ฆ ๋ฐฉ์์ด์ ๊ฒ ๊ฐ์ต๋๋ค.์ถ๊ฐ๋ก ๊ถ๊ธํ ์ ์์ผ์๋ฉด ํธํ๊ฒ ์ง๋ฌธ์ฃผ์ธ์~ ๊ฐ์ฌํฉ๋๋ค!
- 0
- 2
- 106
Q&A
๋ธ๋์น git clone ์ง๋ฌธ
ํ๋๋ฆด๋ ์๋ ํ์ธ์!main ๋ธ๋์น์ ๋ด์ฉ์ด ์๊ณ , ๊ณผ์ ์ ์งํํ์๋ฉด์ ๋ธ๋์น๋ฅผ ๋ฐ๊ฟ๊ฐ๋ฉด์ ์งํํ์ค๊ฑฐ๋ผ ๋ด์ฉ์ด ์กด์ฌํ ๊ฒ๋๋ค! ํ์ธ ๋ถํ๋๋ฆด๊ฒ์~
- 0
- 1
- 68
Q&A
ProductFilter test ์ด๋ค ๋ฐฉ์์ด ๋ ์ ํธ๋๋ ๋ฐฉ์์ผ๊น์?
์๋ ํ์ธ์!ํฌ๊ฒ ๊ฒ์ฆํ๋ ๋ด์ฉ์ ๋ฌ๋ผ์ง์ง ์์ ๊ฒ ๊ฐ์ต๋๋ค. ์ฐ์์ ์ผ๋ก ์ ๋ ฅ์ ํ๋๋ผ๋ ์ค์ ๊ตฌํ์ ์ธ ๊ด์ ์์ ๋ฌ๋ผ์ง๋ ๋ถ๋ถ์ ์์ผ๋๊น์. ๋ง์ฝ ์์๋ฅผ ๋ณ๊ฒฝํ๋๊ฒ์ผ๋ก ๊ฐ์ ์ ๋๋ชจํ์ จ๋ค๋ฉด ๋ ํ ์คํธ๋ฅผ ๋๋ ์ ์์ฑํ๋ ๊ฒ๋ ์ข์ ๊ฒ ๊ฐ์ต๋๋ค ใ ใ ๋ง์ํด์ฃผ์ ํจํด๋๋ก ์ ์ฉ๋ ๊ฐ๋ฅํ๊ณ ๊ฐ ๊ฒ์ฆ ๋ฒ์๋ฅผ ๋๋ ํ ์คํธ ์ผ์ด์ค๋ฅผ ์์ฑํ๊ธฐ ๋๋ฌธ์ ์คํจํ์ ๋ ์ด๋ ๋ถ๋ถ์์ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋์ง ํจ์ฌ ๋ ์ฝ๊ฒ ์ ์ ์์ ๊ฒ ๊ฐ์์!it('์ต์ ๊ฐ๊ฒฉ์ ์์ ํ๋ฉด setMinPrice๊ฐ ํธ์ถ๋๋ค.',it('์ต๋ ๊ฐ๊ฒฉ์ ์์ ํ๋ฉด setMaxPrice๊ฐ ํธ์ถ๋๋ค.',
- 0
- 2
- 129
Q&A
ํตํฉ ํ ์คํธ ์์ฑ ๋ฐฉ์์ ๋ํด ๊ถ๊ธํ ์ ์ด ์์ต๋๋ค
์๋ ํ์ธ์! ๋ต๋ณ์ด ์กฐ๊ธ ๋ฆ์๋ค์ ใ ใ ๋ต ๋ง์ต๋๋ค. ๋ด๋ถ ๊ตฌํ์ ๋ํ ์์กด์ ์ธ ํ ์คํธ๋ผ๊ณ ๋ ๋ณผ ์ ์์ ๊ฒ ๊ฐ์ต๋๋ค. ๋น์ ์ฝ๋๋ฅผ ์์ฑํ์ ๋ ๊ธฐ์ต์ ๋์ด๋ ค๋ณด๋ฉด.. ProductFilter์ ๋ํ ํตํฉํ ์คํธ์ด๊ณ ๊ฐ์ด ๋ณ๊ฒฝ๋์์ ๋ ์ค์ ํ๋ฉด์์ ์ ์ ํ๊ฒ ๋ณ๊ฒฝ๋์๋ค๋ผ๋ ๊ฒ์ ์ธ์งํ ์ ์๋ ๋ถ๋ถ์ ๊ฐ ์์ดํ ๋ค์ ๋ํ ๊ฐ์ด ์ ๋๋ก ๋ ธ์ถ๋๋์ง ์ฌ๋ถ ์ ๋ณด๋ง ๊ฒ์ฆํ ์ ์๋ค๊ณ ์๊ฐํ๋๊ฒ ๊ฐ์ต๋๋ค. ์ถ๊ฐ๋ก ํํฐ๋ก ์ง์ ๋ ๊ฐ์ผ๋ก ๋ ์ธ๋ถ์์ ๋ ธ์ถ๋๋ ์์ดํ ์ด ๋ฌ๋ผ์ง๊ธฐ ๋๋ฌธ์ ์ํฅ์ ๋ฏธ์น ์ ์๋ store set ํจ์๋ฅผ ํ ์คํธํ์ง ์์๋ ๋ผ๊ณ ์๊ฐ์ด ๋ญ๋๋ค. ํ์ฌ ํ ์คํธ ๊ตฌ์กฐ์ E2E ํ ์คํธ์์ ์ค์ ํํฐ๊ฐ์ ๊ฒฐ๊ณผ๋ฅผ ํ ์คํธํ๊ณ ์๊ธฐ ๋๋ฌธ์ ์ฌ๋ฐ๋ฅธ ๋์์ ๊ฒ์ฆํ๊ณ ์์ต๋๋ค. ๊ทธ๋์ Home์ ๋ํ ํ์ด์ง์ ํตํฉํ ์คํธ๋ ๋ฐ๋ก ์์ฑ๋์ง ์์๋๋ฐ์. ๋ง์ฝ E2Eํ ์คํธ๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ์ข ๋ ํตํฉํ ์คํธ์์ ํด๋น ๋์์ ๊ฒ์ฆํ๊ณ ์ถ๋ค๋ฉด Home์ ๋ํ ํตํฉํ ์คํธ๋ฅผ ์์ฑํด์ ์ค์ ๊ฒฐ๊ณผ๋ฅผ ๊ฒ์ฆํด๋ณด๋ฉด ๋ง์ํด์ฃผ์ ์ฌ์ฉ์ ๊ด์ ์ ํ ์คํธ๊ฐ ๋ ๊ฒ ๊ฐ์ต๋๋ค.! ๋ง์ฝ ํ ์์ฒด๋ฅผ ๋ฐํํ๋ค๋ฉด ํ ์ ์ฌ์ฉํ๋ ์ปดํฌ๋ํธ ๋ด์์ ํ ์ ๋ํ ๊ฒ์ฆ์ด ์ฌ๋ผ์ง๊ฒ ๋๋๋ฐ์. API ์๋ต๋ง์ ๋ชจํนํ๊ฒ ๋๋ฉด ํด๋น ํ ์ ๋ํ ๋์์ ํจ๊ป ๊ฒ์ฆํ ์ ์๊ธฐ ๋๋ฌธ์ ๋ ํ ์คํธ์ ๊ฒ์ฆ ๋ฒ์๊ฐ ๋ฌ๋ผ์ง๊ฒ ๋ฉ๋๋ค. ๋ฐ๋ผ์, ํ ์คํธ ๋ชฉ์ ์ ๋ง๊ฒ ํ๋จํด์ ์งํํ๋ฉด ๋ ๊ฒ ๊ฐ์ต๋๋ค.
- 0
- 2
- 162
Q&A
unit-test-example ๋ธ๋์น์์ 'Test result not found.' ๊ฐ ๋น๋๋ค...
์๋ ํ์ธ์! ๋ฌธ์ ํด๊ฒฐ์ ์ ๋ณด๊ฐ ์กฐ๊ธ ๋ถ์กฑํ ๊ฒ ๊ฐ์๋ฐ์.์์กด์ ์ด๋ป๊ฒ ์ค์นํ๊ณ ์คํํ์ จ๋์ง ์ ๋ณด๋ฅผ ์กฐ๊ธ ๋ ์ฃผ์ค ์ ์์๊น์?
- 0
- 1
- 102