使用Selenium检查嵌入标记的包含

时间:2010-12-13 14:37:07

标签: selenium

我们通过调用Web服务生成pdf文档,该服务返回生成的doc的路径。 我们使用embed html标签来显示pdf内联,即

<div id="ctl00_ContentPlaceHolder2_ctl01_embedArea">
        <embed wmode="transparent" src="http://www.company.com/vdir/folder/Pdfs/file.pdf" width="710" height="400"/>

我想使用selenium检查pdf是否实际显示,如果可能的话,保存路径,即将src链接转换为变量。

任何人都知道如何做到这一点?理想情况下,我们希望能够将这个pdf与参考文献进行比较,但这是另一天的问题。

1 个答案:

答案 0 :(得分:2)

就检查硒的pdf而言,你或多或少都不走运。 embed标签只是将一个插件插入到页面中,并且由于插件在DOM中没有很好地表示,所以Selenium无法很好地处理它。

但是,如果您正在使用Selenium-RC,您可能需要考虑获取embed元素的src,然后直接请求该URL并在代码中评估生成的PDF。假设您的嵌入元素看起来像<embed id="embedded" src="http://example.com/static/pdf123.pdf" />,您可以尝试这样的

        String pdfSrc = selenium.getAttribute("embedded@src");

然后向pdfSrc网址发出网络请求并以某种方式验证它是您想要的网址。仅仅检查它不是404就足够了。