美文网首页
iOS-单元测试

iOS-单元测试

作者: CoderCurtis | 来源:发表于2017-05-15 16:40 被阅读10次

单元测试的好处是可以在其中随意写测试代码而不会影响到主程序的功能;也许和个人所在公司和项目的原因,在实际开发中单元测试几乎未用

新建一个工程,在工程中新建一个类为Test。定义一个计算两个值和的类方法:

Test.h:
//计算两数之和
+ (NSInteger)sumWithPartOne:(NSInteger)one partTwo:(NSInteger)two;

Test.m:
+ (NSInteger)sumWithPartOne:(NSInteger)one partTwo:(NSInteger)two;
{
    return one + two;
}

一般地,我们可以在相应使用你所创建的类中引入它,这里我将Test.h引入ViewController中并写简单测试代码:

NSLog(@"两数之和: %zd", [Test sumWithPartOne:88 partTwo:9]);
    
//1.开发功能逻辑代码
//2.可以将测试代码 写在主程序中-->单元测试
if ([Test sumWithPartOne:88 partTwo:9] == 97) {
    NSLog(@"逻辑代码正确");
}

command + R运行,看到控制台输出

2017-05-15 16:27:30.554 UnitTestDemo[76562:13431407] 两数之和: 97
2017-05-15 16:27:30.554 UnitTestDemo[76562:13431407] 逻辑代码正确

可知写的代码成功运行结果正确,但这样测试代码在我们的主程序中。

也可以这样做,单元测试:

使用Xcode创建应用的时候:

3194729D-B092-4F3E-BB55-3A3E594E6F2D.png

可以勾选Include Unit Tests,这样创建的应用就包含单元测试。但如果创建时未勾选它,也可以在应用中新建它。

首先在单元测试的类中引入Test,在testExample方法中写测试代码或者删掉它们,自己新写个方法写测试代码。

- (void)test
{
    //测试 点击左侧菱形即可
    //运行正常: 菱形显示为绿色
    //运行不正常: 菱形显示为红色
    //最顶部的菱形按钮  用于多个测试代码需要运行时 可以点击顶部按钮 全部运行
    
    //XCTAssert: 断言
    XCTAssert([Test sumWithPartOne:88 partTwo:9] == 97, @"方法错误");
    
//    //1.开发功能逻辑代码
//    //2.可以将测试代码 写在主程序中-->单元测试
//    if ([Test sumWithPartOne:88 partTwo:9] == 97) {
//        NSLog(@"逻辑代码正确");
//    }
}

运行正常:

屏幕快照 2017-05-15 16.36.41.png

运行不正常:

屏幕快照 2017-05-15 16.39.48.png

相关文章

  • 单元测试UnitTest

    来源iOS-使用Xcode自带单元测试UnitTest - 简书 - (void)setUp {[super se...

  • iOS-单元测试

    单元测试的好处是可以在其中随意写测试代码而不会影响到主程序的功能;也许和个人所在公司和项目的原因,在实际开发中单元...

  • iOS-单元测试

    推荐链接https://www.jianshu.com/p/84ffc4f11042

  • iOS-单元测试

    单测在比较大的项目中会使用到,下面的几个东西是单测常用的工具,供大家参考。LCOV - 单测覆盖率报告生成工具;O...

  • iOS-单元测试汇总

    前言: 对于单元测试来说,我想大部分同行,在项目中,很少会用到,也有一大部分,知道单元测试这个东西,但是确切的说没...

  • iOS-单元测试汇总

    原文地址: https://www.jianshu.com/p/4001e06b150e 前言: 对于单元测试来说...

  • iOS-私有API与runtime

    iOS-私有API与runtime iOS-私有API与runtime

  • iOS-代码混淆加固策略

    iOS-代码混淆加固策略 iOS-代码混淆加固策略

  • iOS-性能优化深入探究

    iOS-性能优化深入探究 iOS-性能优化深入探究

  • iOS-自动打包及分发(三)

    iOS-自动打包及分发(一)iOS-自动打包及分发(二)iOS-自动打包及分发(三) 废话不多说了,上正文: 一、...

网友评论

      本文标题:iOS-单元测试

      本文链接:https://www.haomeiwen.com/subject/eiuhxxtx.html