小编Rob*_*Rob的帖子

测试是否在视图控制器方法中调用performSegueWithIdentifier

我正在浏览一个应用程序并添加单元测试.该应用程序使用故事板编写,并支持iOS 6.1及更高版本.

我已经能够毫无问题地测试所有常用的返回方法.但是我目前难以接受我想要执行的某项测试:

基本上我有一个方法,让我们称之为doLogin:

- (IBAction)doLogin:(UIButton *)sender {

// Some logic here

if ( //certain criteria to meet) {
    variable = x; // important variable set here
    [self performSegueWithIdentifier:@"memorableWord" sender:sender];
} else {
    // handler error here
}
Run Code Online (Sandbox Code Playgroud)

所以我想测试是否调用segue并设置变量,或者加载MemorableWord视图控制器并且其中的变量是正确的.在doLogin方法中设置的变量将传递到prepareForSegue方法中的memorableWord segues的目标视图控制器.

我有OCMock设置和工作,我也使用XCTest作为我的单元测试框架.有没有人能够进行单元测试以涵盖这种情况?

对于这个领域的信息来说,Google和SO似乎相当简陋.很多关于简单基本测试的例子与iOS测试中更复杂的现实无关.

unit-testing objective-c ocmock ios xctest

7
推荐指数
1
解决办法
3471
查看次数

目标C项目中的Xcode 8.3 Swift版本错误(SWIFT_VERSION)

我在纯Objective C项目中使用Xcode 8.3得到了以下错误.

我无法为此找到解决方案,我的构建设置中没有快速参数,我也无法在线找到任何解决方案.

有任何想法吗?这几天前建设很好,我唯一能看到的是xcode更新了.

"Swift Language Version" (SWIFT_VERSION) is required to be configured correctly for targets which use Swift. Use the [Edit > Convert > To Current Swift Syntax…] menu to choose a Swift version or use the Build Settings editor to configure the build setting directly.

objective-c ios swift

7
推荐指数
1
解决办法
4938
查看次数

标签 统计

ios ×2

objective-c ×2

ocmock ×1

swift ×1

unit-testing ×1

xctest ×1