1、像一般创建项目的步骤一样。创建一个用于測试的项目或者打开一个待測试的项目。

(oc是5.0之前所使用的測试,如今用的是XCtestCase,默认会创建一个主的測试类。曾经版本号可能非常多步骤省去)

例如以下:我们能够看到一个text中的測试文件,如今全部測试类都是继承XCTestCase类。

2、写入对应的測试用例在測试类,測试类中对要測试的类须要进入对应的类的头文件,这个是理所应当的。然后执行“执行測试”。快捷键:command+U或者product—> test。

以下是是执行成功之后的文档。

上面就是一个简单的測试成功的样例。

2、不同版本号之间的区别:

熟悉OCUtest的人应该非常快就能够熟悉OCUnit。由于一般都是一样的,XCTest是对OCUnit进一步的封装。

存在下面一点微小的差异:

1)使用不同的框架,測试用例须要继承不同的基类,XCTest继承XCTestCase基类,而OCUnit继承SenTest基类。

2)由于继承的基类不同,所以那些断言的方法名字的前缀也会发生改变。XCTest中的断言方法是XCT——也就是前面几个字母。相同OCUint中是ST。是SenTest的前缀。

3)(最大的差别)在XCTest中,使用类方法。使用者能够使用类方法的级别的setUp和tearDown方法。让測试代码更加的合理。

更加的有效控制測试方法之间的隔离环境的问题。我们

4)到了6.0之后,省略了类方法,直接就是实例的setUp(进入)和tearDown(出来)方法和对应的实例方法。

例外两个方法我们能够从英文上面看出来,一个是測试功能性的样例,一个是測试性能上的样例。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" height="362" width="719">

能够看上面红色地方添加了检測代码性能的方法。

3、如今的xcode中都能够进行通过一个可管理的大量測试用例"分拆逻辑測试"。在代码库的增长和进化方面会产生非常多不同。



OCUnit和XCTest兼容性,他们之间的转化是基于target——>by ——> target

步骤:

1.选择 Edit > Refactor > Convert OCUnit  to  XCTest。

2.点击下一步,进入到下一个工作表。

3.在出现的表单中,选择要转换的測试目标。

4.要查看一个特定的目标能否与 XCTest 转换。请单击其名称。

5.单击下一步button。弹出了一个FileMerge界面,能够查阅更改。(这一步就是我们常常使用到的给边文件名称字的方法)

6.假设确定是这样更改,就能够单击保存button。Xcode会把更改写入文件。

參看链接:

http://www.cocoachina.com/ios/20140717/9168.html

4、书写測试的是应该注意一些细节:

1)測试用例中的方法应该是曾经缀为test,我们经常写为DISABLE_test… 这样就不会測试,由于识别仅仅是识别test开头的。

2) 測试须要一个放置的位置。比方我们測试一个用例的时候我们能够创建对应的类,而且继承XCTestCase。在xcode中直接选择创建測试的类就好了。

3)測试要有一定的语气效果,ios中表达预期的效果一般使用断言来表示。

4)xcTestCase中測试都是依照一行行来进行測试,假设失败,断言会抛出异常。

5)測试用例,測试用例(能够仅仅有一个方法,或者多个方法),运行的循序setup——> 測试用例的方法——> teardown .

