将单元测试移动到 xcode 中的不同文件夹

Posted

技术标签:

【中文标题】将单元测试移动到 xcode 中的不同文件夹【英文标题】:Moving unit tests to a different folder in xcode 【发布时间】:2017-03-21 11:44:20 【问题描述】:

当我创建一个新项目时,Xcode 将在我添加单元测试的项目中创建一个测试目标以及一个测试文件夹和组。随着项目的发展,我将代码组织成文件夹和组。我继续将所有单元测试添加到 Xcode 创建的文件夹中,现在在一个平面文件夹中拥有一个包含数百个单元测试文件的文件夹。

有两个选项,我可以开始在我的测试文件夹中复制项目结构。我想要做的是停止将测试放在这个文件夹中,并且当我在我的项目中创建一个新组件时,我有一个包含多个源文件的文件夹,我想将相关的测试放入该文件夹中的一个名为测试的子文件夹下。

测试被添加到测试目标而不是应用目标,因此它与我所看到的没有任何区别。我不断在项目导航器中上下滚动,搜索与我正在处理的代码相关的测试,反之亦然。

我没有找到任何文件表明有任何理由必须将它们分开。

有没有人尝试过这种在项目文件夹中混合测试和源代码的方法?

有谁知道像这样构建项目可能产生的任何负面影响?

谢谢

【问题讨论】:

【参考方案1】:

我更喜欢混合测试代码和生产代码,并在这里写过:https://qualitycoding.org/rearrange-project-test-code/

主要优点是它可以更轻松地找到配对的来源。它非常适合应用。

主要缺点是库,人们希望能够只获取生产代码并为自己构建它。 (所以对于库,我将测试代码分开。)

【讨论】:

以上是关于将单元测试移动到 xcode 中的不同文件夹的主要内容,如果未能解决你的问题,请参考以下文章

将单元和 UI 测试添加到 Xcode 中的现有项目

如何在 Xcode 7 中动态更改单元测试的目标?

Xcode单元测试:尝试将测试数据从单元测试写入项目文件夹时权限被拒绝

iOS 应用程序的 Xcode 单元测试中的链接问题与嵌入式 C++ 代码

可以将 C++ 单元测试集成到 Xcode 的 XCTest 中吗?

删除 XCode 8 中的单元测试