使用Xcode进行单元测试 —— 环境配置

转自 http://42.96.169.71/blog/2013/01/15/shi-yong-xcodejin-xing-dan-yuan-ce-shi/

单元测试,是保证产品质量的一个好方法。 移动产品会经常的更新升级,每次版本更新的时候,都需要花费大量的精力来进行测试。 使用单元测试,则可以减少这类重复性的工作。 能够让测试变得更加自动化并且大幅提高测试的效率。 Xcode 为我们集成了单元测试框架,OCUnit。让我们来看看如何在 Xcode 配置单元测试:

  • 首先按照下面的图示,创建一个新的 target:

  • 在接下来的界面中,按照下图选择,然后点击 Next:

  • 填写相应的名称,然后点击 Finish。

  • 这时候,Xcode 中会新增加一个分组,以你刚才输入的名称命名。

在这里面已经帮我们创建好一个单元测试了,上图中的 test.h 和 test.m 就是 Xcode 为我们创建的测试。

  • 现在我们切换一下 Scheme, 切换到我们新创建的单元测试上,逻辑测试只能在模拟器上面运行,所以运行目标要选择模拟器:

现在,按下 Cmd+U 就可以运行单元测试了。

  • 测试运行完成后,你应该会看到这个情况:

测试失败了,失败的原因很容易发现,我们在 testExample 调用了 STFail 这个宏,从它的名字就可以看出来,一旦调用这个宏,测试就会失败。 所以,我们把这个行代码删除掉,这时候 test.m 这个文件的内容应该是这样:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#import "test.h"

@implementation test

- (void)setUp
{
    [super setUp];

    // Set-up code here.
}

- (void)tearDown
{
    // Tear-down code here.

    [super tearDown];
}

- (void)testExample
{

}

@end
  • 修改完代码后,再按下 Cmd+U 重新运行测试,这时候你应该在控制台中看到类似这样的输出:
1
2
3
4
5
6
7
8
9
2013-01-15 22:22:34.234 otest[7914:303] Unknown Device Type. Using UIUserInterfaceIdiomPad based on screen size
Test Suite '/Users/mengxiangping/Library/Developer/Xcode/DerivedData/Test-aexhdmmbnjmqrzbolfjyptdprrif/Build/Products/Debug-iphonesimulator/test.octest(Tests)' started at 2013-01-15 14:22:34 +0000
Test Suite 'test' started at 2013-01-15 14:22:34 +0000
Test Case '-[test testExample]' started.
Test Case '-[test testExample]' passed (0.000 seconds).
Test Suite 'test' finished at 2013-01-15 14:22:34 +0000.
Executed 1 test, with 0 failures (0 unexpected) in 0.000 (0.000) seconds
Test Suite '/Users/spring/Library/Developer/Xcode/DerivedData/Test-aexhdmmbnjmqrzbolfjyptdprrif/Build/Products/Debug-iphonesimulator/test.octest(Tests)' finished at 2013-01-15 14:22:34 +0000.
Executed 1 test, with 0 failures (0 unexpected) in 0.000 (0.001) seconds

最后一行的内容表示测试成功了。到此为止,你的单元测试环境就搭建成功了。接下来就可以写你自己的测试了。


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值