XCTest和GPX文件:位置更新可以自动开始吗?

Ver*_*con 5 gpx xctest xcode9

我已经在项目中添加了gpx文件;它的名称是TrailOfHistory.gpx。我已经编辑了项目的方案,以便Xcode 9使用此文件执行位置更新。

以下是方案的“运行”和“测试”配置的屏幕截图,其中我指定了应使用gpx文件:

方案的运行配置

方案的测试配置

当我运行应用程序时,用户位置更新(如gpx文件所给出的)会自动开始。我可以在应用程序的MKMapView上看到这种情况。

相反,当我运行我的单元测试之一时,用户位置更新不会自动开始。相反,我必须执行手动步骤,单击调试工具栏的“模拟位置”按钮并选择gpx文件。如以下屏幕截图所示:

调试工具栏的“模拟位置”菜单

我的最终目标是得出一组可以由连续集成系统执行的测试。因此,单击Xco​​de按钮不会成功。

谁能提供这方面的见识?特别是,谁能说出他/她曾经创建过XCTest的经验,其中自动开始了位置更新(如果这样的话,我会怀着希望;目前我不清楚我应该有什么期望)?

注意:一年多以前,我发现了这个非常相似的问题。希望我能引起一些新的兴趣。

Ell*_*rez 1

我已经设法使用以下方法使其工作;

  1. 转到相关方案并选择“编辑方案...”

在此输入图像描述

  1. 在左侧选择该方案的“测试”,然后单击 UnitTest 目标的“选项”按钮。

在此输入图像描述

  1. 将“位置”变量设置为您的 GPX 轨迹。

在此输入图像描述

这些步骤使我能够按预期测试我的 CoreLocation 功能。

我觉得在写这个问题时这些选项可能不可用,但以防万一这可以帮助人们解决这个问题,我想我会在这里回答。