Selenium selected option in dropdown not displayed correctly

Posted by luckyfool on Stack Overflow See other posts from Stack Overflow or by luckyfool
Published on 2013-10-18T09:52:59Z Indexed on 2013/10/18 9:53 UTC
Read the original article Hit count: 186

Filed under:
|

I have the following issue with Selenium Webdriver. There are two dropdown menus on a page i am testing "brand" and "items". The options of "items" depend on which brand you choose. I am trying to iterate through all possible choices and print brand-item pairs. I use two possible ways to pick an option from each dropdown menu Using Select():

def retryingSelectOption(name,n):
    result=False
    attempts=0
    while attempts<5:
        try:
            element=Select(driver.find_element_by_name(name))
            element.select_by_index(n)
            print element.all_selected_options[0].text
            result=True
            break
        except StaleElementReferenceException:
            pass
        attempts+=1
    return result    

And using .click():

def retryingClickOption(name,n):
    result=False
    attempts=0
    while attempts<5:
        try:
            driver.find_element_by_name(name).find_elements_by_tag_name("option")[n].click()
            result=True
            break
        except StaleElementReferenceException:
            pass
        attempts+=1
    return result

My problem is that at ,what seem to me as random moments (sometimes it works sometimes it does not), even though the above functions return True and printing out the selected option shows me the correct answer, the browser still displays the previous option. So basically Selenium tells me i have picked the right option but the browser displays the previous one.No idea what is wrong.

© Stack Overflow or respective owner

Related posts about python

Related posts about selenium