반응형
인수 반환이 정의되지 않은 Vuex getters를 테스트하는 것은 함수가 아닙니다.
Karma와 Chai를 셋업하고 테스트 게터스의 예를 따르려고 합니다.
여기 fruits.js 스토어의 코드가 있습니다.
// fruits.js store
import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex)
export const fruits = new Vuex.Store({
state: {
fruits: [
{id: 1, name: 'Apple'},
{id: 2, name: 'Banana'},
{id: 3, name: 'Orange'}
]
},
mutations: {
},
actions: {
},
getters: {
getFruitById (state, {id}) {
return state.fruits.find(fruit => {
return fruit.id === id
})
}
}
})
fruit.spec.js 파일입니다.
// fruit.spec.js
import { expect } from 'chai'
import { fruits } from '../../../../src/store/fruits'
describe('getters', () => {
it('getFruitById()', () => {
// mock data
const state = {
fruits: [
{id: 1, name: 'Apricot'},
{id: 2, name: 'Kiwi'},
{id: 3, name: 'Watermelon'}
]
}
const id = 1
// find fruit by id
const result = fruits.getters.getFruitById(state, {id})
expect(result).to.deep.equal([
{
id: 1,
name: 'Apricot'
}
])
})
})
실행 시fruit.spec.js
테스트 결과 반환
undefined is not a function
온라인.const result = fruits.getters.getFruitById(state, {id})
문제는 내 모의 상태가fruit.spec.js
전달되지 않음fruit.js
어떻게 하면 시험에 합격할 수 있을까요?
getter를 유닛테스트하는 경우는, 개별적으로 export 할 필요가 있습니다.
// fruits.js store
import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex)
export const getters = {
getFruitById (state, {id}) {
return state.fruits.find(fruit => {
return fruit.id === id
})
}
}
export const fruits = new Vuex.Store({
state: {
fruits: [
{id: 1, name: 'Apple'},
{id: 2, name: 'Banana'},
{id: 3, name: 'Orange'}
]
},
mutations: {
},
actions: {
},
getters,
})
그런 다음 장치 테스트에서 다음과 같이 액세스할 수 있습니다.
import { getters } from '../../../../src/store/fruits'
// ...
const result = getters.getFruitById(state, {id})
// ....
언급URL : https://stackoverflow.com/questions/48942876/testing-vuex-getters-with-argument-returns-undefined-is-not-a-function
반응형
'programing' 카테고리의 다른 글
C 조건부 프리프로세서 디렉티브 문자열 비교 방법 (0) | 2022.08.09 |
---|---|
"npm run dev" 명령어를 사용하지 않고 서버에서 Vue.js 프로젝트를 실행하시겠습니까? (0) | 2022.08.09 |
Bool은 토종 C형인가요? (0) | 2022.08.09 |
Vue mapActions 구성 방법 (0) | 2022.08.09 |
Enum을 사용한 싱글턴 구현(Java) (0) | 2022.08.09 |