【jest】기초 RSpec과 비교 모의 함수에 대해서
소개
jest를 배우기 시작했기 때문에 쉽게 정리합니다.
주로 공식 문서의 초반만이 됩니다.
htps : // / stjs. 이오/엔/
jest
test('1+1は2', () => {
expect(1+1).toBe(2);
});
RSpec
RSpec.describe '足し算' do
it '1+1は2' do
expect(1 + 1).to eq 2
end
end
jest로 모의 함수 만들기
function forEach(items, callback) {
for (let index = 0; index < items.length; index++) {
callback(items[index]);
}
}
↑ 이런, 배열과 콜백을 인수에 받는 함수를 정의해,
const mockCallback = jest.fn(x => 42 + x);
forEach([0, 1], mockCallback);
받은 수치에 42를 더하는 모의 함수를 jest.fn
로 정의.
mockCallback에 대입.
이제 jest가 준비하는 메타 정보를 가지고있는 더미 함수를 만들 수 있습니다.
여기에서 테스트를 작성하여 콜백에 적절하게 매개 변수가 있는지, 실행 결과를 반환 할 수 있는지 확인합니다.
//mockCallbackが呼ばれる回数は2回
expect(mockCallback.mock.calls.length).toBe(2);
//1回目にモック関数が呼ばれたときの引数の1番目は’0’
expect(mockCallback.mock.calls[0][0]).toBe(0);
//2回目にモック関数が呼ばれたときの引数の1番目は’1’
expect(mockCallback.mock.calls[1][0]).toBe(1);
//1回目にモック関数が呼ばれたときのリターンは’42’
expect(mockCallback.mock.results[0].value).toBe(42);
여기까지가 문서에 실려 있는 것입니다.
또한, 예를 들어
//2回目にモック関数が呼ばれたときのリターンは’43’
expect(mockCallback.mock.results[1].value).toBe(43);
이쪽의 테스트도 패스하게 된다.
끝에.
끝까지 읽어 주셔서 감사합니다
전직을 위해 미경험 상태에서 React, Rails 등을 학습하고 있습니다. 계속해서 투고해 나가는 가운데, 그 때문에의 인풋도 필연적으로 늘어나, 성장에 연결될까라고 생각하고 있습니다.
투고의 내용에 잘못되어 있는 곳이나, 덧붙여야 할 곳이 많이 있을까 생각하므로, 지적 받을 수 있으면 다행입니다. 이 기사를 읽어 주셔서 감사합니다.
Reference
이 문제에 관하여(【jest】기초 RSpec과 비교 모의 함수에 대해서), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/waniwaninowani/items/13971de58db26069495c
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
test('1+1は2', () => {
expect(1+1).toBe(2);
});
RSpec
RSpec.describe '足し算' do
it '1+1は2' do
expect(1 + 1).to eq 2
end
end
jest로 모의 함수 만들기
function forEach(items, callback) {
for (let index = 0; index < items.length; index++) {
callback(items[index]);
}
}
↑ 이런, 배열과 콜백을 인수에 받는 함수를 정의해,
const mockCallback = jest.fn(x => 42 + x);
forEach([0, 1], mockCallback);
받은 수치에 42를 더하는 모의 함수를 jest.fn
로 정의.
mockCallback에 대입.
이제 jest가 준비하는 메타 정보를 가지고있는 더미 함수를 만들 수 있습니다.
여기에서 테스트를 작성하여 콜백에 적절하게 매개 변수가 있는지, 실행 결과를 반환 할 수 있는지 확인합니다.
//mockCallbackが呼ばれる回数は2回
expect(mockCallback.mock.calls.length).toBe(2);
//1回目にモック関数が呼ばれたときの引数の1番目は’0’
expect(mockCallback.mock.calls[0][0]).toBe(0);
//2回目にモック関数が呼ばれたときの引数の1番目は’1’
expect(mockCallback.mock.calls[1][0]).toBe(1);
//1回目にモック関数が呼ばれたときのリターンは’42’
expect(mockCallback.mock.results[0].value).toBe(42);
여기까지가 문서에 실려 있는 것입니다.
또한, 예를 들어
//2回目にモック関数が呼ばれたときのリターンは’43’
expect(mockCallback.mock.results[1].value).toBe(43);
이쪽의 테스트도 패스하게 된다.
끝에.
끝까지 읽어 주셔서 감사합니다
전직을 위해 미경험 상태에서 React, Rails 등을 학습하고 있습니다. 계속해서 투고해 나가는 가운데, 그 때문에의 인풋도 필연적으로 늘어나, 성장에 연결될까라고 생각하고 있습니다.
투고의 내용에 잘못되어 있는 곳이나, 덧붙여야 할 곳이 많이 있을까 생각하므로, 지적 받을 수 있으면 다행입니다. 이 기사를 읽어 주셔서 감사합니다.
Reference
이 문제에 관하여(【jest】기초 RSpec과 비교 모의 함수에 대해서), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/waniwaninowani/items/13971de58db26069495c
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
RSpec.describe '足し算' do
it '1+1は2' do
expect(1 + 1).to eq 2
end
end
function forEach(items, callback) {
for (let index = 0; index < items.length; index++) {
callback(items[index]);
}
}
↑ 이런, 배열과 콜백을 인수에 받는 함수를 정의해,
const mockCallback = jest.fn(x => 42 + x);
forEach([0, 1], mockCallback);
받은 수치에 42를 더하는 모의 함수를
jest.fn
로 정의.mockCallback에 대입.
이제 jest가 준비하는 메타 정보를 가지고있는 더미 함수를 만들 수 있습니다.
여기에서 테스트를 작성하여 콜백에 적절하게 매개 변수가 있는지, 실행 결과를 반환 할 수 있는지 확인합니다.
//mockCallbackが呼ばれる回数は2回
expect(mockCallback.mock.calls.length).toBe(2);
//1回目にモック関数が呼ばれたときの引数の1番目は’0’
expect(mockCallback.mock.calls[0][0]).toBe(0);
//2回目にモック関数が呼ばれたときの引数の1番目は’1’
expect(mockCallback.mock.calls[1][0]).toBe(1);
//1回目にモック関数が呼ばれたときのリターンは’42’
expect(mockCallback.mock.results[0].value).toBe(42);
여기까지가 문서에 실려 있는 것입니다.
또한, 예를 들어
//2回目にモック関数が呼ばれたときのリターンは’43’
expect(mockCallback.mock.results[1].value).toBe(43);
이쪽의 테스트도 패스하게 된다.
끝에.
끝까지 읽어 주셔서 감사합니다
전직을 위해 미경험 상태에서 React, Rails 등을 학습하고 있습니다. 계속해서 투고해 나가는 가운데, 그 때문에의 인풋도 필연적으로 늘어나, 성장에 연결될까라고 생각하고 있습니다.
투고의 내용에 잘못되어 있는 곳이나, 덧붙여야 할 곳이 많이 있을까 생각하므로, 지적 받을 수 있으면 다행입니다. 이 기사를 읽어 주셔서 감사합니다.
Reference
이 문제에 관하여(【jest】기초 RSpec과 비교 모의 함수에 대해서), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/waniwaninowani/items/13971de58db26069495c텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)