WebService体系之——与spring的整合

以下将介绍如何使用 XCTest.framework   尽Xcode5


步骤1:

点击工程项目

WebService体系之——与spring的整合

步骤2:添加测试Targts

WebService体系之——与spring的整合

选中后直接Next->Finish

添加后工程会多出一个目录

WebService体系之——与spring的整合

步骤3:Build Settings设置注意:尽量项目中有Build Settings都要设置

近设置Debug=YES即可

WebService体系之——与spring的整合






这个时候就可以 command+U 进行编译了

此时会提示错误

注释 XCTFail(@"No implementation for \"%s\"", __PRETTY_FUNCTION__);

现在添加XCTest告一段落



步骤4:快速产生图形化报表

下载gcov IOS7下辅助刷新的类库:XCode5gcovPatch

地址:https://github.com/leroymattingly/XCode5gcovPatch

下载下来之后解压缩,将以下两个文件添加到工程:

XCTest+GCovFlush 仅添加到测试目标

GcovExtern.h 仅添加到测试目标

此时在command+U会报错

XCTest+GCovFlush里

#import "GcovExtern.h"

#import <objc/runtime.h>


下载覆盖率工具:XcodeCoverage

地址:https://github.com/leroymattingly/XCode5gcovPatch

下载完成解压缩之后放到项目.xcodeproj文件所在的文件夹内(和.xcodeproj文件平级)

WebService体系之——与spring的整合

然后下载lcov(下载地址:http://ltp.sourceforge.net/coverage/lcov.php)解压缩之后放到XcodeCoverage内。

WebService体系之——与spring的整合

测试Targets下添加Build Phases:RunScript 

WebService体系之——与spring的整合

Script代码: XcodeCoverage/exportenv.sh 

WebService体系之——与spring的整合

这样图形生成表也就添加完毕

此时clean工程,command+U 无报错后

打开终端,CD 到项目中XcodeCoverage目录下 运行./getcov

成功后将自动打开网页展示图形化页面点击下方图片红色部分可进入下一级

WebService体系之——与spring的整合

步骤5:如何添加编写单元测试类

接下来我我要对OldClass进行操作

OldClass.h 

#import <Foundation/Foundation.h>


@interface OldClass :NSObject

@property (nonatomic,strong)NSString *con;


- (int)match:(NSArray *)otherCards;

@end


OldClass.m

#import "OldClass.h"


@implementation OldClass

- (int)match:(NSArray *)otherCards

{


    int score =0;

    for (OldClass *cardin otherCards)

    {

        if ([card.conisEqualToString:self.con])

        {

            score = 1;

        }

    }

    return score;

}

@end





在XCTest Tests下添加测试类,只需要连接测试Targets

WebService体系之——与spring的整合

直接 Next->Finish

添加的测试类可以看到刚在添加XCTest时里面的函数是一样的,同样注释掉报错代码

编写测试函数(测试函数必须以test开头否则编译是不认为时测试函数)

- (void)testMatchesDifferentCardWithSameContents

{

   NSLog(@"==============%s doing work...",__PRETTY_FUNCTION__);

    OldClass *card1 = [[OldClass alloc] init];

    card1.con =@"one";

    OldClass *card2 = [[OldClass alloc] init];

    card2.con =@"one";

    NSArray *handOfCards = @[card2];

    int matchCount = [card1 match:handOfCards];

   XCTAssertEqual(matchCount,1,@"Should have matched");

}


此时clean工程,command+U 无报错后

打开终端,CD 到项目中XcodeCoverage目录下 运行./getcov

此时图形化界面就会多出你所新添加的测试类视图

在对已经完成的工程添加测试类时需要手动将文件添加到测试Targets Build Phases里,添加.m文件即可

WebService体系之——与spring的整合


如有操作过程中出现各种报错问题可回复帖子交流经验,本人也是在无数个报错中弄明白这些问题

误喷!!!!

WebService体系之——与spring的整合,布布扣,bubuko.com

WebService体系之——与spring的整合

上一篇:前端JS使用的技巧总结【持续更新】


下一篇:thinkphp系统常量与自定义常量