【发布时间】:2019-12-23 05:52:11
【问题描述】:
我正在创建半自动化的应用程序(用户正在打开标签(注意),如果他想转储其中一个,他只需点击热键)。
但是当用户打开很多标签时,我需要知道我应该切换到哪一个。 我如何获得 currenttab 索引。或者切换到 Selenium C# 上的当前选项卡?
string windowHandle = Browser.WindowHandles.Last();
string windowHandle = Browser.WindowHandles.First();
string windowHandle = Browser.WindowHandles[1];
... 不适合我。
【问题讨论】:
-
我想知道用户在哪个标签中。提醒您,用户可以在 chrome 上打开和关闭标签页。
-
在使用 Webdriver 协议的半自动化应用程序中不可能。Webdriver 客户端需要跟踪活动选项卡。 Selenium 将无法自行检测用户操作,因为如果用户在浏览器中执行任何操作,则没有反向通信。 Webdriver 客户端仅解析客户端生成的请求的响应,即您的情况下的 c# 绑定。您可以查看 Selenium 架构以获得更好的理解。
-
你推荐哪个扩展?我可以重新创建项目。走哪条路?最好在 C# 上。谢谢。
-
我只想说一件事 - 我只使用活动标签。即使没有硒,我怎么能做到这一点。
标签: c# selenium tabs window-handles webdriver-w3c-spec