저는 효소 반응 네이티브 플랫리스트로 테스트하려고합니다. 나는 올바른 기능 목록이 마지막에 도달 할 때 호출되어 있는지 확인하려면 :시험은 효소가있는 네이티브 플랫리스트에 반응합니다
import { listIsAtTheEnd } from "./actions";
import { mount } from "enzyme";
jest.mock("./actions");
describe("Main page",() => {
if("Calls listIsAtTheEnd when FlatList reaches the end",() => {
var app = mount(<App />);
var container = app.find("FlatListContainer");
var fList = container.childAt(0);
fList.instance().scrollToEnd();
expect(listIsAtTheEnd.mock.calls).toHaveLength(1)
})
})
을하지만 이것은 내가 갖는 것입니다 : 내가 잘못 뭐하는 거지
TypeError: this._scrollRef.scrollTo is not a function
at VirtualizedList.scrollToEnd (node_modules/react-native/Libraries/Lists/VirtualizedList.js:219:17)
at FlatList.scrollToEnd (node_modules/react-native/Libraries/Lists/FlatList.js:544:141)
at Object.<anonymous> (src/components/forumPage/__tests__/forumPageTests.js:81:21)
at tryCallTwo (node_modules/promise/lib/core.js:45:5)
at doResolve (node_modules/promise/lib/core.js:200:13)
at new Promise (node_modules/promise/lib/core.js:66:3)
? 이것을 테스트하는 올바른 방법은 무엇입니까?
동의. 네이티브 컴포넌트를 조롱하는 데 도움을주기 위해'react-native-mock-render'로'효소'를 사용하려고 시도했지만 조롱 된 컴포넌트가 주장이나 스냅 샷을 위해 충분히 완전하지 않았고'jest'와'react- 테스트 렌더러 '. 그것은 움직이는 표적입니다. React Native는 'FlatList'와 같은 새로운 컨트롤을 얻게되며, 적절한 테스트를 수행하려면 제대로 조롱해야합니다. 쉬운 일은 아닙니다. –