2016-11-14 4 views
1

Ich versuche, eine lästige Schaltfläche auf meiner Webseite zu finden. die meisten anderen Elemente, die ich finden kann, aber diese gibt mir Kopfschmerzen.Identifizieren von Schaltflächenelement auf einer Webseite Selen

Die HTML ist:

<table class="d_FG" role="presentation"> 
<tbody> 
<tr> 
<tr id="z_t"> 
<td class="fct_w" colspan="2"> 
<div> 
<input name="newAttachments_fsid" value="0" type="hidden"> 
<table id="z_u" class="dcs" role="presentation"> 
<tbody> 
<tr style="border: none;"> 
<td colspan="3" style="padding-right:0"> 
<a id="z_v" class="vui-button d2l-button d2l_1_192_930" role="button" tabindex="0" aria-disabled="false">Add a File</a> 
<a id="z_w" class="vui-button d2l-button d2l_1_193_372" role="button" tabindex="0" aria-disabled="false">Record Audio</a> 
</td> 
<td></td> 
</tr> 
</tbody> 
</table> 
</div> 
</td> 
</tr> 
</tbody> 
</table> 

Ich versuche, das Element zu suchen:

<a id="z_v" class="vui-button d2l-button d2l_1_192_930" role="button" tabindex="0" aria-disabled="false">Add a File</a> 

ich verschiedene Verfahren, wie versucht:

public void add_attachment(){ 
    driver.switchTo().defaultContent(); 
    try { 
     Thread.sleep(2000); 
    } catch (InterruptedException e1) { 
     // TODO Auto-generated catch block 
     e1.printStackTrace(); 
    } 

    driver.findElement(By.id("z_v"))).click(); 

} 

Aber kann es nicht nur verwalten . Immer die Nachricht erhalten, dass sie nicht sichtbar ist oder ein anderes Element geklickt wird.

Ich versuchte mit einem Javascript, das bis zum Element scrollt, aber das hat nicht funktioniert. Irgendwelche Ideen, mir zu helfen, mit wäre sehr

Antwort

1

geschätzt werden Können Sie einige andere Abhilfen versuchen, wie mit Actions oder javascriptExecutor wie unten,

WebElement btn = driver.findElement(By.id("z_v"))); 
Actions action = new Actions(driver); 
action.click(btn).build.perform(); 

oder

JavascriptExecutor js = (JavascriptExecutor)driver; 
Js.executeScript("arguments[0].click()",btn); 
+0

Ich versuche, tat so etwas schon, Aber wenn ich morgen wieder zur Arbeit gehe, werde ich deine genaue Methode versuchen. Vielleicht habe ich es bei der JavaScript-Methode falsch gemacht. Danke, ich werde dich wissen lassen, dass es funktioniert – tarquin

+0

Ja sicher! hoffe, es wird funktionieren :) –

+0

Brilliant, habe ich die zweite Methode versucht und es funktioniert. Die erste Methode drückte irgendwie nicht auf den Knopf, um das Popup-Fenster zum Anhängen von Dateien zu öffnen, ich verstehe nicht wirklich, wie die zweite Version funktioniert oder warum meine ursprüngliche Version und Ihr erster Vorschlag nicht funktioniert haben. Wenn du durchgehen könntest, wäre es sehr geschätzt (wenn du Zeit hast). – tarquin

Verwandte Themen