ImageTag existiert in der TR?
BEARBEITEN:
public bool getImage()
{
IWebElement table = driver.FindElement(By.Id("DIV_ID_1"));
string name = String.Format("//*[contains(text(), \'{0}\')]", 'TEST1');
IWebElement element = table.FindElement(By.XPath(name));
IWebElement parent = element.FindElement(By.XPath(".."));
try
{
IWebElement image = element.FindElement(By.XPath("//img"));
}
catch (NoSuchElementException e)
{
return false;
}
return true;
}
Wie würde ich herausfinden, wenn dieTEST1
hatImage
? Im folgenden HTML-Quellcode habe ich tr und innerhalb von tr habe ich td und einige tr haben möglicherweise Bild-Tag und einige möglicherweise nicht
Also werde ich einen Namen für ein Beispiel übergeben:TEST1
und im Gegenzug erwarte ich, ob der Name Image-Tag hat oder nicht.
wieder, wenn ich bestanden habeTEST2
undTEST3
es solltereturn
null
da es kein image tag gibt und wo alsTEST1
undTEST4
hatImage tag
daher sollte es mich wahr zurückgeben.
Ich habe so etwas ausprobiert, aber es hat nicht funktioniert:
string name = String.Format(".//td[contains(., \'{0}\')]/..//@src", "TEST1");
IWebElement element = driver.FindElement(By.XPath(name));
bekomme diesen Fehler: nachdem du den obigen Code ausprobiert hast ...
Der xpath-Ausdruck '.// td [enthält (.,' TEST1 ')] /..//@ src' kann nicht ausgewertet werden oder führt nicht zu einem WebElement
Unten ist der HTML-Quellcode
<div id="DIV_ID_1">
<table id="TBLID1">
<tr>
<td>
TEST1
</td>
<td>
<img id="ctl00" src="../App_Themes/Default/images/phone.gif" />
</td>
</tr>
<tr>
<td>
TEST2
</td>
</tr>
<tr>
<td>
TEST3
</td>
</tr>
<tr>
<td>
TEST4
</td>
<td>
<img id="ctl02" src="../App_Themes/Default/images/phone.gif" />
</td>
</tr>
</table>
</div>