我尝试使用Jest测试Ag-grid组件:
describe('DataGridInternal Component Tests', () => {
it('includes class names on DataGrid', () => {
const component = mount(<DataGridInternal {...SAMPLE_PROPS} />);
expect(component.find('[data-test="ccfk-datagrid"]')).toHaveClassName('csf-material-grid');
});
});
我得到一个例外:
TypeError: this.btFirst.insertAdjacentElement is not a function
来自
node_modules/ag-grid-community/dist/lib/rowModels/pagination/paginationComp.js:49
一旦我在这行中注明,测试就可以通过
有什么不正确的主意吗?
我正在使用:
"ag-grid-community": "21.2.2",
"ag-grid-react": "21.2.2",
"enzyme": "3.10.0",
"enzyme-adapter-react-16": "1.14.0",
"enzyme-to-json": "3.3.5"
答案 0 :(得分:3)
解决方案:
如果您将jest用于测试运行程序,则需要通过安装jest-environment-jsdom-十四,然后将以下内容添加到jest.config中来进行升级
testEnvironment: 'jest-environment-jsdom-fourteen'
和
如果您使用的是create-react-app,
npm i -D jest-environment-jsdom-fourteen
然后在您的脚本中:
"test": "react-scripts test --env=jsdom-fourteen",
答案 1 :(得分:0)
您能显示出您是如何精确地要求/导入ag-grid并定义您的gridOptions结构吗? 我假设您正在测试现有表或您在HTML中定义的表?
答案 2 :(得分:0)