2016-09-06 12 views
0

親愛なるstackoverflowers。セレン化物のテストでMaterialのチェックボックスと対話できない

我々のプロジェクトでは、UIの自動化テストを書くためにSelenideフレームワークを使用しています。 最近Material-UIに切り替えて、簡単な場合は技術的な問題に直面しましたcheckbox。 チェックボックスを選択しようとしています。

SelenideElement rememberMeCheckBox = $(By.cssSelector("input[type=\"checkbox\"]")); 

rememberMeCheckBox.setSelected(isSelected); 

しかし、私は例外を取得することをやっている間:

Element should be visible {input[type="checkbox"]} 
Element: '<input type="checkbox" value="on" displayed:false></input>' 

そして、私は本当のDOMをチェックするとき確かに、それはopacity: 0含まれていた:私はで不透明度を設定し

enter image description here

強制的に私の自動化テストがうまくいく。 それに対処するには?

enter image description here

答えて

0

それはセレン化の問題が、一般的なセレンの問題ではありません。 セレンは、 "opacity:0"の要素を不可視として定義しています。 このチェックボックスを有効にするにはを参照してくださいHow to force Selenium WebDriver to click on element which is not currently visible?

1つの簡単な方法は、その親要素をクリックすることです:

$("input[type=\"checkbox\"]").parent().click(); 

、少なくともそれは私のために動作します。

+0

ありがとうございます。あなたのソリューションは私のために働く。 – AlexeiBerkov

関連する問題