在react-native doc,它说要检查UIExploreIntegrationTest。它似乎需要在Xcode上进行一些设置,因为它使用Objective C代码(* .m)。我是Obj-C测试新手..我可以知道如何设置Xcode的集成测试吗?如何设置反应原生集成测试
3
A
回答
1
随着一些猜测,我能够确定几个步骤来获得在iOS上运行的集成测试。不过,我仍然在弄清楚如何让Android集成测试起作用。
继续前进,从RN github上复制IntegrationTests.js并称为Tests.js
将新的JS文件这两个文件在你的项目的根。然后更改IntegrationTests.js,并将它们的所有需求更改为刚刚创建的文件require('./测试')所需的一条语句
以下是Tests.js文件的基本实现看起来像:
'use strict';
var React = require('react');
var ReactNative = require('react-native');
var {
Text,
View,
} = ReactNative;
var { TestModule } = ReactNative.NativeModules;
var Tests = React.createClass({
shouldResolve: false,
shouldReject: false,
propTypes: {
RunSampleCall: React.PropTypes.bool
},
getInitialState() {
return {
done: false,
};
},
componentDidMount() {
if(this.props.TestName === "SomeTest"){
Promise.all([this.SomeTest()]).then(()=>
{
TestModule.markTestPassed(this.shouldResolve);
});
return;
}
},
async SomeTest(){
var one = 1;
var two = 2;
var three = one + two;
if(three === 3){
this.shouldResolve = true;
}else{
this.shouldResolve = false;
}
}
render() : ReactElement<any> {
return <View />;
}
});
Tests.displayName = 'Tests';
module.exports = Tests;
这是一个基本的实现您的Tests.m文件(里面的Xcode)
#import <UIKit/UIKit.h>
#import <XCTest/XCTest.h>
#import <RCTTest/RCTTestRunner.h>
#import "RCTAssert.h"
#define RCT_TEST(name) \
- (void)test##name \
{ \
[_runner runTest:_cmd module:@#name]; \
}
@interface IntegrationTests : XCTestCase
@end
@implementation IntegrationTests
{
RCTTestRunner *_runner;
}
- (void)setUp
{
_runner = RCTInitRunnerForApp(@"IntegrationTests", nil);
}
- (void)test_SomeTest
{
[_runner runTest:_cmd
module:@"Tests"
initialProps:@{@"TestName": @"SomeTest"}
configurationBlock:nil];
}
@end
还需要从node_modules添加RCTTest /反应本地/库/ RCTTest/RCTTest的.xcodeproj到你的库。那么您需要将您添加到链接框架和库中的项目的产品libRCTTest.a拖放到常规选项卡中的主目标。
^^这条道路可能会稍有不正确
然后你需要编辑您的方案,并设置环境变量CI_USE_PACKAGER 1
所以,如果你做所有这些步骤,你应该有一个简单的测试运行,通过。之后应该很容易扩展。对不起,如果我的回答略显草率,请告诉我,如果您有任何问题。
相关问题
- 1. Firebase和反应原生集成
- 2. 反应原生fbsdk设置生成错误
- 3. 设置反应原生背景视频
- 4. 反应原生Android设置细节
- 5. 不能设置取态反应原生
- 6. 如何使用Android Studio调试原生反应原生库?
- 7. 反应原生:如何在Android上设置Image defaultSource
- 8. 如何在原生反应中设置警报
- 9. 如何在反应原生的图像上设置auth头?
- 10. 如何设置谷歌地图反应原生?面对错误
- 11. 弹簧单元/集成测试设置
- 12. 设置封面:生成测试实例
- 13. 如何布置我的集成测试
- 14. 在这里API集成反应原生移动应用程序
- 15. 针对反应原生应用程序的UI测试
- 16. XCUI测试:如何测试集发生
- 17. 集成测试 - 您测试什么级别以及如何设置?
- 18. React Native:如何设置自动化集成测试?
- 19. 如何为XML方法设置Rails集成测试?
- 20. 集成阵营原生成exsting应用
- 21. 如何将monkeyrunner集成测试与emma覆盖测试集成?
- 22. 如何做集成测试?
- 23. 设置Jenkins连续集成和Selenium Web应用程序测试
- 24. 如何设置yeoman测试读取package.json的子生成器
- 25. 如何设计屏幕反应原生兼容所有设备
- 26. 将滑块设置为初始位置 - 反应原生
- 27. 如何在集成测试的默认url选项中设置区域设置
- 28. 反应原生调试性能问题
- 29. 反应原生调试器太慢
- 30. 如何生成测试