【问题标题】:Check if Tab on Web Page is selected using Selenium检查是否使用 Selenium 选择了网页上的选项卡
【发布时间】:2012-01-19 17:10:28
【问题描述】:

我想做一件非常简单的事情。有谁知道我如何知道是否使用 selenium RC Python 客户端在网页上选择了一个选项卡?

标签是指以下链接中的以下示例:
http://clagnut.com/sandbox/csstabs/?writingtext=csstabs#
http://esdi.excelsystems.com/wsexmp/DIVTAB.pgm?wsnum=00096
http://www.hongkiat.com/blog/drop-down-menu-30-free-scripts-to-enhance-header-navigation/

我知道我可以使用 javascript 运行 get_eval(js),那么 javascript 可能会在哪里寻找一些变化?但我想知道一个通​​用的 javascript,它可以告诉我是否选择了一个选项卡?或者是否有任何我可以使用的 Selenium 方法(如 focus() 等...)

原因是,我可以通过调用click(tab_locator) 轻松点击标签。但我想确定我是否选择了选项卡。没有is_tab_selected(tab_locator)这样的方法吗?

【问题讨论】:

  • 你能看到上面的问题吗?我想确定我是否选择了标签!!或者不仅如此,我希望能够找出页面上选择的所有选项卡?同样,一旦选择了选项卡,我不希望发生任何事情(除了网页的新部分变得可见的通常情况)!!

标签: javascript python selenium


【解决方案1】:

在我测试的页面中,页面的设计者对每个选项卡都使用了一个 span 元素。选择选项卡时,跨度类设置为“已选择”。我使用以下方法来验证是否选择了某个选项卡。

def verifySelectedTabName(self, tabText):
    if self.selenium.is_element_present("css=div.'tabheader' span.selected:contains(%s)"%tabText):
        return 1

    return 0

在您引用的示例页面中,选项卡看起来像是锚元素。您应该能够查找锚的类名。例如,

self.selenium.is_element_present("css=div#container1 ul.tabs a.tab-active:contains(%s)"%tabText)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-03-28
    • 1970-01-01
    • 2012-09-13
    • 2013-03-17
    • 2014-06-15
    • 2019-02-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多