加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

objective-c – 单元测试失败,然后没有

发布时间:2020-12-14 17:31:06 所属栏目:百科 来源:网络整理
导读:在经历了一些严重的挫折和头痛之后,我设法将单元测试添加到现有项目中.问题是,测试只能在50%的时间内执行.我有一个带有STFail宏的测试方法,当我运行测试时,它会像我期望的那样失败.然后,我再次运行测试而不触及任何代码/设置,它将通过而不会在测试夹具中击
在经历了一些严重的挫折和头痛之后,我设法将单元测试添加到现有项目中.问题是,测试只能在50%的时间内执行.我有一个带有STFail宏的测试方法,当我运行测试时,它会像我期望的那样失败.然后,我再次运行测试而不触及任何代码/设置,它将通过而不会在测试夹具中击中断点.发生这种情况时,控制台会输出此输出:

无法找到… octest的测试包的可执行文件.

我有一个谷歌,但似乎没有很多/任何人有这个确切的问题,关于这个问题的其他讨论正在我的头上.如果有人能够对这个问题有所了解,那将非常感激.

谢谢.

解决方法

我接受了你的新项目并重现了这个问题.有许多问题,一个未知:

构建测试目标的阶段:

>目标依赖项:指定TestApp,以便始终首先构建主目标.
>编译源:不包括任何主要来源.仅包含TestAppUnitTests.mm
> Link Binary with Libraries:唯一需要的是SenTestingKit.framework.我们可以投入基金会和UIKit.
>复制捆绑资源:应该什么都没有. (稍后,您可能需要特定于测试的资源.)

构建测试目标的设置:

> Bundle Loader应为$(BUILT_PRODUCTS_DIR)/TestApp.app/TestApp
>测试主机应为$(BUNDLE_LOADER)

主要目标方案:

>测试 – >信息应指定测试目标

但即使我做了所有这些更改,您的项目仍然有奇怪的行为.模拟器有时会获得一个名为${PRODUCT_NAME}的应用版本.即使调试应用程序,有时也会在Log Navigator中显示“Debug ${EXECUTABLE_NAME}”.所以其他东西是错误的,我不知道是什么.

最佳解决方案是从头开始创建一个新项目,指定“包含单元测试”.我已经证实这是有效的.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读