ExtJSグリッドパネルを使用しています。このグリッドには20行以上の情報があり、WebdriverIOをテストドライバとして使用してアクティブモードを表すアイコンを各行で検索したいとします。webdriverIOを使用してグリッド内の特定のボタンを検索する方法
テストドライバが最初のアクティブなアイコンを見つけるまで、どのように各行を検索できますか? (注:私がテストしているグリッドはalegra.comでホストされています)。
は、次のHTMLプリントスクリーンを考えてみましょう:
ExtJSグリッドパネルを使用しています。このグリッドには20行以上の情報があり、WebdriverIOをテストドライバとして使用してアクティブモードを表すアイコンを各行で検索したいとします。webdriverIOを使用してグリッド内の特定のボタンを検索する方法
テストドライバが最初のアクティブなアイコンを見つけるまで、どのように各行を検索できますか? (注:私がテストしているグリッドはalegra.comでホストされています)。
は、次のHTMLプリントスクリーンを考えてみましょう:
それはあなたが使用しているロケータ知らずにそれを行う方法を正確に知ることは難しいのですが、あなたは最初の行のリストを取得する場合と、それらをフィルタリングし、あなたが探しているものを行うべき最初のマッチをつかむ。
public static get rows() { return browser.elements('#someTableId > table > tbody > tr'); }
public static getFirstMatch() {
return this.rows.value.filter((row: WebdriverIO.Element) =>
browser.elementIdElement(row.ELEMENT, 'someLocator').value)[0];
}
こんにちは男性、これはセレクタ--- http://take.ms/bqCwTのスクリーンショットですが、クラスがあることがわかります。 action-icons以下はボタンの名前です:[name = "Ver detalle"]。これは単なる行のためのものであり、複数のextjsセレクタを使用しています。 –
www.alegra.comでテストアカウントを開くこともできます。 –
スクリーンショットが十分かどうかわかりません。 –
これは、あなたが探しているもののためのHTMLを供給することができます私はそれを
var icon_type = 'delete';
it('Se elimina una factura', function(){
//rellenamos el array de elementos del grid
var elements = browser.getAttribute('#gridInvoices #gridview-1047-table tbody tr .action-icons img:nth-child(7)','class');
//Busca la primera coincidencia en el array con type
var row_num = elements.indexOf(icon_type);
if(row_num === -1){
throw new Error('No se encontraron botones activos del tipo "Eliminar" en todo el grid')
}else{
$$('#gridInvoices #gridview-1047-table tbody tr')[row_num].click('.action-icons [title="Eliminar"]');
browser.click('=Sí')
};
});
をどうやっているのですか?アクティブなアイコンの行がどのように見えるかを私に教えてください。おそらくあなたを助けることができます。 – tehbeardedone
サルバドールはこれを解決することができましたか、それともまだ助けが必要ですか? ** [this](https://stackoverflow.com/questions/43686566/click-buttons-on-page-until-all-will-be-removed/43705794#43705794)を見てください**私が与えた答えWDIOで 'WebElement'をループします。また、** alegra.com **の表示はどのターゲットですか? ( 'Contactos'、' Inventacts'、 'Bancos'など) – iamdanchiv
こんにちは、@ iamdanchivさん、まだ助けが必要です。私はこのモジュールを対象にしています。https://app.alegra.com/invoiceグリッドにはいくつかの行があり、各行はいくつかのアクションアイコンを管理しています。グリッド内でアクティブなアイコンを見つけてクリックするだけです。 –