使用Selenium Web驱动程序测试SSRS Reporting Services报告

本文关键字:Reporting Services 报告 SSRS 测试 Selenium Web 驱动程序 使用 | 更新日期: 2023-09-27 18:26:51

我目前正在使用Selenium Web驱动程序在Internet Explorer中测试SSRS报告服务报告。

我可以加载报告并更改下拉列表/参数,但我不知道如何检查页面是否已加载。理想情况下,通过在页面上定位元素。

我尝试过使用Id和XPath查找元素,但到目前为止没有成功。我刚刚得到NoSuchElementException错误。

下面是一个我想要的例子。Assert出现在页面上。

<TD class=A5e6df1155bcd42d5a8e2877b95dc04686l style="HEIGHT: 10mm; WIDTH: 136.98mm; MIN-WIDTH: 136.98mm" abp="570">Top N Destinations by Price</TD>

任何关于用Selenium测试SSRS的帮助或指导都将非常有用,因为我没有找到太多信息。

使用Selenium Web驱动程序测试SSRS Reporting Services报告

在SSRS中,报告id是动态生成的。所以你不能核对身份证。根据我的经验,我试着检查报告(检查数据是否正确打印)。但我遇到这个问题是因为动态驱动的id。这对SSRS报告的自动化测试没有帮助。

尝试使用绝对XPath。

SSRS报告中的大多数元素都使用动态类/id,因此我们无法使用常见的方法来识别它的元素。到目前为止,我所知道的最简单的方法是使用扩展名为"Chromath"的chrome。使用此扩展,您可以获得SSRS报表中任何元素的绝对XPath。然后使用该扩展获得的绝对xPath,然后使用FindElement获得元素。例如:

IWebElement fullName = driver.FindElement(By.XPath("//html[1]/body[1]/form[1]/div[3]/span[1]/div[1]/table[1]/tbody[1]/tr[4]/td[3]/div[1]/div[1]/div[1]/table[1]/tbody[1]/tr[1]/td[1]/table[1]/tbody[1]/tr[1]/td[1]/table[1]/tbody[1]/tr[1]/td[3]/table[1]/tbody[1]/tr[2]/td[3]/div[1]"));

希望能有所帮助。