问题是我无法检查页面上是否有文件。 有一个代码可以存在这个图像:
<div class="specials-block">
<a href="/ru/actions/443">
<div class="specials-block-item icons-guide ico1" data-amount="5" data-toggle="tooltip" data-html="true" data-placement="bottom" title="" data-original-title="">
</div>
</a>
<div class="specials-block-item">
<img src="data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAEsA......8X2F0UZvgYHv0AAAAASUVORK5CYII=">
</div>
</div>
缺少此图片的代码:
<div class="specials-block">
<a href="/ru/actions/443">
<div class="specials-block-item icons-guide ico1" data-amount="5" data-toggle="tooltip" data-html="true" data-placement="bottom" title="" data-original-title="">
</div>
</a>
<div class="specials-block-item">
</div>
</div>
为了检查此图像是否存在,我会进行检查:
var intelAtom = driver.FindElement(By.XPath("/html/body/div[5]/div[4]/div/div[1]/div[1]/div[5]/div[1]/div/img[@src='------------------------------']")); if (intelAtom.Displayed) { MessageBox.Show("All is OK"); } else { MessageBox.Show("WTF O_o , displayed enother Icon"); }
但是我需要检查图像的存在以及img是否显示所需的图像显示。 像这样的事情:
if (driver.FindElement(By.XPath("/html/body/div[5]/div[4]/div/div[1]/div[1]/div[5]/div[1]/div/img")).Displayed) { var intelAtom = driver.FindElement(By.XPath("/html/body/div[5]/div[4]/div/div[1]/div[1]/div[5]/div[1]/div/img[@src='------------------------------']")); if (intelAtom.Displayed) { MessageBox.Show("All is OK"); } else { MessageBox.Show("WTF O_o , displayed enother Icon"); } } else { MessageBox.Show("WTF O_o , Icon Intel Pentium is't displayed"); }
但是如果我开始第二次查询,那就失败了,因为它找不到img文件
driver.FindElement(By.XPath(“/ HTML /体/格[5] / DIV [4] / DIV / DIV [1] / DIV [1] / DIV [5] / DIV [1] /格/ IMG“))
也许有人知道如何构建正确的查询以确定图像是否显示在页面上并显示正确的图像