Javascript 如何使用CreateReact应用程序忽略Jest测试中生成的中继查询文件?
我使用CreateReact应用程序和添加的中继创建了一个React应用程序。我想用Jest测试我的组件,但是中继编译器生成Jest读取为测试文件的文件。我不能忽略这些文件,因为我正在使用CreateReact应用程序 例如,测试可能如下所示:Javascript 如何使用CreateReact应用程序忽略Jest测试中生成的中继查询文件?,javascript,reactjs,jestjs,create-react-app,relay,Javascript,Reactjs,Jestjs,Create React App,Relay,我使用CreateReact应用程序和添加的中继创建了一个React应用程序。我想用Jest测试我的组件,但是中继编译器生成Jest读取为测试文件的文件。我不能忽略这些文件,因为我正在使用CreateReact应用程序 例如,测试可能如下所示: //src/components/MyComponent/\uuu测试\uuuuu/MyComponent.test.js 从“React”导入React; 从“babel插件中继/宏”导入graphql; 从“react relay”导入{QueryR
//src/components/MyComponent/\uuu测试\uuuuu/MyComponent.test.js
从“React”导入React;
从“babel插件中继/宏”导入graphql;
从“react relay”导入{QueryRenderer};
从“反应测试渲染器”导入渲染器;
从“中继测试utils”导入{MockPayloadGenerator,createMockEnvironment};
从“../MyComponent”导入MyComponent;
const query=graphql`
查询MyComponentQuery@relay\u test\u操作{
myComponent:节点(id:“测试id”){
…MyComponent\u MyComponent
}
}
`;
常量rootRender=({props})=>;
它('渲染而不崩溃',()=>{
const-environment=createMockEnvironment();
const component=renderer.create(
);
environment.mock.resolveMostRecentOperation((操作)=>
MockPayloadGenerator.generate(操作));
expect(component.toJSON()).toMatchSnapshot();
});
中继编译器将为查询生成一个文件src/components/MyComponent/\uuuuuu tests\uuuu/\uuuu generated\uuuuu/MyComponentQuery.graphql.js
运行测试时,我得到:
FAIL src/components/MyComponent/__tests__/__generated__/MyComponentQuery.graphql.js
● Test suite failed to run
Your test suite must contain at least one test.
如何让Jest忽略生成的查询文件?有没有一种方法可以在不从create react app弹出的情况下执行此操作?尝试将其添加到您的package.json中
...,
"jest": {
"testPathIgnorePatterns": [
".graphql.js"
]
},
...
create react应用程序不支持
testPathIgnorePatterns
oh ok。也许你可以重命名你的\uuuuu tests\uuuuu
文件夹。Jest将查找任何具有以下任何流行命名约定的测试文件:在\uuuu tests\uuuu
文件夹中具有.js后缀的文件。后缀为.test.js的文件。后缀为.spec.js的文件。