测试时间限制和超时

重要

Visual Studio App Center 计划于 2025 年 3 月 31 日停用。 虽然可以继续使用 Visual Studio App Center,直到它完全停用,但你可以考虑迁移到几个建议的替代方法。

详细了解支持时间线和替代方案。

App Center 测试对单个测试和测试套件对每台设备强制实施测试持续时间限制。 为了防止测试无限期运行,App Center Test 会停止超过时间限制的测试或测试套件。

App Center 测试单独对每台设备强制实施时间限制。 超过一个设备上的限制不会影响其他设备上的测试。

时间限制仅适用于安装应用和运行测试所用的时间。 排队运行测试或处理已完成测试结果所花费的时间不计入时间限制。

测试在 App Center 测试中运行所需的时间可能比本地时间长,因为网络延迟和屏幕截图拍摄时间增加。 模拟器和模拟器对时间比较不准确,因为 App Center 测试仅使用实际设备。

单个测试时间限制

单个测试的时间限制为 30 分钟。 当测试达到该时间限制时,App Center Test 将停止测试,并将以下消息写入最后一个执行步骤的测试日志:

test exceeded 1800000ms

排查个别测试超时的问题

除非存在其他问题,否则 App Center 测试生成并显示超时的单个测试的测试报告。 可以使用测试报告和相关日志文件来帮助了解测试超出时间限制的原因。 有关详细信息,请参阅 测试报告

由于以下原因,单个测试可能会超出时间限制:

  • 一个 bug,就像一个永不完成的循环。
  • 仅在某些设备上或在某些情况下出现问题。 添加防御性测试代码来处理这种情况并防止测试超时。
  • 长时间运行的步骤太多。 解决方案是将测试分解为多个更小、更快的测试。

测试套件时间限制

如果使用付费的 App Center 测试计划,则每个设备的测试套件时间限制为 6 小时,或者在免费计划中使用 1 个半小时。 当测试套件达到时间限制时,App Center Test 将停止测试套件,并且不会为超时设备生成测试报告。

如果所有设备都超过了测试套件的时间限制,则 App Center Test 不会生成任何测试报告,并显示以下消息:

Test execution timed out.

对超时测试套件进行故障排除

超时测试套件可能是由测试代码问题引起的,或者因为测试套件太大而无法在时间限制内完成。 由于超时测试套件不会生成测试报告,因此很难确定超时原因。 尝试为每个测试套件运行更少的测试,以便可以获取测试报告和日志文件以查看正在发生的情况。

如果测试套件有时成功完成,请在已完成测试套件的测试报告中检查测试时间。 如果时间接近超时限制,则执行时间的微小变化可能会导致套件超时。在测试套件中运行更少的测试有助于获得一致的测试结果。

测试报告中的 “持续时间 ”是测试中所有设备(包括未超时的设备)的组合持续时间。如果不知道哪些设备达到了测试套件时间限制,可以联系 App Center 支持部门。 包括一个指向测试运行的链接,他们可以查看运行的内部数据。

获取帮助

可以在 App Center 门户中联系支持人员。 在屏幕右上角,选择“帮助 (?”) ,然后选择“ 联系支持人员 ”提交支持请求。

若要获取有关测试运行的帮助,请转到测试运行,从浏览器中复制 URL,然后将 URL 粘贴到支持对话中。 测试运行 URL 类似于 https://appcenter.ms/orgs/OrgName/apps/App-Name/test/runs/77a1c67e-2cfb-4bbd-a75a-eb2b4fd0a747