硒:如何获得一个图像的src?

我使用(在PHPUnit的)硒测试我的Web应用程序。 我想测试一个特定的图像,出现在页面上是否真的存在。 更确切地说,图像URL是否返回404与否。 为了测试这一点,我需要获得图像URL。 鉴于形象定位,如何获得它的src属性(网址)的价值?

--------------解决方案-------------

假设你有一个WebElement图像(可以说IMG),在Java世界中,你可以检索下面的链接

编辑答案澄清,通过 Java世界我的意思是硒2.0 Java绑定。 在硒2.0(当然如果你使用的webdriver)有一个名为WebElement代表页面上的元素类。 的getAttribute是Java绑定硒的方法。

String url = "http://www.my.website.com";
WebDriver driver = new FirefoxDriver();
driver.get(url);
WebElement img = driver.findElement(By.id("foo"));
String src = img.getAttribute("src");

或许有PHPUnit中类似的东西

您可以使用'的getAttribute“使用XPath得到一个图片src(或任何其他属性:ALT,标题,宽度等)

selenium.getAttribute("//img/@src");

如果你是你使用任何PHP的webdriver像Facebook / phpwebdiver,那么将很容易解决您的问题。

例如:

1)创建一个对象wedriver:

public function setUp()
{
parent::setUp();
$web_driver = new WebDriver();
$element = $web_driver->session();
}

有了这个$element变量,你可以很容易地用下面一行访问任何HTML属性:

$element->element('xpath', '//*[@id="logo"]')->attribute('src');

这将返回的值src attibute。 您可以使用此行得到这样的类,ID,标题,ALT等任何属性...

你需要使用XPath。 对于PHPUnit和Selenium进行语法获取图像的src属性是:

$imageUrl = $this->getAttribute("//img/@src");

使用XPath,例如

//img[@src='The image src']

但不幸的是我不知道它是测试图像加载一个好办法

分类:图像 时间:2013-12-24 人气:0
本文关键词: 图像,硒
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 0.208 (s). 10 q(s)