2012-01-19 123 views
1

我想做一件非常简单的事情。有谁知道如何知道如果使用硒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,在JavaScript在那里可能会寻找一些运行get_eval(js)更改?但我想知道一个通​​用的JavaScript,可以告诉我,如果选项卡被选中或没有?或者是否有任何硒方法,我可以只是(如focus()等...)

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

+0

您能否看到上述问题 - 我想确定是否选择了该选项卡!或者不是那样,我想有能力找出在页面上选择了所有选项卡?再一次,我不希望一旦选中标签就会发生任何事情(除了通常的网页新部分变得可见之外)! – abarik

回答

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)