module Awetestlib # Report generator for Awetestlib. class HtmlReport # Initialize the report class # @private def initialize(report_name) @reportname = report_name @reportContent1 = '' @reportContent2 = '' end # Create a report # @private def create_report(reportName) # Get current time t = Time.now @col_1_p = '65%' @col_2_p = '25%' @col_3_p = '10%' # Create the report name rpt_time = "#{t.strftime("%Y%m%d_%H%M%S")}" rpt_nice_time = "#{t.strftime("%m/%d/%Y @ %H:%M:%S")}" rpt_file_name = "#{reportName}_#{rpt_time}.html" # Create the HTML report rpt_file = File.open(rpt_file_name, 'w') # Format the header of the HTML report @reportContent1 = ' Awetestlib Test Run
 

Test Report



' @reportContent2 = '

Script

:

' + @reportname.capitalize + '

Test Execution

:

' + rpt_nice_time + '


' + "\n" # Close the report rpt_file.close return rpt_file_name end # Add a row to the report # @private def add_to_report(message, location, result, level = 1) # Format the body of the HTML report left_class = 'border_left' right_class = 'border_right' pgph_class = 'normal_text' loc_class = 'center_text' rslt_class = 'result_ok' middle_class = 'border_middle' rslt_class = 'result_nok' if result == "FAILED" case result when 'FAILED' rslt_class = 'result_nok' when 'PASSED' rslt_class = 'result_ok' else if level if level >= 1 pgph_class = 'bold_large_text' left_class = 'mark_testlevel_left' middle_class = 'mark_testlevel_middle' right_class = 'mark_testlevel_right' end end end row = '' @reportContent2 += row + "\n" end # Close the report HTML # @private def finish_report(reportName) # Open the HTML report rpt_file = File.open(reportName, 'a') @reportContent2 = @reportContent2 + '

Test Step

Location

Result

' + message + '

' + location + '

' + result + '

 

 

 

' rpt_file.puts(@reportContent1) rpt_file.puts(@reportContent2) # Close the report rpt_file.close end end end