无法用量角器点击按钮
Not able to click on a button with protractor
我尝试使用量角器点击按钮似乎不起作用:
这是我尝试过的方法:
const city = element.all(by.css('.filter-bar .filter-button-wrapper .filter-button')).get(0).click();
这是 html :
<div class="content-wrapper list-page">
<div class="content">
<div class="section-wrapper page-full-width">
<div class="section page-centered">
<div class="filter-bar"><span class="medium-utility-label filter-by-label">Filter by:</span>
<div role="button" class="filter-button-wrapper" tabindex="0" aria-label="Filter by City: All" aria-haspopup="true" aria-expanded="false">
<div class="filter-button">City
<svg class="filter-button-caret icon icon-caret-down" width="16px" height="16px" viewBox="0 0 16 16">
<path d="M7.6741598,11.3413318 L8.03952616,11.7324251 L8.40489252,11.3413318 L14.8653664,4.42595055 L14.1346336,3.74328687 L7.6741598,10.6586682 L8.40489252,10.6586682 L1.86536636,3.65866816 L1.13463364,4.34133184 L7.6741598,11.3413318 Z M7.6741598,11.3413318" fill="#979797"></path>
</svg>
</div>
<div class="filter-popup">
<ul>
<li>
<a class="category-link selected" href="?" rel="nofollow">
<svg class="selected-filter-checkmark icon icon-checkmark" width="16px" height="16px" viewBox="0 0 16 16">
<path d="M6.2,14.4L0,8.2l2.5-2.5l3.5,3.5c0.1,0.1,0.2,0.1,0.2,0L13.5,2L16,4.5L6.2,14.4z"></path>
</svg>All</a>
</li>
<li><a class="category-link" href="?location=Chicago%2C%20Illinois" rel="nofollow">Chicago, Illinois</a>
</li>
<li><a class="category-link" href="?location=Edmonton%2C%20Alberta%2C%20Canada" rel="nofollow">Edmonton, Alberta, Canada</a>
</li>
单击按钮应打开下拉列表。
不确定为什么在没有此类元素时尝试使用三个 类 来单击该元素,以及为什么在只有一个按钮时使用 element.all...但是我可以假设您需要最后一个 div 元素(就在图标之前)。
请试试这个:
element(by.cssContainingText(".filter-button", "City")
我尝试使用量角器点击按钮似乎不起作用:
这是我尝试过的方法:
const city = element.all(by.css('.filter-bar .filter-button-wrapper .filter-button')).get(0).click();
这是 html :
<div class="content-wrapper list-page">
<div class="content">
<div class="section-wrapper page-full-width">
<div class="section page-centered">
<div class="filter-bar"><span class="medium-utility-label filter-by-label">Filter by:</span>
<div role="button" class="filter-button-wrapper" tabindex="0" aria-label="Filter by City: All" aria-haspopup="true" aria-expanded="false">
<div class="filter-button">City
<svg class="filter-button-caret icon icon-caret-down" width="16px" height="16px" viewBox="0 0 16 16">
<path d="M7.6741598,11.3413318 L8.03952616,11.7324251 L8.40489252,11.3413318 L14.8653664,4.42595055 L14.1346336,3.74328687 L7.6741598,10.6586682 L8.40489252,10.6586682 L1.86536636,3.65866816 L1.13463364,4.34133184 L7.6741598,11.3413318 Z M7.6741598,11.3413318" fill="#979797"></path>
</svg>
</div>
<div class="filter-popup">
<ul>
<li>
<a class="category-link selected" href="?" rel="nofollow">
<svg class="selected-filter-checkmark icon icon-checkmark" width="16px" height="16px" viewBox="0 0 16 16">
<path d="M6.2,14.4L0,8.2l2.5-2.5l3.5,3.5c0.1,0.1,0.2,0.1,0.2,0L13.5,2L16,4.5L6.2,14.4z"></path>
</svg>All</a>
</li>
<li><a class="category-link" href="?location=Chicago%2C%20Illinois" rel="nofollow">Chicago, Illinois</a>
</li>
<li><a class="category-link" href="?location=Edmonton%2C%20Alberta%2C%20Canada" rel="nofollow">Edmonton, Alberta, Canada</a>
</li>
单击按钮应打开下拉列表。
不确定为什么在没有此类元素时尝试使用三个 类 来单击该元素,以及为什么在只有一个按钮时使用 element.all...但是我可以假设您需要最后一个 div 元素(就在图标之前)。 请试试这个:
element(by.cssContainingText(".filter-button", "City")