如何在现有的ios Test项目中启用xcode 7 UI测试

时间:2015-09-28 20:30:36

标签: xcode xctest xcode-ui-testing

在现有的ios应用和项目中,如何启用现有测试目标和类以支持UI测试和记录UI测试按钮?

我可以添加一个新的测试目标,如果我这样做,我会看到记录按钮,但是如果我想在现有的测试类和目标中添加一些UI测试功能呢?

2 个答案:

答案 0 :(得分:3)

UI测试与正常的单元测试用例位于不同的目标中,因此您不能只将UI测试添加到现有的测试用例中。

答案 1 :(得分:0)

您应该使用新的UI测试目标来添加/执行您的ui测试以实现干净的构建和维护目的。但是,假设您尝试在单元测试类中调用XCUI * API并启用具有单元测试目标的UI记录,我看到那里出现的几个问题,

  1. 如果您使用swift2进行单元测试并使用@testable import {module}包含主应用程序模块,当您从此测试用例中调用XCUI * menthods时,swift将抛出错误
  2.   

    模块{module}未编译用于测试

    由于UI测试作为单独的进程运行,因此无法加载应用程序代码依赖项。

    1. 由于XCUI * api依赖于Obj-C库,因此调用UI测试方法会使您在单元测试目标中包含Objective-C Bridging Header文件。它不会出错,但会污染你的目标。
    2. 我还确认您需要将测试用例文件添加到UI测试目标,以便启用UI测试记录按钮。
    3. 将UI测试作为单独的目标运行还有其他好处,例如,灵活地指定目标只能从命令行工具运行单元测试或UI测试,并且易于维护UI测试执行的干净状态。