2017-11-23 13 views
0

複数の選択ボックスで複数の選択肢をクリックしようとしています。しかし私は同じことをすることができません。Control +実行方法分度器で複数選択オプションをクリックしますか?

は、私がこれまでにしようとしているもの:

let input = $('input'); 
let option1 = input.all(by.cssContainingText('option','One')); 
let option2 = input.all(by.cssContainingText('option','Two')); 
option1.click(); 
browser.actions().mouseMove(option2).keyDown(protractor.Key.CONTROL).click().perform(); 

このソリューションは、this answerに基づいていますが、それはエラーがスローされます:unknown error: at least an element or offset should be set。また、clickイベントが呼び出されている間にbrowser.pause()ログにPromise rejection was handled asynchronouslyが表示されます。

助けていただけたら幸いです!

答えて

1

私はこの問題を解決することができました。 何らかの理由で私がオプションを選択するために使用した方法が機能しませんでした。そこで、elementベースのロケータを別の方法で使用するようにコードを変更しました。

let options = $$('multiselect-dropdown option'); 
options.get(0).click(); 
browser.actions() 
    .mouseMove(options.get(1)) 
    .keyDown(protractor.Key.CONTROL) 
    .click() 
    .keyUp(protractor.Key.CONTROL) 
    .perform(); 

すべて正常です。

関連する問題