ios的单元測试OCUnit以及更新了之后的XCTestCase的更多相关文章

  1. ios单元測试之GHUnit

    1.相同创建一个測试的project, 2.通过cocoaPod来下载GHUnit框架,或者到github上下载.由于这个框架是开源的第三方框架. 同一时候加入QuartCore.framework( ...

  2. iOS单元測试:Specta + Expecta + OCMock + OHHTTPStubs + KIF

    框架选择 參考这篇选型文章,http://zixun.github.io/blog/2015/04/11/iosdan-yuan-ce-shi-xi-lie-dan-yuan-ce-shi-kuang ...

  3. [iOS翻译]《iOS7 by Tutorials》在Xcode 5里使用单元測试(上)

    简单介绍: 单元測试是软件开发的一个重要方面.毕竟,单元測试能够帮你找到bug和崩溃原因,而程序崩溃是Apple在审查时拒绝app上架的首要原因. 单元測试不是万能的,但Apple把它作为开发工具包的 ...

  4. iOS 单元測试之XCTest具体解释(一)

    原创blog,转载请注明出处 blog.csdn.net/hello_hwc 欢迎关注我的iOS-SDK具体解释专栏 http://blog.csdn.net/column/details/huang ...

  5. 软件測试、ios中的測试概念以及步骤

    软件測试: 软件測试的目标是应该服务于软件项目的目标,能够通过建议反馈使用更加高效的方法和工具,提升软件开发效率以及软件开发质量.同一时候还能够通过过一些手段,更早.更快.很多其它地发现缺陷.从容减少 ...

  6. 让你提前认识软件开发(19):C语言中的协议及单元測试演示样例

    第1部分 又一次认识C语言 C语言中的协议及单元測试演示样例 [文章摘要] 在实际的软件开发项目中.常常要实现多个模块之间的通信.这就须要大家约定好相互之间的通信协议,各自依照协议来收发和解析消息. ...

  7. Java单元測试工具JUnit 5新特性一览

    Java单元測试工具JUnit 5新特性一览 作者:chszs,未经博主同意不得转载. 经许可的转载需注明作者和博客主页:http://blog.csdn.net/chszs JUnit是最流行的开源 ...

  8. 利用Continuous Testing实现Eclipse环境自己主动单元測试

    当你Eclipse环境中改动项目中的某个方法时,你可能因为各种原因没有执行单元測试,结果代码提交,悲剧就可能随之而来. 所幸infinitest(http://infinitest.github.io ...

  9. 在Eclipse中使用JUnit4进行单元測试(0基础篇)

    本文绝大部分内容引自这篇文章: http://www.devx.com/Java/Article/31983/0/page/1 我们在编写大型程序的时候,须要写成千上万个方法或函数,这些函数的功能可能 ...

随机推荐

  1. FileTable使用总结

    sqlsever2012以后才开始支持FileTable,具体的FileTable的介绍可以参考微软的官网 http://msdn.microsoft.com/zh-cn/library/gg5090 ...

  2. 基于Cookie的购物车

    var Cookies = {}; Cookies.set = function (name, value) { var argv = arguments; var argc = arguments. ...

  3. 纯css 404

    <section class="center"> <article> <h1 class="header"> 404< ...

  4. svn 备份脚本

    [root@hm-vpnserver-196 ~]# cat /root/svnback.sh #!/bin/bashtt=$(ls /home/svndata/) for i in $ttdo mk ...

  5. 从PCD文件写入和读取点云数据

    (1)学习向PCD文件写入点云数据 建立工程文件ch2,然后新建write_pcd.cpp  CMakeLists.txt两个文件 write_pcd.cpp : #include <iostr ...

  6. Materialize快速入门教程

    https://materializecss.com/ https://github.com/Dogfalo/materialize http://www.materializecss.cn/ 1,下 ...

  7. RootKit

    类型0:藏在人群中,干扰人工肉眼检查 类型1 2:篡改系统内部的数据结构和调用表,破坏自动化检测工具,这项数据结构和调用表是检测工具和KootKit共用的 类型3:跳出束缚,由rootkit实现本该宿 ...

  8. 《FPGA全程进阶---实战演练》第十四章 蜂鸣器操作

    1 基础理论部分 本实验主要是实现蜂鸣器的操作,蜂鸣器的操作是非常简单的,只有把简单的事情做好,方可谈其他复杂的事.本实验部分会利用verilog一些宏定义语句,其实在VGA实验部分已经出现过,这里为 ...

  9. 关于Unity中地形的创建

    地形创建 Raw图片格式是Unity可以导出的图片格式 Unity很强大,可以直接使用psd文件 地形创建实例 1.创建Unity工程和文件目录1:创建一个地形Terrain: GameObject- ...

  10. Ogre2.1 结合OpenGL3+高效渲染

    在DX10与OpenGL3+之前,二者都是固定管线与可编程管线的混合,其中对应Ogre1.x的版本,也是结合固定与可编程管线设计.转眼到了OpenGL3+与DX10后,固定管线都被移除了,相对应着色器 ...