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. windows 7 下安装 vagrant + Oracle VM VirtualBox

    一.安装下准备 1.下载Oracle VM VirtualBox https://www.virtualbox.org/wiki/Downloads  (VirtualBox-4.3.22-98236 ...

  2. Chrome 主页被篡改

    尝试恢复设置.重装chrome.改注册表均无果.最后意外发现解决方法无比简单:删掉桌面上的chrome图标,打开安装文件夹找到chrome.exe,随便改成什么名字.exe,比如baiduwcnm,重 ...

  3. SharePoint 2013 Support for Windows Server 2012 R2

    Summary Currently, Microsoft SharePoint Server 2013 is not supported for installation on computers r ...

  4. 关于Unity中网格导航与寻路

    寻路思路 1.烘焙出地形数据,导航数据,区分哪些是路径,哪些是障碍物 2.给要寻路的角色添加寻路的组件,加好了以后就会有速度和目的地之类的参数设置 3.只要设置好目的地,角色就会根据烘焙好的地图自己走 ...

  5. mac下配置android环境变量

    下面我将一下mac环境下的配置步骤: 1.在本地目录(home directory)中创建文件.bash_profile2.在文件中写入以下内容:export PATH=${PATH}:/Users/ ...

  6. 【转】【MySQL】Mysql模糊查询like提速优化

    在使用msyql进行模糊查询的时候,很自然的会用到like语句,通常情况下,在数据量小的时候,不容易看出查询的效率,但在数据量达到百万级,千万级的时候,查询的效率就很容易显现出来.这个时候查询的效率就 ...

  7. windows下docker使用及注意事项

    1.windows container模式下,pull镜像会失败 no matching manifest for windows/amd64 in the manifest list entries ...

  8. ASP.NET MVC使用Oauth2.0实现身份验证

    随着软件的不断发展,出现了更多的身份验证使用场景,除了典型的服务器与客户端之间的身份验证外还有,如服务与服务之间的(如微服务架构).服务器与多种客户端的(如PC.移动.Web等),甚至还有需要以服务的 ...

  9. Lua------------------改善Unity编辑器对Lua文件的支持

    原创 2017年03月10日 18:44:22 标签: Unity / lua / 编辑器 952 当前版本的Unity(截至Unity5.5.x)中TextAsset类不支持后缀为lua的文件,将l ...

  10. OpenMP并行编程应用—加速OpenCV图像拼接算法

    OpenMP是一种应用于多处理器程序设计的并行编程处理方案,它提供了对于并行编程的高层抽象.仅仅须要在程序中加入简单的指令,就能够编写高效的并行程序,而不用关心详细的并行实现细节.减少了并行编程的难度 ...