2017-11-02 8 views
-2

QAオートメーションで新しく、これにはセレンを使用しています。seleniumWebDriver for Javaでテーブルからアイテムを選択する方法

テーブルから開いているサブメニューを選択しようとしています。選択したいオプションは "Nueva CartaCrédito"です。

メニューからコードは次のとおりです。

<div id='lmoptions' style="border-style: outset;font-size:10;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;width: 100%;height: 5px;position: absolute;background-color: #88BBD9;" > 
<table id='lmoptionstable'> 
    <tr onmouseover="parent.highliterow(this)" onclick="parent.clickModule('immenu','IM','V', this.children[0].innerText);parent.hidepopup();"><td><label style="font-size:10;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;width: 120px;overflow:hidden;">Vista</label></td></tr> 

    <tr onmouseover='parent.highliterow(this)' onclick="parent.clickModule('immenu','IM','I', this.children[0].innerText);parent.hidepopup();"><td><label style="font-size:10;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;width: 120px;overflow:hidden;">Nueva Carta Crédito</label></td></tr> 
    <tr onmouseover='parent.highliterow(this)' onclick="parent.clickModule('immenu','IM','CP', this.children[0].innerText);parent.hidepopup();"><td><label style="font-size:10;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;width: 120px;overflow:hidden;">Preaviso Completo</label></td></tr> 
    <tr onmouseover='parent.highliterow(this)' onclick="parent.clickModule('immenu','IM','A', this.children[0].innerText);parent.hidepopup();"><td><label style="font-size:10;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;width: 120px;overflow:hidden;">Enmienda</label></td></tr> 
    <tr onmouseover='parent.highliterow(this)' onclick="parent.clickModule('immenu','IM','N', this.children[0].innerText);parent.hidepopup();"><td><label style="font-size:10;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;width: 120px;overflow:hidden;">Negociación</label></td></tr> 
    <tr onmouseover='parent.highliterow(this)' onclick="parent.clickModule('immenu','IM','U', this.children[0].innerText);parent.hidepopup();"><td><label style="font-size:10;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;width: 120px;overflow:hidden;">Actualización</label></td></tr> 
    <tr onmouseover='parent.highliterow(this)' onclick="parent.clickModule('immenu','IM','W', this.children[0].innerText);parent.hidepopup();"><td><label style="font-size:10;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;width: 120px;overflow:hidden;">Bandeja de Trabajo</label></td></tr> 


</table> 

誰かが私を助けてくださいことはできますか?

+0

ようこそ!参照:[Xを行うには?](https://meta.stackoverflow.com/questions/253069/whats-the-appropriate-new-current-close-reason-for-how-do-i-do-x )SOに関する期待は、質問をするユーザーが自分の質問に答えるだけでなく、その研究、コードの試行、結果を共有することです。これは、時間をかけて自分自身を助けようとしていることを示しています。明白な回答を繰り返さないようにしてくれています。そして、より具体的で適切な答えを得ることができます。他にも:[ask] – JeffC

答えて

3

あなたが問題を解決するために、あなたの試みを挿入する必要があります質問投稿時:ヌエバカルタCREDITOオプションが表示し、必要なすべての場合

 WebElement table= driver.findElementById("lmoptionstable"); 
     WebElement el= table.findElement(By.xpath(".//tr/td/label[text()='Nueva Carta Crédito']")); 
     el.click(); 
+0

私は誤りを起こしました。私は "テーブル"の代わりに "ドライバ"を使用しました。 htmlがこれだけの場合、あなたは正しいです。それ以外の場合は、最初にテーブルを識別してください。 –

+0

Nueva CartaCréditoをWebElementに設定する理由は何ですか? – JOberloh

+0

わかりやすい。 –

1

How do I ask a good question?

をあなたはこの方法で行うことができますそれをクリックされ行うには、単にこの機能を使用する:あなたがクリックする要素が表示されている場合は、

driver.findElementByXPath("//*[text()='Nueva Carta Crédito']").Click(); 
1

driver.findElementByXPath("//*[text()='Nueva Carta Crédito']").Click(); 

あなたがクリックする要素のみ/ホバーの上にマウスの後に表示されている場合は、スタックオーバーフローに

Actions action = new Actions(driver); 
    WebElement elementToHover = driver.findElement(By.id("lmoptionstable")); 
    WebElement elementToClick = driver.findElement(By.xpath("//*[text()='Nueva Carta Crédito']")); 
    action.moveToElement(elementToHover).click(elementToClick).build().perform(); 
関連する問題