当前未针对测试操作配置Xcode项目方案


82

我正在尝试为我的iOS应用程序运行Xcode单元测试。我愿意在通过USB连接到Mac的iPad上进行操作。我正在尝试从命令行运行测试,以便稍后从Jenkins触发它。

以下是我目前在命令行中输入的内容以及出现的错误。请帮忙。

编码:

xcodebuild test -scheme MyApplication -destination "platform=iOS,name=iPad"

错误:

当前未为计划操作配置方案MyApplication


这似乎不是与詹金斯有关的问题,因为您尚未使用詹金斯。我建议您删除jenkins标签。并在此处搜索类似的问题,以查看它们是否有帮助。stackoverflow.com/questions/20237064/…stackoverflow.com/questions/25970396/…–
mainframer

谢谢你的建议。我已经遇到了这个例子。看起来与我的问题没有直接关系。就我而言,这可能与架构共享有关。我在我的Xcode项目,试图共享/取消共享几个方案,删除并以不同的方式再现它们-仍然没有运气..
danR

Answers:


199

对我来说,问题是我的计划没有添加任何测试:

方案编辑

通过单击“ +”按钮将测试包添加到我的方案中,然后可以由Xcode和xcodebuild构建该方案。


3
如果您试图在打开项目的同时从控制台运行它们,它也会这样做。

@iwasrobbed保存了我的一天!这可能是答案之一,而不是评论
anoo_radha

我添加了测试方案,但未选中“测试”。检查是否有效,
drees

如何打开菜单?
Bogdan Bogdanov

@BogdanBogdanov在“停止”按钮右侧的Xcode的左上角,单击“方案”,然后单击“编辑方案...”。
大卫·亨特

33

对于每个在这个问题上苦苦挣扎的人。

我的解决方案是:

  1. 选择测试目标
  2. 管理方案
  3. 在左侧菜单中选择运行
  4. 在标签中选择信息
  5. 从下拉菜单中选择“可执行目标
  6. 点击关闭

18

通过从Xcode删除重复方案来解决此问题。可以通过Product- > Scheme-> Manage Schemes在Xcode中添加/删除/共享/编辑方案


2
谢谢!这就是我需要的线索,我将提到一个更微妙的方案:第二种方案,具有相同的名称,但嵌入到一个依赖项目中。似乎这也使xcodebuild失败了,因为它可能更喜欢从依赖项目继承的方案。
danielpunkass

2
要检查重复的方案,请运行:xcodebuild -workspace path/to/workspace/file -listxcodebuild -project path/to/project/file -list。重复的方案可能是工作区以前版本的遗留物,因此git clean您只需要一个简单的方案即可。
Ohad Schneider

3
  • 您应该在Jenkins上检查工作区数据,并查看哪个* .xctest已经上传。然后,您必须像在Jenkins上一样,将UI / Unit测试目标重命名为xcode项目中的* .xctest数据。
  • 或从Jenkins清除工作空间,然后使用新的UI / Unit测试目标再次推送所有数据。

(当然,您必须确保已经制定了项目计划。)



1

请按照以下步骤解决此错误。

  1. 在顶部选择您的项目方案。
  2. 单击管理方案
  3. 在弹出窗口中选择测试目标。
  4. 确保单击弹出窗口左下方的“编辑”按钮。
  5. 选择构建
  6. 点击“运行”下面的复选框
  7. 关闭弹出窗口。

0

我的问题是Tests.swift文件正在导入不再存在的模块(我将项目重命名为Targets)。检查以确保所有测试文件都在导入当前现有的模块。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.