연습 - 패키지 설치
Tailwind Traders 팀은 여러 Node.js 앱을 개발할 계획입니다. 이 팀에서는 npm 레지스트리에서 자주 사용되는 제로 구성 테스트 프레임워크인 Jest를 발견했습니다. Jest를 설치하고, 몇 가지 테스트를 작성하고, 실행하여 효과를 평가하려고 합니다.
npm CLI를 사용하여 테스트 패키지 추가
문자열에서 주소를 추출하는 코드가 있습니다. 작업은 간단합니다. 테스트 프레임워크를 설치하고 몇 가지 테스트를 작성한 후 실행하면 됩니다.
새 터미널 창(Ctrl + Shift + `)에서 이 연습을 위해 파일이 있는 폴더로 변경합니다.
cd node-dependencies/5-exercise-dependency
폴더의 콘텐츠를 봅니다.
ls -R
이 폴더에는 두 개의 JavaScript 파일이 표시됩니다.
-| address-parser.js -| package.json
address-parser.js 파일을 엽니다. 다음 파일과 같이 표시됩니다.
exports.addressParser = function parseOrder(order) { const match = order.match(/order:\s(?<order>\w+\s\w+).*address:\s(?<address>\w+\s\w+\s\w+).*payment info:\s(?<payment>\w+)/) return match.groups; }
이 함수는 문자열을 사용하며 고객이 주문하는 항목, 항목이 제공되어야 하는 위치, 결제 방법에 관한 정보를 구문 분석합니다. Jest를 추가하고 함수에 대한 몇 가지 테스트를 작성하겠습니다.
address-parser.js
파일을 닫습니다.다음 명령을 실행하여 Jest 패키지를 설치합니다.
npm install jest --save-dev
Jest 패키지가 설치된 후
package.json
파일을 열고devDependencies
섹션을 찾습니다.jest
속성의 값이 의미 체계 버전 번호인 다음 예와 같은 항목이 표시됩니다."devDependencies": { "jest": "<number.number.number>" }
package.json 파일에서
scripts
섹션을 찾습니다. 기존test
작업 항목을 다음 코드로 바꿉니다."test": "jest"
변경 내용을 저장하고 package.json 파일을 닫습니다.
터미널에서 __tests__라는 새 하위 폴더를 만듭니다.
mkdir __tests__
참고 항목
__tests__ 폴더를 만들 때 이중 밑줄을 사용해야 합니다. tests 폴더는 테스트 프레임워크인 Jest에서 사용하는 명명 규칙입니다. Jest는 tests 폴더에 있는 모든 파일(또는 이름에 .test. 또는 .spec.이 포함된 파일)을 테스트 파일로 자동 인식하고 테스트를 실행할 때 포함합니다. 이 규칙은 프로젝트에서 테스트 파일을 정리하고 쉽게 식별할 수 있도록 유지하는 데 도움이 됩니다.
__tests__ 폴더에서 address-parser.spec.js라는 파일을 만들고 파일에 다음 콘텐츠를 추가합니다.
const { addressParser } = require('../address-parser'); describe('Address Parser', () => { test('should parse correctly', () => { expect(addressParser("I want to to order: 3 books to address: 112 street city here is my payment info: cardnumber") ).toEqual({ order: "3 books", address: "112 street city", payment: "cardnumber", }); }); });
테스트 스크립트:
- address-parser.js 함수의 구문 분석 기능을 확인합니다.
- 함수가 필요한 정보를 올바르게 구문 분석할 수 있는지 확인합니다.
변경 내용을 저장하고 파일을 닫습니다.
이제 프로젝트 구조가 다음 예제와 같이 표시됩니다.
-| package.json -| address-parser.js -| __tests__/ ---| address-parser.js
터미널에서 다음 명령을 입력하여 테스트를 실행합니다.
npm run test
다음과 같은 출력이 표시됩니다.
PASS __tests__/address-parser.js Address parser ✓ should parse correctly (2 ms) Test Suites: 1 passed, 1 total Tests: 1 passed, 1 total Snapshots: 0 total Time: 0.4 s Ran all test suites.
성공했습니다. 테스트에 통과하며 종속성을 설치하여 테스트를 추가했습니다.
축하합니다. Jest를 종속성으로 성공적으로 설치하고, 애플리케이션 코드에 대한 테스트를 작성하고, 테스트를 실행했습니다. Jest는 예상대로 작동하는 것 같으며 Tailwind Traders는 이 평가에 만족할 것 같습니다.