Xcode进行异步任务的单元测试

在 Xcode 6.0 之前实现异步功能的单元测试很困难


现在通过expectation可以很容易实现异步功能的单元测试

// 1. 定义一个"期望" -> 描述异步的需求,只是一个标记而已
let expectation = expectationWithDescription("xxxTask")

// 2. 在异步任务完成后,通过一下方式标记"期望达成"
//expectation.fulfill()

// 3. 等待期望达成
// 参数时间:等待异步操作必须在3s钟之内完成
waitForExpectationsWithTimeout(3.0, handler: { (error) -> Void in
            XCTAssertNil(error)
        })

以下是一个异步任务的单元测试的项目:

https://github.com/kouliang/UnitTesting-Asynctask

时间: 2024-12-14 03:58:30

Xcode进行异步任务的单元测试的相关文章

Xcode 6异步测试<转写>

苹果在2013年推出了一款叫做XCTest的Xcode测试框架,实在是喜闻乐见.由于旧有的测试框架更新停滞数年,一些第三方测试工具和测试框架争相提供了许多新功能和新特性.这次XCode中内置XCTest的决策让开发者们重拾旧爱,并且苹果今年还在Xcode 6中添加了此前漏掉的几项功能,这当中的异步测试功能更是让我欣喜异常. 如果我们的测试项目要执行一个异步任务,它可能会跑在其它的线程里,也可能会跑在主线程的RunLoop里,在这种时候我们应该如何去进行测试呢? 假如现在有一个web请求的功能需要

XCode下的iOS单元测试

XCode 内置了 OCUnit 单元测试框架,但目前最好用的测试框架应该是 GHUnit.通过 GHUnit + OCMock 组合,我们可以在 iOS 下进行较强大的单元测试功能.本文将演示如何在 XCode 4.2 下使用 OCUnit, GHUnit 和 OCMock 进行单元测试. OCUnit 在 XCode 下新建一个 OCUnitProject 工程,选中 Include Unit Tests 选择框, OCUnit 框架则会为我们自动添加 Unit Test 框架代码: XCo

ios 单元测试初识(XCTestCase)

今天偶尔碰到了单元测试的相关内容,就了解了一下,感觉比较好用: 单元测试就是面试中经常问到的TDD(Test Driven Development),xcode4之前测试函数需自己创建,之后xcode5,对单元测试进行了升级, xcode4之前的用法详见:http://www.infoq.com/cn/articles/ios-unit-test-1 xcode5之后的用法,特别是xcode6对单元测试的升级比较令人兴奋, 个人比较佩服下面这个哥们的介绍,比较详细 http://www.it16

iOS单元测试(作用及入门提升)

由于只是一些简单实用的东西,学学还是挺不错的.其实单元测试用的好,开发起来也会快很多.单元测试对于我目前来说,就是为了方便测试一些功能是否正常运行,还有调试接口是否能正常使用.有时候你可能是为了测试某一个网络接口,然后每次都重新启动并且经过很多操作之后才测试到了那个网络接口.如果使用了单元测试,就可以直接测试那个方法,相对方便很多. 比如由于修改较多,我们想测试一下分享功能是否正常,这时候就有用了.(而不是重新启动程序,进入到分享界面,点击分享,填写分享内容.)其实单元测试并没有降低我们打代码的

iOS 开发-单元测试

前言 维基百科对单元测试的定义如下: 在计算机编程中,单元测试(英语:Unit Testing)又称为模块测试, 是针对程序模块(软件设计的最小单位)来进行正确性检验的测试工作.程序单元是应用的最小可测试部件. 在过程化编程中,一个单元就是单个程序.函数.过程等:对于面向对象编程,最小单元就是方法,包括基类(超类).抽象类.或者派生类(子类)中的方法. 根据不同场景,单元的定义也不一样,通常我们将C语言的单个函数或者面向对象语言的单个类视作测试的单元.在使用单元测试的过程中,我们要知道这一点:

iOS中的单元测试(一)

转载自http://www.infoq.com/cn/articles/ios-unit-test-1 导读:本文不讨论单元测试是什么,或者它之于一个工程的利弊,我认为单元测试是一个开发者保证产出代码质量的有效工具.本文从使用者的角度对比当下比较流行的两款单元测试框架,给大家提供一些选用建议.如果你还不甚了解单元测试在工程中所起到的作用,或者还不知道TDD的开发模式,可参考:Test-Driven Development和Unit Testing. 本文对比两个iOS开发中常见的单元测试框架:O

iOS进行单元测试OCUnit+xctool

感谢原作者    原文出处: http://iiiyu.com/2013/05/23/learning-ios-notes-twenty-three/ 单元测试 什么是单元测试 wiki解释 简单说来就是为你的方法多专门写一个测试函数.以保证你的方法在不停的修改开发中.保持正确.如果出错,第一时间让你知道,这样从最小单位开始监控来保证软件的质量. 我为什么要单元测试 其实要开始写单元测试的原因是,由于我的原因格志的存储逻辑一直有问题. 一个是代码写的比较搓,一个是修改存储的逻辑的话.影响面比较大

单元测试 jasmine

http://blog.fens.me/nodejs-jasmine-bdd/     前言TDD(Test Driven Development)测试驱动开发,是敏捷开发中提出的最佳实践之一.jasmine很有意思的提出了BDD(Behavior Driven Development)行为驱动开发,诱发了我的好奇心,一探究竟. 测试驱动开发,对软件质量起到了规范性的控制.未写实现,先写测试,一度成为Java领域研发的圣经.随着Javascript兴起,功能越来越多,代码量越来越大,开发人员素质

《C#并发编程经典实例》笔记

1.前言 2.开宗明义 3.开发原则和要点 (1)并发编程概述 (2)异步编程基础 (3)并行开发的基础 (4)测试技巧 (5)集合 (6)函数式OOP (7)同步 1.前言 最近趁着项目的一段平稳期研读了不少书籍,其中<C#并发编程经典实例>给我的印象还是比较深刻的.当然,这可能是由于近段日子看的书大多嘴炮大于实际,如<Head First设计模式><Cracking the coding interview>等,所以陡然见到一本打着"实例"旗号的