iOS_30_单元测试

来源:互联网 发布:smartgit mac 注册码 编辑:程序博客网 时间:2024/05/22 07:45

单元测试注意事项:

1.测试类必须是XCTestCase的子类,可使用项目自动生成的,也可自己新建一个测试类,用于测试某个特定的被测试的类


2.导入被测试的类.如MathTool

3.新建测试方法,必须以test开头,对象方法,且无返回值,无参数

4.在测试方法中,根据具体情况,使用XCTAssert...方法对被测试类内部的要测试的方法进行断言

5.无需运行程序,直接点击方法左边的圆形按钮,就可执行测试方法




新建一个测试方法



点击测试方法左边的三角形按钮,开始测试


测试结果为红色,原因是工具类还没实现方法



再次点击方法左侧的三角形按钮,执行测试


修正工具类的方法后,再次执行测试,结果为绿色



创建自定义测试类





点击测试方法,左侧的执行按钮,开始测试


红色表示 测试出错


绿色表示测试正确



////  _0_____Tests.m//  30_单元测试Tests////  Created by beyond on 14-9-5.//  Copyright (c) 2014年 com.beyond. All rights reserved.//  只要继承自 XCTestCase,本类就具备了单元测试的功能#import <XCTest/XCTest.h>// 1.先导入要测试的类#import "MathTool.h"@interface _0_____Tests : XCTestCase@end@implementation _0_____Tests- (void)setUp{    [super setUp];    // 本类中每一个测试方法 开始之前,都会运行 该setUp方法}- (void)tearDown{    // 本类中每一个测试方法 结束之前,都会运行 该tearDown方法            [super tearDown];}// 测试方法,必须以textXxx开头,且是对象方法,且无返回值,且无参数- (void)testSum{    XCTAssertEqual(13, [MathTool sumWithA:6 andB:7], @"求和方法有错~");}- (void)testExample{    XCTFail(@"No implementation for \"%s\"", __PRETTY_FUNCTION__);}@end



////  GirlTest.m//  30_单元测试////  Created by beyond on 14-9-5.//  Copyright (c) 2014年 com.beyond. All rights reserved.//  自定义单元测试类,只要继承自 XCTestCase,本类就具备了单元测试的功能#import <XCTest/XCTest.h>// 专门测试 GirlFactory 里面的方法#import "GirlFactory.h"@interface GirlTest : XCTestCase@end@implementation GirlTest- (void)setUp{    [super setUp];    // 本类中每一个测试方法 开始之前,都会运行 该setUp方法        }- (void)tearDown{    // 本类中每一个测试方法 结束之前,都会运行 该tearDown方法            [super tearDown];}// 测试方法,必须以textXxx开头,且是对象方法,且无返回值,且无参数- (void)testGirlFactory{    XCTAssertNotNil([GirlFactory girl], @"女朋友工厂出错,无法生产女朋友了~");}- (void)testExample{    XCTFail(@"No implementation for \"%s\"", __PRETTY_FUNCTION__);}@end


如果删除项目中的测试Target,可以新建一个Target

File-->new Target-->Other-->Cocoa Touch Unit Testing Bundle




1 0
原创粉丝点击