ranorex

Ranorex reports with certain levels disabled by default


Can a Ranorex (version 10.7.6) report be generated with the debug, info and success level turned off by default, i.e. all debug messages are hidden?

I still want the messages to be logged and to be able to view them, so setting the minimum level to 'info' is not a viable solution for me.


Solution

    1. TestSuite -> Properties -> Report -> Report template: Create custom template
    2. In RanorexReport.xsl:

    (...)

        <xsl:template name="itemrow">
            <xsl:param name="tablerowclass" />
            <xsl:param name="type" />       
            
            <!-- ADD the following 10 lines -->
            <xsl:variable name="RXStyle" >                                                  
                <xsl:choose>                                                            
                    <xsl:when test="@level='Debug' or @level='Info' or @level='Success'">   
                        <xsl:value-of select="'display:none'" /> 
                    </xsl:when> 
                    <xsl:otherwise>  
                        <xsl:value-of select="@style" />  
                    </xsl:otherwise>  
                </xsl:choose> 
            </xsl:variable>  
    
            <!-- CHANGE the style-attribute: -->
            <tr class="{$tablerowclass}" style="{$RXStyle}" onMouseOver="DisplayHoverMenu(this)" onMouseOut="HideHoverMenu(this)">
            
    

    (...)

            <xsl:choose>
                <xsl:when test="$level/../../activity[@type='test-module']">
                
                    <!-- REMOVE: <input type="checkbox" id="checkBox{$currentId}" name="checkBox{$currentId}" onClick="ShowHideItem($(this).parent().parent().next().find('tr.{translate($levelName,' ','_')}'), !this.checked);" checked="1" /> -->
                    <!-- ADD the following 8 lines -->
                    <xsl:choose>
                        <xsl:when test="$levelName='Debug' or $levelName='Info' or $levelName='Success'">
                            <input type="checkbox" id="checkBox{$currentId}" name="checkBox{$currentId}" onClick="ShowHideItem($(this).parent().parent().next().find('tr.{translate($levelName,' ','_')}'), !this.checked);" />
                        </xsl:when>
                        <xsl:otherwise>
                            <input type="checkbox" id="checkBox{$currentId}" name="checkBox{$currentId}" onClick="ShowHideItem($(this).parent().parent().next().find('tr.{translate($levelName,' ','_')}'), !this.checked);" checked="1" />
                        </xsl:otherwise>
                    </xsl:choose>
                    
                </xsl:when>
                <xsl:otherwise>
                    <input type="checkbox" id="checkBox{$currentId}" name="checkBox{$currentId}" onClick="ShowHideItem($('tr.{translate($levelName,' ','_')}'), !this.checked);" />
                </xsl:otherwise>
            </xsl:choose>