【问题标题】:React-native test cases failReact-native 测试用例失败
【发布时间】:2017-02-07 09:31:46
【问题描述】:

我正在尝试编写一些简单的 react-native 应用程序的测试用例,但我的测试用例总是失败并出现错误,显然找不到 UIManager.createView

组件

class LiveTab extends Component {
    constructor(props) {
        ...
    }
    render() {
        return (
            <ListView
                dataSource={ ... }
                renderRow={ ... }
                />
        );
    }
}

LiveTab.propTypes = { ... };

export default LiveTab;

测试用例

...
import renderer from 'react-test-renderer';

it('LiveTab renders correctly', () => {
    const tree = renderer.create(
        <LiveTab ... />
    );
});

错误

FAIL tests/components/LiveTab.js (14.766s) ● LiveTab 渲染 正确

TypeError: UIManager.createView 不是函数

在 Constructor.mountComponent (node_modules/react-native/Libraries/Renderer/src/renderers/native/ReactNativeBase 组件.js:201:11)

在 Object.mountComponent (node_modules/react-test-renderer/lib/ReactReconciler.js:46:35) 在 ReactCompositeComponentWrapper.performInitialMount (node_modules/react-test-renderer/lib/ReactCompositeCompon ent.js:371:34) 在 ReactCompositeComponentWrapper.mountComponent (node_modules/react-test-renderer/lib/ReactCompositeComponent.j 年代:258:21) 在 Object.mountComponent (node_modules/react-test-renderer/lib/ReactReconciler.js:46:35) 在 ReactTestComponent.mountChildren (node_modules/react-test-renderer/lib/ReactMultiChild.js:238:44) 在 ReactTestComponent.mountComponent (node_modules/react-test-renderer/lib/ReactTestRenderer.js:62:10) 在 Object.mountComponent (node_modules/react-test-renderer/lib/ReactReconciler.js:46:35) 在 ReactCompositeComponentWrapper.performInitialMount (node_modules/react-test-renderer/lib/ReactCompositeCompon ent.js:371:34) 在 ReactCompositeComponentWrapper.mountComponent (node_modules/react-test-renderer/lib/ReactCompositeComponent.j s:258:21)

我无法弄清楚这么简单的组件有什么问题。

【问题讨论】:

    标签: javascript reactjs react-native jestjs testcase


    【解决方案1】:

    我遇到了同样的错误,因为我导入到我的组件中的模块之一没有被 babel 转换,所以它需要在 package.json 中列入白名单

    查看示例:

    https://facebook.github.io/jest/docs/tutorial-react-native.html#transformignorepatterns-customization

    【讨论】:

      猜你喜欢
      • 2022-10-20
      • 2018-12-17
      • 1970-01-01
      • 1970-01-01
      • 2019-07-24
      • 1970-01-01
      • 1970-01-01
      • 2017-12-16
      相关资源
      最近更新 更多