尝试获取代码覆盖时出现错误

时间:2017-08-21 05:30:28

标签: xcode code-coverage slather

我希望使用Slather将单元测试代码覆盖率导出到TeamCity,但是我遇到问题甚至让它运行,我有点困惑,因为我没有发现其他人遇到此错误。希望有人可以帮助我。我是一名构建工程师,而不是XCode开发人员,我们的开发人员似乎不知道是什么导致它。

无论如何,为了试用Slather,我获得了一台新的Mac,所以我安装了RVM和Ruby 2.4.1。然后我安装了Slather宝石,这一切都非常简单快捷。

我构建了XCode项目,运行了单元测试并看到XCode在IDE中显示代码覆盖率数据。

在我的终端中,我运行了slather coverage命令,它返回错误:

Slathering...
/Users/me/.rvm/gems/ruby-2.4.1/gems/CFPropertyList-2.3.5/lib/cfpropertylist/rbCFPropertyList.rb:349:in `load`: File /Library/Developer/CommandLineTools/../Info.plist not readable! (IOError).

所以我的问题是我错过了什么?

Mac是新的,我只添加了XCode v8.2.1,RVM,Ruby和Slather。 Slather吸收了所需的所有依赖项。 XCode项目已打开测试覆盖率,Slather站点中没有任何内容提到我需要修改项目设置中的plist引用路径。

我甚至去了博客网站并尝试使用他们的演示项目来使用Slather https://cocoacasts.com/how-to-generate-code-coverage-reports-in-xcode-with-slather/,我的项目也遇到了同样的错误。

Slather似乎只适用于其他大多数人,所以我希望在Mac环境中设置一些非常简单的小东西。

1 个答案:

答案 0 :(得分:0)

很抱歉发布我自己的问题的答案,但我发现我做错了什么,这是一个环境问题。

从这个答案中找到了解决方案:StackOverflow XCode Select Active Developer Directory Error

问题是我从XIP打开了XCode,实际上是从Downloads文件夹运行它而不是Applications文件夹。但是,XCode命令行工具期望它在应用程序中。一旦我将XCode放在正确的位置,Slather工作正常。

基本上是Windows用户的新手OSX错误。