Solution
First, you need to create new custom report, for that follow the steps:
- Go to Administration > Edit Reports
- Create a new Report, give it a meaningful name
- Specify that it should allow generation in MS-Word, Excel, HTML and PDF formats
- Choose to add a Custom Section:
- Into the Custom Query section paste below ESQL query:
SELECT
TR.TEST_SET_ID, TR.TEST_SET_NAME, TC.TEST_CASE_ID, TC.NAME AS TEST_CASE_NAME,
TR.TESTER_NAME, TR.EXECUTION_STATUS_NAME, TR.TEST_RUN_TYPE_NAME,TR.RELEASE_NAME, TR.BUILD_NAME
FROM SpiraTestEntities.R_TESTCASES AS TC
INNER JOIN SpiraTestEntities.R_TESTRUNS AS TR ON TC.TEST_CASE_ID = TR.TEST_CASE_ID
WHERE TR.PROJECT_ID = ${ProjectId}
Please note that you can filter also by the test run type - it can be manual or automatic.
In that case there will be an additional filtering criteria in WHERE statement:
AND TR.TEST_RUN_TYPE_NAME = 'AUTOMATED'
6. Click on Create Default Template or simply copy and paste below XSLT:
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl">
<xsl:template match="/RESULTS">
<table class="DataGrid"><tr><th>TEST_SET_ID</th><th>TEST_SET_NAME</th><th>TEST_CASE_ID</th><th>TEST_CASE_NAME</th><th>TESTER_NAME</th><th>EXECUTION_STATUS_NAME</th><th>TEST_RUN_TYPE_NAME</th><th>RELEASE_NAME</th><th>BUILD_NAME</th></tr>
<xsl:for-each select="ROW">
<tr><td><xsl:value-of select="TEST_SET_ID"/></td><td><xsl:value-of select="TEST_SET_NAME"/></td><td><xsl:value-of select="TEST_CASE_ID"/></td><td><xsl:value-of select="TEST_CASE_NAME"/></td><td><xsl:value-of select="TESTER_NAME"/></td><td><xsl:value-of select="EXECUTION_STATUS_NAME"/></td><td><xsl:value-of select="TEST_RUN_TYPE_NAME"/></td><td><xsl:value-of select="RELEASE_NAME"/></td><td><xsl:value-of select="BUILD_NAME"/></td>
</tr>
</xsl:for-each>
</table>
</xsl:template>
</xsl:stylesheet>
7. Save the report and now it is ready to be ran.
Sample output should provide the list of the test sets with the test cases, with release, test run status and the build name.
Here is the sample output after running the report and it displays only automated tests: