小编and*_*ngs的帖子

如何测试使用Jest导入自定义本机模块的React Native组件?

这是一个简单的组件,我试图使用React Native 0.39和Jest 18进行测试:

// index.ios.js

import React, { Component } from 'react';
import { AppRegistry, NativeModules, View } from 'react-native';

export default class TestProject extends Component {
  componentDidMount() {
    NativeModules.TestModule.test();
  }

  render() {
    return <View style={{ flex: 1 }} />;
  }
}

AppRegistry.registerComponent('TestProject', () => TestProject);
Run Code Online (Sandbox Code Playgroud)

这是TestModule及其test方法:

// ios/TestProject/TestModule.m

#import "TestModule.h"

@implementation TestModule

RCT_EXPORT_MODULE();

RCT_EXPORT_METHOD(test){
  NSLog(@"This is a test");
}

@end
Run Code Online (Sandbox Code Playgroud)

以下测试失败并显示错误TypeError: Cannot read property 'test' of undefined:

// __tests__/index.ios.js

import 'react-native';
import renderer from …
Run Code Online (Sandbox Code Playgroud)

unit-testing facebook ios jestjs react-native

15
推荐指数
2
解决办法
7469
查看次数

标签 统计

facebook ×1

ios ×1

jestjs ×1

react-native ×1

unit-testing ×1