xcode 如何对每个生成自动执行单元测试?

4urapxun  于 2023-01-21  发布在  其他
关注(0)|答案(4)|浏览(186)

如何对每个生成自动执行单元测试?
我尝试将单元测试目标作为依赖项添加到项目目标中,但这似乎无法运行实际测试。

bejyjqdl

bejyjqdl1#

将“生成后测试”生成设置设置为“是”。选择“产品”〉“生成对象”〉“生成用于测试”以生成项目并运行测试。

Xcode 5更新

Xcode 5不支持构建后测试构建设置。我不知道有什么方法可以在Xcode 5中的每个构建上自动运行测试。从OS X菜单栏选择产品〉测试或按Command + u在Xcode 5中运行单元测试。

ercv8c1e

ercv8c1e2#

要建立目标之间的关系:

  • 在方案选择器中,选择“编辑方案...”
  • 选择测试阶段
  • 确保您看到的是“信息”选项卡,而不是“参数”选项卡
  • 单击“+”并指定测试目标
  • 您应该看到测试列表。单击“确定”

然后,要运行测试,请选择产品〉测试,或直接从键盘上选择U。

  • 构建您的主要目标
  • 构建您的测试目标
  • 根据主目标的类型执行它,运行测试
unftdfkk

unftdfkk3#

下面是我必须做的事情,以使Xcode 4在构建时自动运行单元测试。
1.为你的主要目标启用“构建后测试”。(参见MarkSzymczyk的回答)
1.使测试目标能够在主目标的生成方案的生成阶段运行。

  • 单击产品〉管理方案菜单项
  • 双击目标的方案(我的列表中只有一个)
    *在左侧展开“构建”折叠面板
    *单击折叠面板中的“生成”选项
  • 您应在右侧看到测试项目,确保已单击Run复选框
35g0bw71

35g0bw714#

我想我会给予一个高级别的解释,说明我的工作步骤。(OS X 10.7.4,Xcode 4.3.3)如果你不熟悉构建阶段和方案之类的东西,这里有一个来自苹果的很好的资源:http://developer.apple.com/library/ios/#documentation/ToolsLanguages/Conceptual/Xcode4UserGuide/Building/Building.html
对于一个新项目,确保在输入新项目名称的页面上选中“包含单元测试”复选框。单击“项目导航器”中的项目图标,查看自动创建的两个目标。它们的名称类似于“MyCocoaApp”和“MyCocoaAppTests”。选择MyCocoaAppTests目标(不是MyCocoaApp!),然后从视图顶部的选项中选择“构建设置”。在视图顶部附近的搜索栏中输入“构建后测试”。您应该会看到“构建后测试”的单个设置,默认设置为NO。点击“否”设置,然后将其更改为“是”。再一步,调出项目的方案。(产品菜单-〉编辑方案...)在左边的列中选择“构建”。你应该看到你的两个目标和一些复选框在右边。在“MyCocoaAppTests”行,选中“运行”复选框并点击“确定”。2你完成了。3键入Command-B。4你的应用程序将构建,单元测试将构建,单元测试将运行,并在默认情况下因错误而失败。
如果你必须在一个已经存在的项目中添加单元测试,那就有点麻烦了。首先,请按照Apple的以下说明操作:https://developer.apple.com/library/mac/#documentation/developertools/Conceptual/UnitTesting/02-Setting_Up_Unit_Tests_in_a_Project/setting_up.html#//apple_ref/doc/uid/TP40002143-CH3-SW1
如果你没有错过任何步骤,你现在应该已经设置好了单元测试,当你选择(Product Menu -〉Test)时,它就会运行。1)对于MyCocoaAppTest目标,将“构建后测试”设置设置为YES;2)在应用方案的“构建”部分中选中MyCocoaAppTest目标的“运行”复选框。最后一步:您必须向MyCocoaAppTest目标添加一个新的“运行脚本”构建阶段(不是MyCocoaApp构建阶段!)。选择测试目标,单击“构建阶段”,单击右下角的“添加构建阶段”图标,选择“添加运行脚本”。将在其他构建阶段下方打开“运行脚本”部分。脚本字段中包含以下文本:键入脚本或从工作区拖动脚本文件。在该字段中,输入:“${SYSTEM_DEVELOPER_DIR}/工具/运行单元测试”。(包括引号。)
就是这样。按下Command-B。你的应用应该构建。你的测试应该构建并运行。祝你好运。

相关问题