如何在主应用程序目标中使用单元测试用例(作为test_spec添加到开发窗格中)?

时间:2018-08-28 12:44:51

标签: ios xcode unit-testing jenkins cocoapods

让我说我有一个豆荚 DevelopmentPod

在此pod的podspec中,我添加了一个test_spec,如下所示-

s.test_spec 'UnitTests' do |test_spec|
test_spec.source_files = 'UnitTests/**/*.{h,m,swift}'
test_spec.ios.resources = ['UnitTests/**/*.{json}']
end 

在我的项目的Podfile中,我按如下所示添加了pod-

pod 'DevelopmentPod', :path => '<location>', :testspecs => ['UnitTests']

运行pod安装后,我看到已经创建了一个新目标 DevelopmentPods-Unit-Tests ,并使用 Manage Schemes 中的新方案,可以执行测试的情况下。

要将此方案集成到Jenkins中,我将需要单独的工作。我有多个开发吊舱,这意味着多个工作。然后还必须合并来自不同作业的测试用例执行数据。我们不能确定地说这些单独的工作测试的代码与实际构建的代码相同。

解决此问题的最佳方法是什么?

我可以轻松地将所有单元测试从不同的Pod移到我的主应用程序,并为相同的应用程序创建一个单元测试目标(这也解决了Jenkins的工作问题),但是我的主应用程序会被很多单元测试代码弄得一团糟它根本不需要。我想在容器本身中保留特定于容器的单元测试。

1 个答案:

答案 0 :(得分:0)

一旦有了目标,就需要编辑方案以使其运行测试!

Edit scheme

然后将其设置为要测试(通过将其添加到+)

Include tests in the test list

它也会自动添加到版本中

Add test to build

完成! :D