问题标签 [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 取消存根方法
我有一个用于测试目的的宏,它创建一个导航控制器,将其设置为主窗口的根视图控制器,并将正在测试的视图控制器放在导航控制器中。
我还想为每次调用pushViewController:animated:
将动画参数更改为NO
.
我怎样才能做到这一点?
我尝试使用stub:withBlock:
然后调用pushViewController:animated:
块内部,视图控制器被推送(params [0])并且没有,但这会导致无限循环。
还有,stub:withArguments:
但在那种情况下,我没有对被推送的视图控制器的引用,因为它是一个在多个地方使用的宏。
我能想到的唯一方法是stub:withBlock:
在块内使用 and 删除存根并正常调用pushViewController:params[0]:NO
,但我找不到删除存根的方法。
有什么帮助吗?
ios - 如何在 iOS 应用程序中自动测试不同的启动选项?
我想知道是否有一种方法可以自动测试launchOptions
应用程序首次启动时的不同配置?我熟悉 XCTest、KIF 和 KIWI,但我不确定是否可以实施此类测试?
ios - 用于远程启动单元测试的 OS X 服务器
我们有多种选择来使用远程 OSX 服务器,例如 MacinCloud、MacStadium、vmOSX、Xcloud、Xcodeclub
我想用猕猴桃。
如果有人可以建议我会很高兴
objective-c - 花了我两个小时来 TDD 一些本应花半小时的代码。这个可以吗?
我正在潜入 iOS 开发的 TDD 世界。阅读了很多内容,观看了一些截屏视频,并且总体上让自己相信了 TDD 的力量。但我缺乏经验,所以我只是从一个小项目开始。
问题是我用 TDD 编写一些代码比没有它要花更多时间。对于一个本应花费我半小时的简单功能,我花了将近两个小时的时间进行战斗。我得到了测试的好处,并把你的头脑围绕在高级功能上,就像这里清楚解释的那样。
但我担心如果我不改进,这会咬我一口。另外,我开始用 Kiwi 编写测试,我花了一点时间来适应它的符号。我注意到我花了很多时间试图找出使用规范编写/重构测试代码的正确方法,而不是生产代码。事实上,大部分时间我都在使用测试代码,因为我没有使用正确的一些规范,或者我不应该使用的模拟,等等。我发现它非常有用,但也许让我的头脑围绕测试和猕猴桃太多了?
根据您的经验,它会变得更好吗?提前致谢。
ios - 猕猴桃存根和退货问题
我想使用 Kiwi 测试我的对象的创建。考虑这样的构造
id objectOne = [ObjectOne objectWithAnotherObject:objectTwo];
在这个静态方法中,我从 objectTwo 设置了我的 objectOne,它定义了 enum/type 属性。
我的 Kiwi 测试看起来像这样。
ObjectTwo *objectTwo = [ObjectTwo 模拟];
[objectTwo stub:@selector(type) and Return:theValue(typeOne)];
id objectOne = [ObjectOne objectWithAnotherObject:objectTwo];
我现在面临的问题是例外:
[NSException raise:@"KWStubException" format:@"wrapped stub value type (%s) could not be convert to the target type (%s)", [self.value objCType], objCType];
这是否意味着 Kiwi 无法将对象 theValue(typeOne) 转换回枚举值?
我正在使用 XCODE 6 和最新的 Kiwi 版本
ios - UICollectionViewCell 子视图未在单元测试中更新
我有一个测试,我想加载一个 UICollectionViewCell ( CustomCollectionViewCell
),将一些数据传递给它,并检查单元格的标签是否用这些数据更新。
cell.nameLabel
是单元格的 UILabel 并且该方法setText
被调用但文本本身永远不会更新。
cell.nameLabel.text
始终返回 xib 中定义的初始文本。
标签定义如下:
和规格:
objective-c - expectFutureValue 失败
为什么我不能通过考试?未调用任何 AFHTTPRequestOperation 块。似乎 expectFutureValue 不等待结果并立即返回。我尝试使用 XCode 6.1 和 Kiwi 2.3.1
谢谢!
ios - 从 Kiwi 中的方法参数中捕获块?
我正在使用Firebase iOS SDK,我正在努力弄清楚如何使用 Kiwi 全面测试一些 Firebase 方法调用。
我正在使用 Firebase 的实例来“监视”路径:
Firebase *streamsReference = [self.firebaseRef childByAppendingPath:@"streams"];
然后用它streamsReference
来观察事件:
我想测试块中代码的效果。
这是我到目前为止所得到的:
当我运行测试时,它因错误而失败Argument requested has yet to be captured
- 这表明我以错误的顺序进行操作。谁能看到我要去哪里错了?
xcode - 无法在 xcodebuild (Xcode 6) 中运行 Kiwi 测试 (XCTest)
我正在尝试使用 CLI 工具运行我的测试。在遵循各种指南之后,我想出了这个命令:
我得到的错误是:
我不知道为什么构建失败,因为错误消息不是很给力。
至于我的预配置,我遵循了一些指南并执行了以下操作:我添加了一个针对我的测试目标的仅测试方案(就像我在许多指南中看到的那样),并将它的可执行文件设置为.app 文件(默认设置没有可执行文件,这会导致找不到应用程序文件的错误)。
我正在使用 Cocoapods,但仍然没有standard architecture (arm7, arm64)
在我的项目中使用(我依赖于尚未升级的第 3 方,所以目前我的设置是$(ARCHS_STANDARD_32BIT)
)。
我还检查了"${SYSTEM_DEVELOPER_DIR}/Tools/RunUnitTests"
运行脚本是否出现并在构建阶段最后发生。
请注意,使用 CMD+U 运行测试按预期工作。
编辑:显然,清理后没有创建 .app 文件(因此删除清理或预构建应用程序有效)。尽管如此(即使我也需要解决这个问题)。我现在收到此错误:
我已经读过打开 iOS 模拟器时可能会发生这种情况,但即使我在运行脚本之前将其杀死也会发生。
xcode - 即使测试失败,也可以从 `xcodebuild` 获取 `**TEST SUCCEEDED**`
我正在运行这个命令来运行我的测试:
当我测试失败时,我最终得到了这个输出:
我将 Xcode6 与 Cocoapods 一起使用,我的测试库是 Kiwi (XCTest),而且我还没有为测试创建一个特殊的方案(因为除了最终输出之外,测试工作正常)。
更新:这实际上在同事计算机上运行良好。这已经在同一个 repo 上运行并且假设是相同的配置,这就是为什么我怀疑我的本地 xcode 配置在本地有问题(虽然不知道是什么)。