如何使用xvfb处理无头硒中的favicon.ico

时间:2015-09-30 07:30:53

标签: selenium selenium-webdriver headless selenium-firefoxdriver

我有各种selenium测试脚本的场景,它使用firefox浏览器在selenium web驱动程序上正常运行。当我在无头模式下运行时,一些场景正在运行,但其中一些没有运行一段时间,但大部分时间都失败并抛出错误,如

onhandlernotfound/favicon.ico

pagenotfound/favicon.ico[onhandlernotfound/favicon.ico]

附带的屏幕截图 - firstsecond。 尽快给我解决方案

我的测试用例失败并得到错误,该元素当前不可见,因此可能无法与

进行交互
element is not currently visible so may not be interacted with

1 个答案:

答案 0 :(得分:0)

您可以尝试获取favicon网络路径并尝试下载(外部,而不是通过selenium)。

如果无法访问favicon,则无法下载。如果它是可访问的 - 它将在任何浏览器中显示(如果启用了图像)=)

也许这不是最好的方法,但这会奏效。

由于你没有写你的语言,我可以给你代码来下载c#的图像:

string webPath = ""; /*favicon internet path*/
if (webPath != string.Empty)
{
    try
    {
        System.Net.WebRequest request = System.Net.WebRequest.Create(webPath);
        System.Net.WebResponse response = request.GetResponse();
        System.IO.Stream responseStream = response.GetResponseStream();
        Bitmap bitmapImg = new Bitmap(responseStream);
        return bitmapImg;
    }
    catch (System.Net.WebException)
    {
    }
}