美文网首页
Xcode 断言的使用(一)

Xcode 断言的使用(一)

作者: ZYiDa | 来源:发表于2017-08-10 11:25 被阅读36次

    昨天听别人讲到断言,我感到很好奇,今天忙完别的事情后就了解和尝试使用一下,以后会陆续把单元测试以及断言相关的内容贴出来。

    格式和说明:

    1、格式: NSAssert(isRealName == YES, @"不是真实的名字!");
    2、说明,如果满足isRealName == YES这个条件时,能正常运行通过;如果不满足这个条件,程序则会运行崩溃,并输出后面的提示。
    3、断言只在Debug模式下使用,Release模式下不执行。

    使用案例:
    [RequestManager requestForFxxCxxxWithImageData:[self dictionaryToJsonStringWithDic:dic]
                                                       success:^(NSDictionary *success) {
                                                           //识别数据为空(也就是返回结果里面没有任何数据)的时候  会报错。
                                                           NSAssert(![success isEqualToDictionary:[NSDictionary dictionary]], @"识别结果数据不能为空!");
                                                       }
                                                          fail:^(NSError *fail) {
                                                          }];
    
    说明:

    上面是我写的网络请求,因为success为空,里面没有任何数据时,所以运行崩溃,并输出如下提示:

    
    2017-08-10 11:20:19.329 XXOO[6894:2515819] *** Assertion failure in -[XXController selectedToRecognizeFace], /Users/XX/Desktop/XX/XXOO/XXOO/Sections/XXF/XXController.m:443
    2017-08-10 11:20:19.330 XXOO[6894:2515819] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: '识别结果数据不能为空!'
    

    相关文章

      网友评论

          本文标题:Xcode 断言的使用(一)

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