2012-01-19 74 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)