2016-10-19 13 views
0

に失敗し、私は私が試したチェックボックス呼び出し、「クリック()は、」私のテストケースの一つに分度器

のクリックを実行する必要があります -

var cb = element(by.css('#port'+text)); 
cb.click() // failed 

browser.actions().mouseMove(cb).click().perform(); 

誰かがこのような問題に直面している場合は、これを行うための他の回避策がありますか?

updated - ハードコードで試しましたd値:

テンプレート

<input type="checkbox" style="min-width:50px;" id="port32201295-a833-45ea-8268-7c4bc0aa9887" ng-checked="port.checked" ng-disabled="port.disabled" ng-click="getSelectedPorts($event,port); 
submenu.network.minimizeMaximizePops($event)"> 

JSまた

var cb = element(by.css('#port32201295-a833-45ea-8268-7c4bc0aa9887')); 
     cb.click() // failed(element is not visible | but element is visible have height & width) 
browser.actions().mouseMove(cb).click().perform();// nothing happens 
+0

コード全体を貼り付けることができますか?テキストは未定義ですか? –

+0

ハードコードされた値で試してみましたが、構文エラーはありません。チェックボックスのみで問題が発生しました。 –

+0

チェックボックスの.click()を呼び出すとうまくいくはずです。素子。あなたはブラウザの開発者ツールに入り、その中のステートメントを実行しようとしましたか? –

答えて

0

カスタムスタイルフォームのチェックボックスを削除してこの問題を修正しました。実際のチェックボックスは、divのようにチェックボックスでオーバーライドされています。この要素は分度器では表示されません。選択ボックスにはselect2.jsを使用します。

0

あなたはelement(locator).click()

function setCheckBoxTo(locator, value){ 
    var checkbox = element(locator); 
    checkbox.isChecked().then(function(selected){ 
     if(selected !== value){ 
      checkbox.click(); 
     } 
    } 
} 

リファレンスhereauthor

を使用して、チェックボックスをクリックして使用することができます
関連する問題