1

我想在 ranorex 中应用动态等待。

要打开一个网页,我使用了这样的静态等待:-

Host.Local.OpenBrowser("http://www.ranorex.com/Documentation/Ranorex/html/M_Ranorex_WebDocument_Navigate_2.htm",
                      "firefox.exe");
Delay.Seconds(15);                 

请详细给我一个适当的解决方案。等待你谦虚的答复。

4

2 回答 2

2

最简单的方法是使用等待文件加载的方法。这允许您设置一个等待的最大值,但在元素完成加载时将继续。这是关于它的文档,

http://www.ranorex.com/Documentation/Ranorex/html/M_Ranorex_WebDocument_WaitForDocumentLoaded_1.htm

于 2014-10-17T15:28:28.203 回答
1

首先,您应该更详细地了解您的问题。Atm 您实际上没有说明任何问题,甚至没有指定超时的原因。

我实际上不明白为什么你需要在那里超时。在您的测试中要与之交互的下一个元素将具有自己的搜索超时。根据我的经验,我没有必要或没有理由延迟浏览器打开。

如果你真的需要一个动态延迟,这就是你应该验证的。

1) 选择一个在您打开浏览器时始终存在于网页上的元素,或者

2)选择下一个要与之交互的元素,并在这两个元素之上构建延迟

假设我们有一个输入字段,我们需要在页面打开后向其中添加文本。最好的办法是等待该元素存在,然后继续测试用例。

因此,我们等待元素存在(将元素添加到存储库):

repo.DomPart.InputElementInfo.WaitForExists(30000);

然后我们可以继续测试功能:

repo.DomPart.InputElement.InnerText = "Test";

waitForExists 所做的是等待 30 秒(30000 毫秒)以使元素存在。如果未找到该元素,则可以从中捕获异常并添加错误处理。

动态功能必须由您添加。在 ranorex 中,您总是会遇到超时。它可能是一个指定的延迟,它可能是一个 repo 元素的超时,等等。“动态”功能主要是你来做的。

如果这不是您正在寻找的答案,请说明延迟的原因,我会尝试更准确地回答您的具体问题。

于 2015-11-02T09:13:02.527 回答