Questions tagged «xctest»

XCTest是Apple提供的框架,用于实现单元测试功能。它适用于iOS 7和所有版本的OSX。

15
无法加载XCTest的基础模块
我正在快速处理Xcode,默认情况下,它会创建一个引用XCTest的测试文件。 当我将目标成员资格设置为主项目时,会导致此错误 无法加载XCTest的基础模块 如果未设置此目标成员身份,则测试将正常运行,并且一切正常。 PS:我是新手,可能是一个愚蠢的问题(请启发我)
180 swift  xcode  xctest 

27
在Xcode单元测试中使用@testable时,“没有这样的模块”
我最近更新到了Xcode 7 beta5。我尝试向早期项目中添加单元测试,但是我在行上收到错误消息“ No such module [myModuleName]” @testable import myModuleName。 我试过了 使用OptionClean Build Folder 清理项目 检查“生成选项”中的“启用可测试性”(调试)是否设置为“是” 删除测试目标,然后重新添加iOS Unit测试包 这些都不适合这个项目(但是我已经通过测试可以在另一个项目中工作)。其他人有这个问题并解决吗?

14
使用Cocoapods的Xcode单元测试
最近几天,我一直在用这种方法撞墙,但是尽管进行了多次Google / SO / Github搜索,但我找不到解决所遇到问题的方法! 我要做的就是为我的应用程序创建一些单元测试,以利用Firebase Pod。 我正在使用Xcode 7.3.1和Cocoapods 1.0.1。更新: Xcode 8.0仍然存在问题 使用此Podfile: platform :ios, '9.0' use_frameworks! inhibit_all_warnings! target 'MyApp' do pod 'Firebase' pod 'Firebase/Auth' pod 'Firebase/Database' pod 'Firebase/Storage' target 'MyAppTests' do inherit! :search_paths end end 在我的XCTest类中,我得到了 缺少必需的模块“ Firebase” 错误于 @testable import MyApp 或者使用此Podfile: platform :ios, '9.0' use_frameworks! inhibit_all_warnings! def …

10
在Xcode 6中建立的旧项目中找不到XCTest / XCTest.h
我有一些项目正在尝试使用Xcode 6 Beta 2构建。这些项目都具有某种类型的使用XCTest的库(Kiwi / XCTest和Specta),它们无法在Xcode 6中构建,因为XCTest / XCTest.h无法被发现。 fatal error: 'XCTest/XCTest.h' file not found #import <XCTest/XCTest.h> 我注意到XCTest.framework不再位于“使用二进制文件链接库”构建阶段列表中,但这很好,因为当我用Xcode 6创建一个新项目时,它似乎自动链接了该库。 也许有些相关性,我所有需要XCTest的依赖项都是通过Cocoapods引入的。 有什么我不知道需要更新项目的东西吗?
82 ios  xcode  cocoapods  xctest 

15
如何让应用程序知道它是否在纯Swift项目中运行单元测试?
在Xcode 6.1中运行测试时,一件令人讨厌的事情是,整个应用程序必须运行并启动其情节提要和根视图控制器。在我的应用程序中,这会运行一些获取API数据的服务器调用。但是,我不希望该应用在运行其测试时执行此操作。 随着预处理器宏的消失,让我的项目知道它是运行测试而不是普通启动时最好的呢?我通常使用command+U并在漫游器上运行它们。 伪代码: // Appdelegate.swift if runningTests() { return } else { // do ordinary api calls }
81 ios  swift  xcode  xctest 

8
NSURL到带有XCTest的测试包中的文件路径
我正在尝试使用TDD和新的XCTest框架编写iOS应用。我的方法之一是从Internet检索文件(使用NSURL对象)并将其存储在用户的文档中。该方法的签名类似于: - (void) fetchAndStoreImage:(NSURL *)imageUrl 我正在尝试为此方法编写测试,以确保在没有互联网连接的情况下它不会失败。我的方法(来自上一个问题)是使用NSURL调用该方法来对本地文件系统中的图像进行调用。 当创建一个启用了单元测试的新项目时,Tests目录具有一个名为“ Supporting Files”的子目录。我想这就是我的测试图像所在的位置。我的问题是如何获取指向该目录中图像的NSURL对象,因为我不希望将测试图像与应用程序捆绑在一起。任何帮助表示赞赏。
77 ios  tdd  nsbundle  xctest 

3
XCTAssertEqual无法比较两个字符串值?
我添加了一个简单的单元测试来测试我的字符串扩展。但是失败了。我在这里做错了什么? 据我所知XCTAssertEqual,测试价值而不是对象本身? 第三行顺便说一句,说字符串是相等的,但是XCTAssertEqual说不一样。 - (void) testInitialsFromFullname { NSString *firstNickName = @"Mike Kain"; NSString *expectedResult = @"MK"; NSLog(@"Equal:%@", [[firstNickName initialsFromString] isEqualToString:expectedResult] ? @"YES" : @"NO"); XCTAssertEqual(expectedResult, [firstNickName initialsFromString], @"Strings are not equal %@ %@", expectedResult, [firstNickName initialsFromString]); }


7
什么时候需要将应用程序源包含在测试目标中?
在一个新项目中,我有这个简单的测试 #import <XCTest/XCTest.h> #import "ViewController.h" @interface ViewControllerTests : XCTestCase @end @implementation ViewControllerTests - (void)testExample { // Using a class that is not in the test target. ViewController * viewController = [[ViewController alloc] init]; XCTAssertNotNil(viewController, @""); } @end ViewController.h不是测试目标的一部分,但是它可以编译并运行测试而不会出现任何问题。 我认为这是因为应用程序首先(作为依赖项)构建,然后是测试。链接器然后找出ViewController类是什么。 但是,在具有完全相同的测试和ViewController文件的旧项目中,构建在链接器阶段失败: Undefined symbols for architecture i386: "_OBJC_CLASS_$_ViewController", referenced from: objc-class-ref in …

5
Xcode 11 XCUITest无法获取匹配的快照:获取主窗口kAXErrorServerNotFound时出错
在Xcode 11中构建我的应用并运行我的XCUITests套件后,由于以下原因,我遇到了许多随机失败。 无法获取匹配的快照:获取主窗口kAXErrorServerNotFound时出错 无论我增加超时多长时间,问题都会间歇性地弹出。Snapshotting UI层次结构似乎有问题。我们的测试始终在Xcode 10中通过。 我已经重新安装了Xcode。删除了所有模拟器。清除派生数据。修改的超时。从Xcode 11.1升级到Xcode 11.2.1。 谢谢!
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.