목록Programming (215)
른록노트
Deque 참고링크 Module java.base Package java.util Interface Deque Type Parameters: E - the type of elements held in this deque All Superinterfaces: Collection, Iterable, Queue All Known Subinterfaces: BlockingDeque All Known Implementing Classes: ArrayDeque, ConcurrentLinkedDeque, LinkedBlockingDeque, LinkedList public interface Deque extends Queue설명 양쪽 끝에서 요소 삽입 및 제거를 지원하는 선형 컬렉션입니다. deque 라는 이름은 "..
supertest superagent를 통해 HTTP assertion이 더 쉬워졌습니다. about supertest의 동기는 HTTP 테스트를 위한 high-level 추상화를 제공하는 동시에 superagent에서 제공하는 lower-level API을 사용할 수 있도록 합니다. 설치방법 npm install supertest --save-dev 사용법 일단 설치되면 이제 단순히 require('supertest');를 호출하여 참조할 수 있습니다. http.Server 또는 함수를 request()에 전달할 수 있습니다. 서버가 아직 connections을 listening 하지 않는 경우 임시 포트에 바인딩되므로 포트를 추적할 필요가 없습니다. SuperTest는 모든 테스트 프레..
Using with MongoDB Global Setup/Teardown 및 Async Test Environment API를 사용하여 Jest는 MongoDB와 원활하게 작동할 수 있습니다. 1. 먼저 @shelf/jest-mongodb를 설치하세요 Jest MongoDB는 MongoDB를 사용하여 테스트를 실행하는 데 필요한 모든 구성을 제공합니다. npm i @shelf/jest-mongodb --save-dev2. config를 수정하세요 jest.config.js` --- module.exports = { preset: '@shelf/jest-mongodb', };jest-mongodb-config.js --- module.exports = { mongodbMemoryServerO..
Mock Functions Mock 함수를 사용하면 함수의 실제 구현을 지우고, 함수에 대한 호출(및 해당 호출에서 전달된 매개변수)을 캡처하고, new로 인스턴스화될 때 생성자 함수의 인스턴스를 캡처하고, 반환 값의 테스트 시간 구성을 허용하여 코드 간의 링크를 테스트할 수 있습니다. Mock 함수에는 두 가지 방법이 있습니다. 테스트 코드에서 사용할 Mock 함수를 생성하거나 모듈 종속성을 재정의하기 위해 manual mock을 작성하는 것입니다. Using a mock function 제공된 배열의 각 항목에 대한 콜백을 호출하는 forEach 함수의 구현을 테스트한다고 가정해 보겠습니다. 이 함수를 테스트하기 위해 mock 함수를 사용하고 mock 상태를 검사하여 예상대로 콜백이 호출되는지 확인할..
Setup and Teardown 테스트를 작성하는 동안 테스트를 실행하기 전에 수행해야 하는 설정 작업과 테스트 실행 후에 수행해야 하는 마무리 작업이 있는 경우가 많습니다. Jest는 이를 처리하기 위한 도우미 기능을 제공합니다. Repeating Setup For Many Tests 많은 테스트를 위해 반복적으로 수행해야 하는 작업이 있는 경우 beforeEach 및 afterEach를 사용할 수 있습니다. 각 테스트가 시작 또는 종료 되기전에 실행합니다. 예를 들어 여러 테스트가 도시 데이터베이스와 상호 작용한다고 가정해 보겠습니다. 이러한 각 테스트 전에 호출해야 하는 initializeCityDatabase() 메서드와 이러한 각 테스트 후에 호출해야 하는 clearCityDatabase() ..
Testing Asynchronous Code JavaScript에서는 코드가 비동기적으로 실행되는 것이 일반적입니다. 비동기식으로 실행되는 코드가 있는 경우 Jest는 테스트 중인 코드가 완료된 시점을 알아야 다른 테스트로 넘어갈 수 있습니다. Jest는 이것을 처리하는 몇 가지 방법이 있습니다. Callbacks The most common asynchronous pattern is callbacks. 가장 일반적인 비동기 패턴은 콜백입니다. 예를 들어 일부 데이터를 가져오고 완료되면 콜백(data)을 호출하는 fetchData(callback) 함수가 있다고 가정해 보겠습니다. 이 반환된 데이터가 'hello' 문자열인지 테스트하려고 합니다. 기본적으로 Jest 테스트는 실행 끝에 도..
Using Matchers Jest는 "matchers"를 사용하여 다양한 방식으로 값을 테스트할 수 있습니다. 이 문서는 일반적으로 사용되는 몇 가지 matcher를 소개합니다. 전체 목록은 Expect API 문서를 참조하세요. Common Matchers 값을 테스트하는 가장 간단한 방법은 정확히 같음을 사용하는 것입니다. test('two plus two is four', () => { expect(2 + 2).toBe(4); }); 이 코드에서, expect(2+2)는 "excepctaion" 이라는 object를 반환합니다. 일반적으로 call matchers를 제외하고 이러한 expectation object로 많은 작업을 수행하지 않습니다. 이 코드에 있는 .toBe(4)는 matcher입..
시작하기 설치방법 npm install --save-dev jest (당시 다운로드 버전 "jest": "^27.3.1") 설치가 다 되면 package.json에 아래 문구 추가 "scripts": { "test": "jest", ... }만약 eslint를 사용한다면 npm install --save-dev eslint-plugin-jest .eslintrc.json 파일에 "env": { "jest": true } 추가 테스트 간단하게 더하기 기능을 하는 sum function 테스트 케이스 추가 test 폴더를 만들고 test 폴더에 sum.js 파일을 만들기 function sum(a, b) { return a + b; } module.exports = sum;test 폴더에 sum.test.j..