gpt4 book ai didi

iphone - 是否有任何可用于 Objective-C 的测试 spy 库?

转载 作者:搜寻专家 更新时间:2023-10-30 20:22:58 25 4
gpt4 key购买 nike

我想在 iOS 项目中采用 BDD 方法进行单元测试,我刚刚意识到可能没有现有的库可以提供 test spy 的测试替身。种类。理想情况下,我正在寻找类似于 Mockito 的东西, Jasmine , 或 RR .

在我花一周的空闲时间编写一个测试 spy 库之前,我想我应该先在 SO 上提出这个问题。

到目前为止,我查看了 OCMockKiwi , 但它们似乎都是传统的 high-specification-by-default mocking frameworks需要在 arrange phase, prior to the act phase 中设置期望断言.很明显,这妨碍了我对美丽的憧憬,DRY , 嵌套规范(我计划在 KiwiCedar 中创作)。

最佳答案

刚看到。

猕猴桃现在肯定不会这样做。你是对的,其中的模拟是为行动阶段之前的“标准”安排而构建的。

继续前进,尽管乍一看,添加 spy 功能的基础似乎不需要太多的重新设计。进入模拟的每条消息(除了一些重要的、保留的选择器)都会通过 -[KWMock forwardInvocation:]

本质上,当前的 -[KWMock forwardInvocation:] 需要修改以记录/复制所有通过它的调用,而不是现在的操作。这将是允许稍后通过查询记录的调用来验证期望的原始功能。当然,想出一个用于验证的可读性很好的表单也不是一件容易的事。

spy /模拟仍然需要知道它预先代表的是什么类/协议(protocol)。这样它将能够为发送给它的消息的选择器生成有效的方法签名,从而允许运行时转发机制生成将被转发的实际 NSInvocation。

我现在全神贯注于其他事情以在那里获得实现,但我很乐意回答更多问题或合并任何拉取请求。 HTH.

关于iphone - 是否有任何可用于 Objective-C 的测试 spy 库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5208089/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com