Friday, March 12, 2010

Testing Reports: How to test reports with a checklist of 30+ items?

A report is an output produced by the application under test. Reports come in numerous varieties. Some reports mainly have numbers and/ or charts and some reports mainly have text. Some reports are short and some run into pages. Whatever type of report you test, you should find the following list of things to test in a report handy. See my video, How to test software reports?, that explains everything with examples or read on...

Tests for data
1. Does the report validate any input data (e.g. date range or username) provided to it?
2. Is the input data entered by the user shown correctly in the report?
3. Is the report created based on the input data given by the user?
4. Does the report calculate values (e.g. subtotals by a unit such as a reporting period, totals, averages, minimum, maximum) correctly?
5. Is each data item on the report formatted correctly?
6. Does the report group data on the basis of a unit correctly?
7. Does the report show and use for calculation the correct statutory details (e.g. tax rates)?
8. Is the chart according to the data in the report?
9. If required, does the report show the correct reference number?
10. If required, does the report show the correct reference number(s) of the previous/ related report(s)?
11. Does the report show the correct text (e.g. executive summary, key drivers, approach used to create the report, current issues and action plan)?
12. If required, does the report show the correct supporting data?
13. Does the report include the correct date and time that it was created on?
14. Does the report show the correct names of the author, reviewer and approver?
Tests for presentation
15. Is the report layout as agreed?
16. Does the report show the correct heading (name, purpose and the target audience of the report)?
17. If applicable, does the report show the correct table of contents?
18. Does the report draw any tables correctly? Do the tables clearly show the data? Is the data aligned within the tables? Are the tables aligned with each other?
19. Is the data correctly broken up into sections or pages?
20. Does similar data and text appear in the same font (faces, sizes, colors etc.)? Are these fonts as agreed?
21. Is the header correct? Does the correct header appear on every page?
22. Is the footer correct? Does the correct footer appear on every page?
23. If it is a multi-page report, do the correct page numbers appear on every page?
24. Are the graphics used (e.g. logo and background) correct?
25. Are the links on the report correct?
26. If required, does the report include notes for interpreting the data, resources for further information or next steps?
27. Is the report similar in look and feel as the other reports produced by the application?
Tests for other factors
28. Is the time taken to generate the report reasonable?
29. Is it possible to distribute the report (e.g. by email, shared drive, feed etc.) as required? Does the distributed report open on all supported devices?
30. Is it possible to export the report to all supported formats?
31. Does the report print? Completely and with the same data and same presentation?
Please comment if you find this checklist useful in your project.


  1. A very useful and comprehensive list.

  2. Hi,

    How to automatically test the reports (test automation) with the checklist you provided?

    To keep the question to the very limited as a starting step, how to verify the data part through automation?

    User transactions in the application can be seen by administrators using admin console by querying with username.

    Now when report occurs that a user tried authentication and the result is succes, or tried and authentication failed, etc.

    If i want to verify the data using automation, any idea how we can do this?

    Waiting for your reply.

    Madhusudan G

    1. @Madhusudan,

      It should be practical to automate some of the tests given in the above checklist. Now, in your example, users' transactions are visible in the admin console. These are the input to the report. So, test automation should be practical if:
      1. The input can be saved in a readable format e.g. text file.
      2. The report is in a format that is readable by the automation tool i.e. we can program to read data from the report at a specific place.
      If these conditions are met, then the reported data can be validated with the help of input data.

      Thanks for your comment.

  3. Thanks for share it! Very useful

  4. Really it is worth, simply explained and make sense. Thank you so much for the check list.

  5. Hi Inder,

    I have to make a test cases for Migration Testing of Report Server. Please suggest what can I validate once the report server got Migrated.

    Thanks in Advance.

    1. Hi, the tests should depend on the scope of the migration. For example, you could test if all the live reports are migrated to the new Report Server or not. You could see more test requirements in the scope section of my Database Migration Testing post at the link,
      Thank you.

  6. Very useful Post. I found so many interesting stuff in your Blog especially its discussion. Really its Great Article. Keep it up.Girnar Software InfoTech is a Leading Software development services Read here and know all the famous Software Development services.

    Girnar Software InfoTech

  7. I think this is an informative post and it is very useful and knowledgeable. Really its Great Article.Hire Shopify developer to transform your online store and attract new customers. Dedicated Shopify team.

    Hire Shopify Developer

  8. Very useful Post. I found so many interesting stuff in your Blog especially its discussion. Hire Shopify developer to transform your online store and attract new customers.

    Hire Shopify Developer
    Hire Shopify web Developer