如何在进行测试脚本录制时重新启动应用程序 inn squish
Posted
技术标签:
【中文标题】如何在进行测试脚本录制时重新启动应用程序 inn squish【英文标题】:How to restart the application inn squish while doing test script recording 【发布时间】:2020-09-17 10:17:38 【问题描述】:我有一个应用程序,它接收键输入 ctrl+alt+R 以重新启动自身。因此,在测试用例中,当我单击录制按钮时,应用程序启动并按下 ctrl+alt+R,然后应用程序询问我是否要重新启动它,所以我单击是,这会导致应用程序首先自行关闭,这会导致挤压认为该应用程序不再可用并且录音会自动关闭。我应该如何进行录音以等待应用重新出现?
【问题讨论】:
【参考方案1】:Squish 检测到原始 AUT(被测应用程序)关闭,如果没有附加 AUT,Squish 会在一段时间后结束录制。
有两件事需要解决:
新启动的 AUT 实例必须被 Squish 连接起来。这可能会自动发生(使用 Java 和 Java AUT,或者使用 Unix 上的 Qt AUT),但如果不是,那么也必须解决这个问题,例如让第一个 AUT 实例通过 Windows 上的 Squish 的 dllpreload.exe 工具启动它(在 Qt AUT 的情况下)。 (请参阅Shell Scripts and .bat-Files as AUT,这基本上是需要做的,尽管本节讨论的是 shell 脚本和 .bat/batch 文件。)
一旦解决了新 AUT 实例的连接问题,让脚本录制到此结束就好了。然后,在最后记录的命令之后,插入test.breakpoint() 并执行到该命令。到达断点后,使用 Run > Record Snippet 开始记录进一步的操作,现在在新的 AUT 实例上。
在为这个新实例执行任何脚本命令之前,您也应该通过waitForApplicationLaunch()同步与新 AUT 实例关联的新“application context”。
【讨论】:
以上是关于如何在进行测试脚本录制时重新启动应用程序 inn squish的主要内容,如果未能解决你的问题,请参考以下文章