(译)OCMock之一

原文地址

一:简单的使用Stub

作用:让方法返回一个预先设定好的值。

The Example

假设我们来写一个小的应用,该应用的目的是接受一个来自Twittertweets。我们有一个controller class,用这类来处理来自TwitterAPI,在controller里面有TwitterConnection,TweetView和用来展示tweets(内容)的TweetView类。

controller类的.h文件


(译)OCMock之一_第1张图片

TwitterConnect有一个方法用来检索又没有新的tweets

TweetView类的.h文件 ,有一个方法用来添加新的tweetview上面


为什么我们要使用mocks

1.使用正真的网络连接,会让测试变的很慢。

2.我们不知道Twitter在任何时候会返回什么

3.很难测试错的的情况,因为推特一般不返回错误信息

使用stub来进行单元测试

(译)OCMock之一_第2张图片

再来看一下updateTweetView方法里面的内容,fetchTweets方法被调用,返回了特定的数组

(译)OCMock之一_第3张图片

二:验证一个mock对象的方法是否被调用

在最后面加上这句

"[OCMArg any]"可以替代任何参数,当stub的方法有参数时,可以这样传入参数。

OCMVerify用来验证addTweet方法是否被调用了,未被调用会报错

你可能感兴趣的:((译)OCMock之一)