量角器 JavaScript 在具有子类别的下拉框中选择值

Protractor JavaScript choose value in dropdown box that has subcategory

我尝试从下拉框中选择不同的值,但我的下拉框有子类别,因此我无法找到 Web 元素。例如,假设我有以下内容:

dropDownBox-> Bank Account     -> account#76789
                               -> account#99222
                               -> account#55555

           -> Credit Card      -> card#1234567
                               -> card#4444499
                               -> card#4406699

HTML

<select name="ctl00$main$ddlPaymentAccounts" id="main_ddlPaymentAccounts" class="sel" onchange="javascript:checkPayAcct();" title="Select Payment Account" style="width: 220px!important">
    <option value="0">
        Select Payment Method
    </option><optgroup label="Bank Account">
        <option title="Account Holder:My Test | Bank Number:044002161 | Account Type:DA | Account Number************6789" value="OTC_260511" selected="selected">
            ChazeBank
        </option>
    </optgroup><optgroup label="Credit Card">
        <option title="Account Holder:My Test | Expiration:0430 | Account Type:VI | Account Number************4499" value="CC_838022">
            AmericanExpressCard
        </option>
    </optgroup>
</select>

我尝试使用 ID 和 XPath 定位元素,但没有成功,因为 Protractor 无法定位网络元素

    var dropdownXPath = "//*[@id='main_ddlPaymentAccounts']/optgroup[2]/option[1]";
    var webElement = element(by.xpath(dropdownXPath));
    browser.wait(EC.elementToBeClickable(webElement), 60000);
    webElement.click();

你的xpath是对的,所以没问题。

如果您在此步骤中没有遇到任何错误(即元素存在并被单击),但没有任何反应,请尝试此