簡體   English   中英

量角器-從Bootstrap下拉菜單中選擇

[英]Protractor - Select from Bootstrap Dropdown

我有一個Bootstrap單鍵下拉菜單 ,我想使用Protractor單擊出現在下拉菜單中的選項之一。 我該如何完成?

               <div class="btn-group" ng-if="!persist.edit" dropdown>
                    <button type="button"
                            class="btn btn-default"
                            dropdown-toggle>
                        <span translate="GENERAL.ACTIONS"></span>
                        <span class="caret"></span>
                    </button>
                    <ul class="dropdown-menu" role="menu">

                        <!-- Check In -->
                        <li role="presentation">
                            <a ng-click="checkIn()"
                               role="menuitem"
                               tabindex="-1"
                               translate="ITEMS.LIST.BUTTON_CHECK_ITEM_IN">
                            </a>
                        </li>


                        <!-- Check Out -->
                        <li role="presentation"">
                            <a ng-click="checkOut()"
                               role="menuitem"
                               tabindex="-1"
                               translate="ITEMS.LIST.BUTTON_CHECK_ITEM_OUT"
                               translate-value-length="1">
                            </a>
                        </li>
                    </ul>
                </div>

我嘗試了此操作(稱為下拉菜單,但單擊失敗):

it('Should click Actions button and show dropdown', function(){
    element(by.buttonText("Actions")).click(); 
    browser.sleep(1000);
});
it('Should click the Check Item Out dropdown option and change status to checked out', function(){
    element(by.css('[value="ITEMS.LIST.BUTTON_CHECK_ITEM_OUT"]')).click();
});

首先,點擊“下拉菜單”按鈕以打開下拉菜單。 然后,選擇一個選項:

var dropDown = element(by.css("div[dropdown]"));
dropDown.element(by.css("button[dropdown-toggle]")).click(); 
dropDown.element(by.css("a[ng-click*=checkIn]")).click();  // Check In

工作代碼:

    element(by.buttonText("Actions")).click(); 
    element(by.css('[ng-click="]checkIn()"]')).click();  // Check In

從Bootstrap下拉菜單中選擇的一個干凈的解決方案是單擊buttonText,然后單擊linkText:

element(by.buttonText('your button')).click();
element(by.linkText('your selection')).click();

暫無
暫無

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

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