How to automate tests for reports in SSRS

…衆ロ難τιáo~ 提交于 2021-02-06 10:21:17

问题


My current project uses SSRS as the reporting engine. I have the report executing a text command with about 10 variables passed to it. I have been looking for a solution on how to unit test (acceptance or integration, whatever, just some automation) to an SSRS report project.

I thought about using this method:

  1. Move the SQL text command to a stored procedure
  2. Create a Reports.Tests project
  3. Create a project_tests database and point the connection string to this database
  4. Set up my unit test <Setup> with the data I would return in the test
  5. Create a test with the parameters passed and test the result set

I wanted to be sure that I wasn't missing something obvious.

How do other programmers test their reports automatically? Any suggestions on how to improve this method?

EDIT: I should clarify that I would like to only test the result set and not formatting of the report.


回答1:


I saw the Reporting Services Unit Testing Framwork on CodePlex which could be useful, though I haven't had a chance to evaluate it.




回答2:


Don't know if this is to late - but I have looked at the testing product at the following site: http://www.asyncsoftware.co.uk/ReportTestGenerator.html

Which generates (MSTest or NUnit) unit tests based on the assertions you create...might be of help.




回答3:


Well that would only test the database 'API', it wouldn't take in to account any of the features you might be using in the report (filtering, sorting, aggregation etc).

The only thing I can suggest is to find a tool that can compare XML and just get the report server to send an XML version of the report.

http://reportserver/ReportServer?/directory/Report1&rs:Format=XML&rs:Command=Render

There must be a tool out there that can do this

Not sure if this has the capability to do it: http://www.soapui.org/




回答4:


Selenium has been a great tool for me. Selenium should allow you to validate most of the functionality in the report works as expected from the viewpoint of a web browsing user.

Having a test database separate from production will help keep things clean in your environment, but won't affect the quality of the test.




回答5:


So you are basically wanting to test the SP then?

http://tsqlunit.sourceforge.net/

or VSTS for Database Professionals

http://msdn.microsoft.com/en-us/library/bb381703(VS.80).aspx




回答6:


There doesn't seem to be a whole lot of solutions out there for unit testing SSRS. I've found ideas in this blog helpful.

Also, if you are interested in a tool to help, see: Innosphere's SSRS Unit Testing Suite. They are using a very similar method to the one described in the blog, i.e. export the SSRS report as XML, and use the XML to assert things.

Hope some of that helps.



来源:https://stackoverflow.com/questions/743950/how-to-automate-tests-for-reports-in-ssrs

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!