• iOS单元测试常用的宏和测试方法

    发布:51Code 时间: 2018-03-26 13:52

  • 单元测试常用的宏和测试方法 XCTFail(...) 任何尝试都会测试失败,...是输出的提示文字。(后面都是这样) XCTAssertNil(expression, ...) expression为空时通过,否则测试失败。 expression接受id类...

  • 单元测试常用的宏和测试方法

    XCTFail(...)

    任何尝试都会测试失败,...是输出的提示文字。(后面都是这样)

    XCTAssertNil(expression, ...)

    expression为空时通过,否则测试失败。

    expression接受id类型的参数。

    XCTAssertNotNil(expression, ...)

    expression不为空时通过,否则测试失败。

    expression接受id类型的参数。

    XCTAssert(expression, ...)

    expression为true时通过,否则测试失败。

    expression接受boolean类型的参数。

    XCTAssertTrue(expression, ...)

    expression为true时通过,否则测试失败。

    expression接受boolean类型的参数。

    XCTAssertFalse(expression, ...)

    expression为false时通过,否则测试失败。

    expression接受boolean类型的参数。

    XCTAssertEqualObjects(expression1, expression2, ...)

    expression1和expression1地址相同时通过,否则测试失败。

    expression接受id类型的参数。

    XCTAssertNotEqualObjects(expression1, expression2, ...)

    expression1和expression1地址不相同时通过,否则测试失败。

    expression接受id类型的参数。

    XCTAssertEqual(expression1, expression2, ...)

    expression1和expression1相等时通过,否则测试失败。

    expression接受基本类型的参数(数值、结构体之类的)。

    XCTAssertNotEqual(expression1, expression2, ...)

    expression1和expression1不相等时通过,否则测试失败。

    expression接受基本类型的参数。

    XCTAssertEqualWithAccuracy(expression1, expression2, accuracy, ...)

    expression1和expression2之间的任何值都大于accuracy时,测试失败。

    expression1、expression2、accuracy都为基本类型。

    XCTAssertNotEqualWithAccuracy(expression1, expression2, accuracy, ...)

    expression1和expression2之间的任何值都小于等于accuracy时,测试失败。

    expression1、expression2、accuracy都为基本类型。

    XCTAssertGreaterThan(expression1, expression2, ...)

    expression1 <= expression2时,测试失败。

    expression为基本类型

    XCTAssertGreaterThanOrEqual(expression1, expression2, ...)

    expression1 < expression2时,测试失败。

    expression为基本类型

    XCTAssertLessThan(expression1, expression2, ...)

    expression1 >= expression2时,测试失败。

    expression为基本类型

    XCTAssertLessThanOrEqual(expression1, expression2, ...)

    expression1 > expression2时,测试失败。

    expression为基本类型

    XCTAssertThrows(expression, ...)

    expression没抛异常,测试失败。

    expression为一个表达式

    XCTAssertThrowsSpecific(expression, exception_class, ...)

    expression没抛指定类的异常,测试失败。

    expression为一个表达式

    exception_class为一个指定类

    XCTAssertThrowsSpecificNamed(expression, exception_class, exception_name, ...)

    expression没抛指定类、指定名字的异常,测试失败。

    expression为一个表达式

    exception_class为一个指定类

    exception_name为一个指定名字

    XCTAssertNoThrow(expression, ...)

    expression抛出异常时,测试失败。

    expression为一个表达式

    XCTAssertNoThrowSpecific(expression, exception_class, ...)

    expression抛出指定类的异常,测试失败。

    expression为一个表达式

    XCTAssertNoThrowSpecificNamed(expression, exception_class, exception_name, ...)

    expression抛出指定类、指定名字的异常,测试失败。

    expression为一个表达式

    exception_class为一个指定类

    exception_name为一个指定名字

    异步测试方法(定时器测试)
     

    - (void)testTimerOne02{

    XCTestExpectation *exception01 = [self expectationWithDescription:@"开始测试定时器"];

    self.timer01Exception = exception01;

    [[DYBoxTimer shareInstance] addSubscriberTimerWithTimeInterval:3 target:self selector:@selector(sendLocation01) timerSubscriberName:@"timer5" isRepeat:YES];

    ////等待6s期待预期完成,10s之内完成任务就认为是正常的

     [self waitForExpectationsWithTimeout:3.1 handler:nil];

    }

     

    - (void)sendLocation1{

    [self.timer1Exception fulfill];

    }
     

    原文作者:wg689
    上文内容来自:简书
  • 上一篇:软件测试对比软件开发,你适合哪款?

    下一篇:Android单元测试实践

网站导航
Copyright(C)51Code软件开发网 2003-2018 , 沪ICP备16012939号-1