我正在尝试使用量角器编写自动化脚本,该脚本将从react-select下拉菜单中选择一个元素。但是,当我选择下拉菜单元素并使用.click()时,菜单不会打开。看来react-select下拉列表没有响应.click()调用。是否有另一种方法可以调用react-select下拉菜单,然后单击菜单并将其打开?
下拉菜单的代码。
<div className={ cx('select-container')} data-mr-ass='grey-info'>
<Select
classNamePrefix='info'
components={{
DropdownIndicator: () => <Icon className={ cx('icon-wrap') } iconName={iconNames.downArrow} />,
Option: (props) => <div data-mr-ass='grey-info-options'> <components.Option {...props}/></div> }}
isSearchable={false}
onChange={selectGrayPercent}
options={grayOptions}
placeholder='Select'
value={grayValue}
openMenuOnClick={true}
/>
</div>
</div>
我尝试执行$(attr('grey-info')).click();
,但菜单没有打开,所以我无法选择菜单中的任何选项。 data-mr是我使用量角器选择元素的div类名称。
您现在可以使用protractor-react-selector通过react的组件,道具和状态来标识Web元素。
您可以通过以下方式识别目标元素:
const myElement = element(
by.react('Select', { someBooleanProp: true }, { someBooleanState: true })
);
让我知道是否有帮助!