gpt4 book ai didi

iOS - 具有重置应用程序的 UI 自动化多个脚本

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:59:20 27 4
gpt4 key购买 nike

我正在寻找可以按顺序设置我的 javascript 的解决方案,并且每个脚本何时启动它都将独立于以前的脚本。因此,我可以只运行一个脚本或一组脚本,它们的效果是一样的。

我发现我可以创建一个脚本文件并使用 #import 关键字,如下所示:

#import "AddStaticContentMissingName.js"
#import "AddStaticContent.js"

它正在运行,两个脚本都在运行,但第二个脚本从第一个脚本结束的地方开始,这让我很困扰。我可以将第一个设置为在第二个需要时结束,但我不喜欢它。我只是一个脚本来做应该测试的事情然后结束。那么是否有可能在每次测试之前重新启动应用程序或类似的东西?我想让 UI 测试尽可能自动化,那么你在使用什么?还是您正在使用 UI Automation 之外的其他工具?

奖励问题:我正在寻找如何从命令行和/或使用 Xcode 服务器运行它的解决方案。我猜 Xcode Server 有问题,但对于命令行有一个解决方案。我发现的解决方案的问题是我不是可移植的,对吗?我不知道如何将一些脚本添加到我的存储库中,如果有人尝试使用它,路径就会出现问题。我找到的命令示例:

instruments \
-w your_ios_udid \
-t "/Applications/Xcode.app/Contents/Applications/Instruments.app/Contents/PlugIns/AutomationInstrument.bundle/Contents/Resources/Automation.tracetemplate" \
name_of_your_app \
-e UIASCRIPT absolute_path_to_the_test_file

最佳答案

如果您想在脚本之间重置应用程序,您需要结合应用程序代码和 UIAutomation 代码自行完成。 (Apple 将用性能更好的东西替换 Instruments,但目前这是唯一的方法。)

例如,如果您的应用程序不使用“摇动”手势来做任何事情,您可以使用它来触发应用程序内的重新启动(不是关闭它,只是将其返回到已知状态)。然后在每个 UIAutomation 脚本的顶部,你可以只是 call the method for the shake gesture .

testing framework we wrote , 我们建立了自己的 RPC channel允许我们向自动化脚本公开非 UI 功能(如重置应用程序)。使用什么系统来实现它并不重要,只要您能够可靠地使应用程序进入已知状态即可。

关于iOS - 具有重置应用程序的 UI 自动化多个脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31140656/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com