我想测试一个简单的用户创建表单,其中包含一些下拉控件(每一个都是angular-ui-select)
我没有找到任何关于如何选择其中一个项目的文档。
这是我的HTML:
<ui-select ng-model="user.assignedGroup" theme="selectize" class="dropdown">
<ui-select-match placeholder="{{::strings('userDetails.assignToGroupPlaceHolder')}}">{{$select.selected.name}}</ui-select-match>
<ui-select-choices repeat="group.name as group in groups">
<span ng-bind-html="group.name | highlight: $select.search"></span>
</ui-select-choices>
</ui-select>
我能够通过以下方式打开下拉列表:
元素(by.model(&#39; user.assignedGroup&#39))。单击();
下一步是什么?
修改
我找到的当前解决方案是使用输入和搜索特定元素并且&#34;点击&#34;输入键,但这不是我想测试此控件的方式。我有一个不可搜索的下拉控件....
var selectGroupButton = element(by.model('user.assignedGroup'));
var selectInput = selectGroupButton.element(by.css('.ui-select-search'));
// click to open select
selectGroupButton.click().then(function(){
// type some text
selectInput.sendKeys('group1\n');
});
答案 0 :(得分:-2)
您可以使用不同的css选择器访问子元素,例如:
$('.dropdown ui-select-match:first-child');
然后你可以实现你想要的行为。