使用 Kiwi 获取测试结果

Posted

技术标签:

【中文标题】使用 Kiwi 获取测试结果【英文标题】:Get result of testing using Kiwi 【发布时间】:2012-03-13 07:10:01 【问题描述】:

我想使用 XML-RPC 将我的 iPhone 应用程序的测试结果发布到我的 TestLink。

我在我的项目中使用Kiwi,现在我想得到测试的结果。我可以知道我的测试用例的条件是通过还是失败?

【问题讨论】:

【参考方案1】:

Kiwi 测试结果的记录方式与典型的 OCUnit 测试结果基本相同,因此与其他 Xcode 测试框架相比,导出 Kiwi 测试结果应该没有什么特别之处。使用 Xcode 4,会在以下位置生成日志文件:

~/Library/Developer/Xcode/DerivedData/(product_identifier)/TestResults/(timestamp).xctestresults/results.plist

这个 plist 文件有一个简单的格式,每个 Kiwi 规范都有一个字典数组。 “测试标识符”和“测试名称”值由 Kiwi 通过连接每个规范的(可能嵌套的)contextit 声明中的字符串生成,“测试结果”值将是 SucceededFailed.

您可能想参考 Stack Overflow 上的 someotherquestions(3 个不同的链接),讨论导出 Xcode 测试结果或自动化/脚本测试。

【讨论】:

【参考方案2】:

如果您不介意从命令行运行 Kiwi 测试,那么您可以使用xctool。这允许您将运行的测试的内容(及其通过/失败状态)输出到 JSON 文件,与原始 XC 相比,该文件对于导入第三方票务系统(如 Test Link)更友好。

安装 xctool 后,像这样运行测试:

xctool test \
 -project ProjectName.xcodeproj/ \
 -scheme SchemeName \
 -reporter phabricator > ~/Desktop/test_results.json

这将输出一个 JSON 文件,可以直接导入到Phabricator,但您可以在将 JSON 放入 Test Link 可以集成的格式之后运行另一个脚本。

【讨论】:

lukestringer:我找不到任何关于如何将这些信息传送到 Phabricator 的信息——你能详细说明一下吗?

以上是关于使用 Kiwi 获取测试结果的主要内容,如果未能解决你的问题,请参考以下文章

在 iOS 上使用委托进行 Kiwi 异步测试

使用 Kiwi、Core Data 和 Magical Record 进行单元测试

尝试将 Magical Record 与 Kiwi 一起使用时构建测试时出错

使用 Kiwi 测试 MagicalRecord 对象时,默认上下文为 nil

iOS 开发 之 测试框架kiwi

单元测试(Kiwi):调用 loadView 和 viewDidLoad 后,测试中的属性始终为零