问题标签 [kiwi]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - Kiwi BDD - 如何测试`tableView:cellForRowAtIndexPath:`的结果?(目标-C)
我正在使用 Kiwi 为应用程序编写测试。我正在尝试验证从返回的单元格tableView:cellForRowAtIndexPath:
在调用后是否设置了正确的值。我已经做了很多不同的变化,但没有运气:
实际方法如下所示:
它似乎被抓住了cell.label1
——nil
然而,我之前确实存根存根。
欢迎任何关于如何实际编写此测试的想法。
ios - Kiwi:mock 和 nullMock 之间的具体区别?
我在一个项目中使用 Kiwi,但不太清楚何时使用 amock
与 a nullMock
。以下是 Kiwi 的文档目前提供的内容:
当一个普通的模拟对象收到一个它不期望的选择器或消息模式时,它会引发一个异常。当在模拟上使用存根或接收期望时,预期的消息会自动添加到模拟中。
如果您不关心模拟接收其他消息,并且不希望引发异常,则使用空模拟(也称为空对象)。
这种差异会在什么样的情况下发挥作用?
ios - Kiwi 单元测试在 Xcode 中从不失败
出于某种原因,我的测试每次都通过了。即使我添加
Xcode 仍然显示“测试成功”
有任何想法吗?
这是我的规格的样子
ios - What is a practical example of using Kiwi's KWCaptureSpy?
I'm having trouble understanding what a practical application of using Kiwi's KWCaptureSpy
is. I could do something like this and have it pass:
but that doesn't seem to actually be testing anything. The example in Kiwi's documentation doesn't help: https://github.com/kiwi-bdd/Kiwi/wiki/Mocks-and-Stubs#capturing-arguments
Has anyone had a good reason to use KWCaptureSpy
in practice?
objective-c - 在 Kiwi iOS 中测试 NSNotification
所以我需要测试是否NSNotification
发布了 a 。我尝试了以下代码来监视参数。
但是这个问题是因为它是异步的,所以在测试之前并不总是捕获参数。我也无法添加shouldEventually
notificationSpy.argument.name,因为它会NSInternalConsistencyException
在捕获之前访问参数。
我也试过了,
[[SOME_NOTIFICATION should] bePosted];
也失败了。
objective-c - Kiwi 监视多个 NSNotifications
我目前正在postNotification
像这样监视
问题是我有多个通知名称不同的通知。如何访问间谍的参数以获得不同的通知。
例如说我有 Notification1 和 Notification2 间谍参数捕获 Notification1 但我无法捕获 Notification2。
关于如何做到这一点的任何想法?
ios - 使用 Realm 在 iOS 应用程序上运行基于 Kiwi 的测试时自发失败
我正在开发一个具有 300 多个测试的 Kiwi 测试套件的应用程序。测试作为应用程序测试运行,其中主应用程序目标是测试包的主机。
我正在尝试将Realm添加到应用程序中,但是当我将 Realm 对象编译到应用程序目标中时,由于无法创建 Kiwi 匹配器,我的测试自发失败。我注意到只有当我的RLMObject
子类具有RLMArray
属性时才会发生这种情况。删除它们可以解决问题。
控制台日志中的失败原因各不相同,但常见的有:
和我最喜欢的:
还有其他人遇到这个问题吗?
ios - 使用 xctool 运行单个 KIWI 规范
有没有人能够成功地将 KW_SPEC 变量传递给 xctool。我正在尝试使用https://github.com/kiwi-bdd/Kiwi/wiki/Kiwi-FAQ#q-how-do-i-run-a-single-spec-describecontextit运行单个 KIWI 规范。
我可以使用 xctool 成功运行所有测试,但它似乎没有获得 KW_SPEC 值。我用命令行在很多不同的地方尝试过,但没有运气。
例如:
使用 Kiwi v2.3.1 和 xctool 0.2.3
干杯,莫
ios - 指向块指针的指针
我有一个使用 Promise (PMKPromise) 的方法,我想使用 Kiwi 库进行单元测试。
我的方法如下所示:
我想捕获并执行承诺完成块(称为“then”),并且我设法做到了(使用模拟的承诺):
我现在想做的是将这个丑陋的代码隐藏在一个类别中,以便将来在单元测试承诺时可以轻松使用。
我想将块“双指针”作为方法参数传递。
这可能是实现:
这就是我将如何使用它:
不幸的是,这段代码不起作用。踏入时,确实捕获了该块。但是一旦出来,在执行捕获的块的那一刻,它就为零。
ios - 如何使用 Expecta/OCMockito 测试异步委托方法?
我目前正在使用 Kiwi 编写测试,但我有兴趣尝试 Specta/Expecta/OCMockito(或其他模拟库,如有必要)。
我使用 Kiwi 的一件事是测试在一些异步工作之后调用委托方法。例如,这个 Kiwi 规范对 HTTP 请求响应(在后台队列中执行)进行存根,并测试最终委托是否被告知来自请求的响应:
有没有办法通过 Expecta/OCMockito(或可能是另一个模拟库?)来实现这一点。我可以看到 Expecta 支持异步期望,但我不确定如何将它与像 OCMockito 这样的模拟库结合起来。