iPhone视图/viewcontroller和委托函数的单元测试用例

iPhone视图/viewcontroller和委托函数的单元测试用例,iphone,cocoa-touch,Iphone,Cocoa Touch,我需要为我的视图编写单元测试用例。通过一些苹果演示项目,我学会了如何为简单函数(包括GCD、Prime等数学逻辑)编写单元测试用例。现在,我需要了解AppDelegate和视图的相同情况 所以我需要知道 1.如何开始为学员、观点编写案例,并学习相同的方法。 2.任何相关的演示项目或学习指南都将不胜感激 请解释以下代码的方法: //test suite #import "SampleUnitTestCase.h" #import "HelloWorldViewController.h" #impo

我需要为我的视图编写单元测试用例。通过一些苹果演示项目,我学会了如何为简单函数(包括GCD、Prime等数学逻辑)编写单元测试用例。现在,我需要了解AppDelegate和视图的相同情况

所以我需要知道 1.如何开始为学员、观点编写案例,并学习相同的方法。 2.任何相关的演示项目或学习指南都将不胜感激

请解释以下代码的方法:

//test suite
#import "SampleUnitTestCase.h"
#import "HelloWorldViewController.h"
#import "HelloWorldAppDelegate.h"
@implementation SampleUnitTestCase

- (void) setUp {
    appDelegate    = [[UIApplication sharedApplication] delegate];
    viewController = appDelegate.viewController;

}

- (void) testAppDelegate {
    STAssertNotNil(appDelegate, @"Cannot find the application delegate");
}
我得到了这个错误

“((appDelegate)!=nil)”应为 符合事实的找不到应用程序 SampleUnitTestCase.m中的委托”

“命令/bin/sh失败,退出代码为 1“


没有足够的时间开始提供代码,但我使用的两个工具包是GHUnit和OCMock.GHUnit,因为它在模拟器和设备上运行,而as(上次我查看)SEN工具包只在xcode.OCMock中运行,因为它允许您模拟其他类。例如,您可以模拟框架类或控制器等


阅读GHUnit和OCMock网站,您将更好地了解它们是如何工作的,以及它们能为您做些什么。

我并没有看到这行“OCMock”,因为它允许您模拟其他类。例如,你可以模拟一个框架类或控制器等。”你能用一种简单的方式解释一下吗。阅读一下模拟对象及其在单元测试中的使用。
//HelloWorldViewController.m file

#import "HelloWorldViewController.h"

@implementation HelloWorldViewController


- (IBAction)submitYourNamw 
{

    IblUserTypedName.text = txtUserName.text;
    //NSLog(IblUserTypedName.text);
}

......

@end