问题标签 [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.

0 投票
2 回答
1153 浏览

ios - 是否可以从故事板实例化视图控制器以进行 Kiwi 测试

我正在测试 ViewController 中的一些代码(某些控件根据某些 UISwitches 的状态处于活动状态)并决定使用 Kiwi,因为我们正在使用它进行其他一些低级逻辑测试。

我的期望是运行这样的测试:

我的问题是 AViewController 的初始化。如果我这样做了:

我会得到一个没有初始化任何控件的“AViewController”,所以我必须手动初始化它们中的每一个。

所以我尝试获取 AViewController 这样做:

然而,这会导致错误消息:

NSInvalidArgumentException“在捆绑包 NSBundle </Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.1.sdk/Developer/usr/bin> 中找不到名为“MainStoryboard”的故事板(已加载)“ 提高

我已将 MainStoryboard 包含在我的测试目标中,并将其包含在“构建阶段”->“复制捆绑资源”中,但仍然没有。

所以我想知道是否可以从 Kiwi 测试目标中的 Storyboard 实例化 ViewController?(因为我在任何地方都没有看到任何例子)。

我的方法是错误的,我应该嘲笑 ViewController 吗?

我是否遗漏了要包含在测试目标中的内容?

0 投票
0 回答
833 浏览

ios - 使用 Kiwi 测试 AFNetworking API

我正在用 kiwi 为网络 API 编写一些测试。

以下是相关代码:

///////////////////////////////////////// //// MyAPI.h //////////////////////////////////// ///////////

///////////////////////////////////////// //// MyAPI.m //////////////////////////////////// ///////////

///////////////////////////////////////// //// MyAPITest.m //////////////////////////////////// ///////////

这是一个非常简单的测试,我正在逐步构建。最终我想测试 spy.argument 中的值,但现在我只对确保它不为零感兴趣。

运行测试总是失败:[FAILED] 请求的参数尚未被捕获。

调试不起作用:当我尝试在测试中放置断点(评论说)时,它永远不会进入方法。

同时,如果我将 NSLog(s) 放在 MyAPI 的 myMethodCall 中,它们不会打印在控制台上。

任何帮助将非常感激。

/////////////////////// 更新 ////////////////////////// ////////

事实证明,如果我评论/删除这一行(来自测试):

测试有效。知道为什么这条线会导致问题吗?

0 投票
1 回答
703 浏览

ios - 无法在 Kiwi 中的模拟 CLLocation 对象上存根时间戳

我正在写一些测试,我需要

  • 存根对模拟 CLLocationManager 的调用以返回特定的 CLLocation
  • 反过来,CLLocation 需要有一个过去的时间戳

创建 CLLocation 的实例很容易,但它的时间戳属性是只读的,并且固定到创建实例的时间点。所以,我计划创建一个模拟 CLLocation,并存根时间戳调用。

因此,代码如下所示:

总之,我有一个 CLLocationManager 模拟,我创建了一个比今天早两天的 NSDate。我希望在我打电话时返回那个日期

但是,我遇到了 ARC 语义问题。

这是 Kiwi 的问题,还是我遗漏了什么?

0 投票
1 回答
64 浏览

ios - 在猕猴桃测试期间得到 BAD_EXCESS,

我正在研究用于测试的猕猴桃框架,方法如下

和测试是

但是,我通过测试得到了 BAD_EXCESS 。我Expectations不知道为什么会出现这个错误。这里欢迎所有帮助。

0 投票
2 回答
2604 浏览

ios - 目标`fubarTests`(iOS 4.3)的平台与最低要求iOS 5.0的`Kiwi(2.2.1)`不兼容

我似乎无法克服这个错误,也不知道为什么。我正在运行 xcode 4.6.3 该项目的 ios 部署目标说 iOS 6.1 基础 sdk 是 6.1

我的 Podfile 是:

当我尝试从命令行运行 pod install 时,我收到关于目标是 iOS 4.3 的错误。

为什么它认为我的目标是 4.3,我该如何更改它?

0 投票
2 回答
1535 浏览

ios - 怎么对付猕猴桃?无法运行第一个测试(通过 Cocoapods 安装)

我正在尝试运行我的第一个 Kiwi 测试。我使用 Xcode 5 和 Kiwi 2.0 for iOS(通过 Cocoapods 安装)。我写了一些测试,但是当我在控制台中按 'cmd+u' 时,输出如下所示:

日志

测试:

这是Podfile

我认为没有编译测试。在下面的链接中,我的 Kiwi 项目和测试可用。

投递箱上的项目

https://dl.dropboxusercontent.com/u/11493275/Tmp/KiwiPro.zip

先感谢您。

0 投票
0 回答
59 浏览

objective-c - 猕猴桃的 Xcode 测试标记

在此处输入图像描述

在 Xcode 中,有没有办法在“context”、“describe”或“it”等其他命令的行号前面显示一个测试标记(就像我们在 SPEC_BEGIN 行看到的那样)?

0 投票
2 回答
1738 浏览

ios - XCode 5 和 Kiwi/XCUnit 的单元测试问题和崩溃

我在 XCode 5 中的单元测试有很多问题,想验证是否有其他人有同样的问题(以及任何可能的解决方案......)我正在使用为 ios7 开发的 Kiwi 框架,因此它是一个新项目在下面使用 XCUnit。我在 OSX 10.8 上使用 2011 macbook air

  1. 我第一次在启动时运行测试时,它会运行所有测试,即使我只选择一个案例/测试类 - 它甚至会运行所有禁用的测试。
  2. 添加新的单元测试后,XCode 有大约 1/3 的机会在运行所有测试时崩溃。
  3. 单击失败的单元测试很少会带我进入失败的单元测试。它就像代码已被删除一样。
  4. 修复单元测试后,问题导航器和编辑器中通常会遗留错误,但测试现在报告成功。
  5. 在成功运行所有单元测试后,Xcode 经常报告测试失败,但在导航器中都显示为成功。
  6. 单元测试经常会“卡住”并永远执行。在重新启动 xcode 之前,它不可能运行/构建其他任何东西。

有类似设置的人有同样的问题吗?有什么解决办法吗?真是一团糟。

0 投票
1 回答
3107 浏览

ios - 如何测试 AFNetworking

*编辑 - 我最初想测试AFNetworking使用Nocilla,但最终使用OHHTTPStubs来完成这项工作。我已经回答了下面的原始问题,使用OHHTTPStubs*

原始问题:

我想测试我们应用程序的 APIClient - 下面详细介绍了需要测试的方法之一。所以我需要模仿HTTPRequestOperationWithRequest:来自AFNetworking. Nocilla似乎是这样做的一种选择(比 更合适OCMock)。我已经查看了处理的github 页面,但我不确定如何将其应用于我的问题 - 语法不是很熟悉。NocillaAFNetworking

  • 所以我想知道是否有人可以提示我Nocilla在这种情况下如何使用?
  • 另外,必须使用KiwiwithNocilla吗?

提前致谢 :)

0 投票
0 回答
450 浏览

objective-c - GET:parameters:success:failure 中的 EXC_BAD_ACCESS AFNetworking

我正在测试一些执行一些网络操作的代码。我正在使用 Kiwi 和 OHHTTPStubs 库。

目前我有一个类负责执行请求的所有责任,我正在使用单例模式。该对象包含对我构建请求的 AFHTTPRequestOperationManager 的引用。

这是 EXC_BAD_ACCESS 发生时的堆栈跟踪。

在此处输入图像描述

更新:

这是它在 AFHTTPRequestOperationManager.m 中崩溃的地方

线: