簡體   English   中英

Selenium Java試圖單擊列表元素

[英]Selenium java trying to click list element

我正在嘗試通過硒webDriver測試delta.com網站,並且停留在乘客信息頁面上,下面提供了如何訪問它的說明。 一切正常,除了我無法選擇任何列表字段。 列表打開,programm沒有選擇任何內容,並且走得更遠。

例如,我正在嘗試選擇性別。

@FindBy(xpath = "//*[@id=\"gender0-button\"]/span[1]")
private WebElement genderSelection;
@FindBy(xpath = "//*[@id="gender0-menu"]/li[2]")
private WebElement genderMale;

public void setGender(){
    genderSelection.click();
    genderMale.click();
}

但是它什么也沒選擇,更進一步。

然后,我嘗試使用隱藏的<select> ,xpath =“ // * [@ id =” gender0“]”。 在那里,我單擊帶有“男性”文本的選項。 也不行。

然后,我嘗試使用javascript。 如果我手動更改為“男性”,則<span>中的某些屬性會更改。 所以我確實是這樣(設置的ID會有所不同):

js.executeScript("arguments[0].innerText = 'Male'", genderMale);
js.executeScript("document.getElementById('gender0-button').setAttribute('aria-activedescendant', 'ui-id-74')");
js.executeScript("document.getElementById('gender0-button').setAttribute('aria-lablelledby', 'gender0-label ui-id-74 gender0-required')");

這也行不通。 它將文本設置為跨度,但隨后仍然出現我未填寫性別字段的錯誤。

所以也許有人知道如何至少設置性別。

如何前往旅客信息頁面:預訂行程->航班->往返->從-到(我選擇JFK-SVO)->這個月的任何日期->確切的日期->錢->查找航班->選擇任何票證類型->繼續->您在那里。

編輯1. 頁面的HTML

解決了。 我需要突出顯示“男性”選項,然后單擊。

genderSelection.click();
genderMale.sendKeys("Male");
genderMale.click();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM