我正在自动化一个用户可以使用不同角色登录的网站。但是,当我再次打开另一个角色的浏览器执行具有特定角色的操作后,UFT将使用旧会话打开浏览器。
注意:如果我在套件中运行所有测试用例,则会出现此问题。如果我单独运行脚本,那么它工作正常。
此外,我还使用函数删除所有cookie并清除缓存,然后使用命令"RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 255"
请帮忙。
答案 0 :(得分:2)
尝试使用Browser.DeleteCookies
和/或Browser.ClearCache
。
答案 1 :(得分:1)
听起来您的应用程序正在保存您的登录详细信息。如果它保存在浏览器中,您可以try this(可能需要一些代码来执行此操作)。清除后,您应该能够将浏览器启动到登录页面
答案 2 :(得分:0)
ClearMyTracksByProcess
对各种IE版本提供了不完整的支持。您是否检查过Cookie是否确实被删除了?
对于IE,您有多种选择:
WebUtil.DeleteCookies
或正如Motti所指出的
Browser("Google.com").DeleteCookies "Google"
Browser("Google.com").ClearCache
您可能还想查看at this article本文以及评论部分讨论了许多方法。
答案 3 :(得分:0)
对于具有不同角色的应用可能会在进入另一个会话之前注销,这是Trimble Epic指出的好主意。如果您有一个单独的日志记录页面,那么可能会关闭您用于访问Web应用程序门户的日志记录页面,以便完成或清除会话。通常,如果您的ID用于您组织的其他应用程序(可能也会导致问题),则使用相同的ID来登录Web应用程序。我总是习惯忘记将注销功能放在最后,并习惯于不时地获得相同的问题。