QTP中的同步

发布于 2024-10-19 06:39:18 字数 47 浏览 1 评论 0原文

我正在编写一个网站的脚本。如何与网站中的进度条同步?我唱的是QTP 9.5版本。

I am in the middle of a script for a website. How can I make synchronization with the progress bar in my website? I am sing QTP 9.5 version.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

乙白 2024-10-26 06:39:18

根据具体情况,有大约十几种方法可以做到这一点。因此,尝试查看进度条是如何创建和更新的。

如果站点以流行的方式编程,则它被创建为具有内部状态的对象(即从0运行到9,当内部状态为9时,它显示完整的进度条并且应用程序已准备好。)。
如果是这种情况,请尝试捕获内部对象。如果您无法通过本机 QTP 访问它,您还可以使用页面中的 Javascript 对象(请参阅这篇优秀文章:http://www.softwareinquisition.com/-p=81.htm 或使用 QTP11,我刚刚从用户 Motti 那里得知)。

如果您需要有关此主题的更多帮助,请发布进度条的代码/html 片段。

There are like a dozen ways to do this, depending on the situation. So, try to view how the progress bar is created and updated.

If the site is programmed in a fashionable way, it is created as an object with an internal status (ie. running from 0 to 9, when the internal status is 9, it displays a full progress bar and the application is ready.).
If this is the case, try to capture the internal object. If you cannot reach it by native QTP, you can also use the Javascript object from the page (see this excellent article: http://www.softwareinquisition.com/-p=81.htm or use QTP11, I just learned from user Motti).

If you need more help on this subject, please post a code/html snippet of the progress bar.

雨的味道风的声音 2024-10-26 06:39:18

当进度条仍在运行时,您可以同时跟踪浏览器状态栏,一旦浏览器状态变为“完成”或类似内容(也取决于应用程序的实现)。

我希望你知道如何获取状态栏文本进行比较。因此,一旦浏览器状态更新,您就可以继续执行后续步骤,直到等待该状态发生变化。

为了避免无限循环,还保留一个计数器。我希望这会有所帮助。

When progress bar is still running then at the same time you can keep a track on the browser status bar and once the browser status becomes "Done" or something similar (depends on the application implementation also).

I hope you know how to get Status bar text for comparison. So once Browser status is updated you can continue with next steps till that time wait for that status to change.

To avoid infinite loop, also keep one counter. I hope this helps.

oО清风挽发oО 2024-10-26 06:39:18
For i = 1 to 10 
 if Browser().progressBar.exist =True then
   wait(10)
if Browser().progressBar.exist =True then
  raise failure "Progress Bar alive for more than 100 seconds"

只需添加这段代码即可。

For i = 1 to 10 
 if Browser().progressBar.exist =True then
   wait(10)
if Browser().progressBar.exist =True then
  raise failure "Progress Bar alive for more than 100 seconds"

Just add this code .

渔村楼浪 2024-10-26 06:39:18
  1. 使用同步点:- 这是最好的方法之一,使用它我们可以针对属性值对进行同步。例如 - 我们可以让 QTP 等待,直到任何对象(例如进度条后面的对话框)在运行应用程序时变为启用。

    或者通过这个链接,它可能会帮助你
    http://www.qtpsudhakar.com/2009/02/synchronization.html .

  2. 使用.Exist方法-QTP检查对象是否存在,然后对它们进行操作。它将等待存在()方法中指定的最长时间,如果对象在最长时间之前出现,它将移动到下一行。例如 -Browser("").Page("").Progress Bar.Exist(5) ,这里 QTP 将等待最多 5 秒按钮出现。

3.使用Harcoded Wait语句-最不受欢迎的方法。QTP将强制等待括号中指定的时间。有时假设我们为任何对象等待5秒,但对象在2秒后出现,那么它仍然会等待额外的3秒,这是ti的浪费

  1. Using Synchronization point :- This is one of the best method, using this we can synchronize against a properity-value pair . For example - We can make QTP wait till any object (say a Dialog after Progress Bar) becomes enable while running the application .

    Or go through this link, It Might help you
    http://www.qtpsudhakar.com/2009/02/synchronization.html.

  2. Using .Exist Method - QTP checks for the existence of an object and then operate on them . It will wait for maximum time specified in exist() method ,if object appears before the maximum time, it will move to the next line . For Example -Browser("").Page("").Progress Bar.Exist(5) ,Here QTP will wait maximum 5 seconds for the button to appear .

3.Using Harcoded Wait statement - Least prefered approach .QTP will forcefully wait for the time specified in parenthesis .Some times suppose we have given a wait of 5 secs for any object, but object appear in 2 sec, then still it will wait for extra 3 secs, which is wastage of ti

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文