В моем проекте у меня есть выпадающий список, из которого я выбираю опцию на основе текста. Моя цель состоит в том, чтобы проверить, как только опция выбрана, текст, который отображается в выпадающем списке (как на картинке ниже), соответствует моему входному значению или нет.
Мой код выглядит следующим образом:
this.selectDropdownByText = async function(container, inputText){
await helpers.clickWhenClickable(element(by.cssContainingText('option',inputText)), 5000, "the selected option is not clickable");
await helpers.clickWhenClickable(CL.Save_Button_BottomPanel,10000);
await sync.waitUntilElementVisible(await CL.Save_success_Massage, 10000);
await sync.waitUntilElementInVisible(await CL.Save_success_Massage, 10000);
await helpers.waitForElementVisibility(container);
return await container.getSelection().getText();
В кодах нет проблем, пока мы не достигнем оператора return. Однако оператор return возвращает ошибку, когда я пытаюсь container.getSelection().getText()
. Ошибка TypeError: container.getSelection is not a function
С другой стороны, если я попытаюсь container.getText()
, он возвращает все параметры из выпадающего списка.
Есть ли способ сделать это?
HTML-код:
<select _ngcontent-c11="" class="form-control ng-touched ng-dirty ng-valid" formcontrolname="dcbsId"
id="directClassBased">
<!---->
<!---->
<option _ngcontent-c11="" value="1: 54756697-0CC6-45A2-B857-E96E132D46B0" class="ng-star-inserted">HS Com A</option>
<option _ngcontent-c11="" value="2: FA377EE4-66C4-46ED-992D-8D17A6756586" class="ng-star-inserted">HS Com B</option>
<option _ngcontent-c11="" value="3: 7BA46C9C-6150-4E5D-8FD0-270D6387D772" class="ng-star-inserted">HS Com C</option>
.....
.....
<option _ngcontent-c11="" value="12: 08FD1A93-6507-4ABB-9420-DD2E62F9562C" class="ng-star-inserted">CL TRC</option>