common/tools/test/analysis/tests_results_statistics_extraction.pl
author Arnaud Lenoir
Mon, 22 Mar 2010 21:39:33 +0000
changeset 946 d4afc2cbd15a
permissions -rw-r--r--
Wrote a script to extract data for e32tests & f32tests based on input from: richardcoles / Symbian Foundation Community Member and Krishna Achugatla from Symbian.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
946
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
     1
# Copyright (c) 2010 Symbian Foundation Ltd
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
     2
# This component and the accompanying materials are made available
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
     3
# under the terms of the License "Eclipse Public License v1.0"
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
     4
# which accompanies this distribution, and is available
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
     5
# at the URL "http://www.eclipse.org/legal/epl-v10.html".
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
     6
#
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
     7
# Script name: tests_results_statistics_extraction.pl
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
     8
#
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
     9
# Initial Contributors:
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    10
# Symbian Foundation Ltd - initial contribution.
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    11
#
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    12
# Contributors:
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    13
# Arnaud Lenoir <arnaudl@symbian.org>
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    14
#
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    15
# Created 18/01/2010
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    16
#
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    17
# Description:
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    18
# Allow the extraction of the statistics (total, passed, failed, etc) for Syborg (QEMU) tests
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    19
#
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    20
#
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    21
# Parameters passed:
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    22
#	Param1: Log file containing all the information collected during the Syborg tests
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    23
#	Param2: File containing the values to look for. DO WE NEED TO DO IT THAT WAY? COULD BE NICE TO MAKE THAT TOOLS GENERIC
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    24
#	Param3: NA for the moment
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    25
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    26
# Modules necessary to run this script
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    27
use Getopt::Long;
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    28
use strict;
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    29
use Data::Dumper;
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    30
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    31
# Variables for parameters
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    32
my $help;
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    33
my $file_to_analyse;
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    34
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    35
# variables
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    36
my $system_cmd;		# Used to execute DOS commands
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    37
my $results_destination_file;
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    38
my $full_list_destination_file;
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    39
my $total_nb_of_tests = 0;					# Count the number total of tests 
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    40
my $total_nb_of_passed_tests = 0;			# Count the number of tests that have passed
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    41
my $total_nb_of_failed_tests = 0;			# Count the number of tests that have failed
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    42
my $total_nb_of_error_tests = 0;			# Count the number of tests that have failed due to an error
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    43
my $total_nb_of_timeout_tests = 0;			# Count the number of tests that have failed due to a timeout
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    44
my $total_nb_of_unknown_tests_results = 0;	# If ever one of the string we are looking for is not reported
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    45
my @list_unknown_tests_results;				# If ever one of the string we are looking for is not reported, then save it and display it later on in the file we are saving
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    46
# Magic formula: $total_nb_of_tests = $total_nb_of_passed_tests + $total_nb_of_failed_tests + $total_nb_of_error_tests + $total_nb_of_timeout_tests + $total_nb_of_unknown_tests_results;
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    47
my %list_all_tests_results;					# List all the tests that are done and their final status. Use test name as key.
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    48
my %list_all_errors;						# List all the tests that errors of any sort. Use test name as key.
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    49
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    50
# Constantes declaration
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    51
my $results_destination_extension_file = "_statistics\.csv";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    52
my $full_list_destination_extension_file = "_full_list\.csv";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    53
# Strings to look for in the file to get statistics
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    54
my $running_test_string = "RUNTESTS: Test ";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    55
my $passed_test_string = "OK";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    56
my $failed_test_string = "FAIL";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    57
my $error_test_string = " ERROR";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    58
my $timeout_test_string = "TIMEOUT";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    59
# Strings used to extract data for each tests (name, status, error)
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    60
my $search4test_name_string = $running_test_string."([\\w._-]*[\.]+[\\w]*)\\s";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    61
#print "search4test_name_string = <$search4test_name_string>\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    62
my $search4failling_error_string = $failed_test_string."\\s[-]+\\s([\\w\\s,]*)";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    63
#print "search4failling_error_string = <$search4failling_error_string>\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    64
my $search4error_string = $error_test_string."\\s([\\w\\s,-]*)";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    65
#print "search4error_string = <$search4error_string>\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    66
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    67
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    68
my $total_nb_tests_save = "Total nb of tests";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    69
my $total_nb_tests_passed_save = "Total nb of tests passed";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    70
my $total_nb_tests_failed_save = "Total nb of tests failed";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    71
my $total_nb_tests_error_save = "Total nb of tests failed due to an error";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    72
my $total_nb_tests_timeout_save = "Total nb of tests failed on timeout";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    73
my $total_nb_tests_unknown_save = "Total nb of tests unknown";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    74
my $check_result_ok = "Check that total nb of tests Vs results is CORRECT?";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    75
my $display_analyse_and_update_script = "Analyse the following data and uppdate script accordingly!!!!!!";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    76
my $display_total_nb_of_unknown_tests_results = "Here is the number of unknown tests results:";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    77
my $display_unknown_tests_results = "Here is the list of unknown tests results lines that need to be analysed:";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    78
my $test_name_column_title = "Test Name";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    79
my $test_status_column_title = "Test Status";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    80
my $test_error_column_title = "What Error?";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    81
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    82
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    83
# Check if some arguments have been passed to the script
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    84
my $nb_arg_passed = scalar(@ARGV);
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    85
if(!$nb_arg_passed)
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    86
{
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    87
	print "No arguments/parameters passed then print help!\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    88
	helpme();
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    89
}
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    90
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    91
# Retrieve the parameters passed to the script
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    92
my %optmap = (  'file_to_analyse' => \$file_to_analyse,
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    93
                'help' => \$help);
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    94
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    95
GetOptions(\%optmap,
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    96
		  'file_to_analyse=s',
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    97
          'help');
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    98
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
    99
print "The value for help is: <$help>\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   100
print "file_to_analyse: <$file_to_analyse>\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   101
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   102
if ($help)
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   103
{
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   104
	print "The user required the display of help\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   105
	helpme();
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   106
}
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   107
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   108
if (!defined($file_to_analyse))
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   109
{
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   110
		print "No files has been passed as parameter!!!\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   111
		helpme();
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   112
}
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   113
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   114
# Check if we need the file to examine exists or not
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   115
if (-f $file_to_analyse)
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   116
{
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   117
	print "<$file_to_analyse> exists!!!\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   118
	
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   119
	# Define the name of the ouptut file that will contain the results of our analysis
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   120
	$results_destination_file = "$file_to_analyse" . "$results_destination_extension_file";	
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   121
	print "The path and file where the statistics of this script will be saved is: <$results_destination_file>\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   122
	$full_list_destination_file = "$file_to_analyse" . "$full_list_destination_extension_file";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   123
	print "The path and file where all the tests results of this script will be saved is: <$full_list_destination_file>\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   124
}
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   125
else
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   126
{
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   127
	print "File <$file_to_analyse> doesn't exist!!!\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   128
	# Exit program because no files to analyse.
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   129
	exit(0);
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   130
}
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   131
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   132
# Analysis of the file
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   133
# 1st open file and check line by line.
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   134
# 2nd record statistics analysis
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   135
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   136
# Example of line we are looking for to analyse:
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   137
# Name of the test
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   138
# RUNTESTS: Started test t_lat2.EXE
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   139
# Result:
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   140
# RUNTESTS: Test t_lat2.EXE OK
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   141
# RUNTESTS: Test t_hcr.EXE FAIL - Exit code 2,84,USER
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   142
# RUNTESTS: Test t_dcnone.EXE ERROR Could not load file, error -1
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   143
# RUNTESTS: Test t_scan.EXE TIMEOUT
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   144
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   145
open (INPUTFILE, "$file_to_analyse");
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   146
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   147
foreach my $local_line (<INPUTFILE>)
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   148
{
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   149
	chomp($local_line);	# Remove trailig \n	
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   150
	#print "Line read from the file is: <$local_line>\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   151
	
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   152
	if ( $local_line =~ /$running_test_string/)
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   153
	{
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   154
		#print "this line indicates that a test has been run\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   155
		$total_nb_of_tests++;
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   156
		
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   157
		# Extract the name of the test
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   158
		$local_line =~ /$search4test_name_string/;
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   159
		my $test_name = $1;
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   160
		#print "test_name = <$test_name>\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   161
		
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   162
		if ($local_line =~ /$passed_test_string/)
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   163
		{
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   164
			#print "this line indicates that a test has passed\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   165
			$total_nb_of_passed_tests++;
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   166
			
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   167
			$list_all_tests_results {"$test_name"} = $passed_test_string;
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   168
			#print "list_all_tests_results {$test_name} = <".$list_all_tests_results {"$test_name"}.">\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   169
		}
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   170
		elsif ($local_line =~ /$failed_test_string/)
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   171
		{
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   172
			#print "this line indicates that a test has failed\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   173
			$total_nb_of_failed_tests++;
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   174
			
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   175
			$list_all_tests_results {"$test_name"} = $failed_test_string;
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   176
			#print "list_all_tests_results {$test_name} = <".$list_all_tests_results {"$test_name"}.">\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   177
	
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   178
			# Look for the failling error to save it.
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   179
			$local_line =~ /$search4failling_error_string/;
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   180
			my $test_failling_error = $1;
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   181
			$test_failling_error =~ s/,/\;/g;	# To remove the "," otherwise this is not good for the writting of the data in the csv file 
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   182
			#print "test_failling_error = <$test_failling_error>\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   183
			$list_all_errors {"$test_name"} = $test_failling_error;
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   184
			#print "list_all_errors {$test_name} = <".$list_all_errors {"$test_name"}.">\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   185
		}
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   186
		elsif ($local_line =~ /$error_test_string/)
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   187
		{
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   188
			#print "this line indicates that a test has failed due to an error\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   189
			$total_nb_of_error_tests++;
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   190
			
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   191
			$list_all_tests_results {"$test_name"} = $error_test_string;
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   192
			#print "list_all_tests_results {$test_name} = <".$list_all_tests_results {"$test_name"}.">\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   193
			
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   194
			# Look for the error, which make the test to fail
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   195
			$local_line =~ /$search4error_string/;
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   196
			my $test_error = $1;
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   197
			$test_error =~ s/,/\;/g;	# To remove the "," otherwise this is not good for the writting of the data in the csv file 
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   198
			#print "test_error = <$test_error>\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   199
			$list_all_errors {"$test_name"} = $test_error;
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   200
			#print "list_all_errors {$test_name} = <".$list_all_errors {"$test_name"}.">\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   201
		}
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   202
		elsif ($local_line =~ /$timeout_test_string/)
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   203
		{
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   204
			#print "this line indicates that a test has failed on timeout\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   205
			$total_nb_of_timeout_tests++;
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   206
			
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   207
			$list_all_tests_results {"$test_name"} = $timeout_test_string;
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   208
			#print "list_all_tests_results {$test_name} = <".$list_all_tests_results {"$test_name"}.">\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   209
		}
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   210
		else
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   211
		{
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   212
			print "\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   213
			chomp($local_line);
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   214
			print "This line contains a result that is unknown to us\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   215
			print "Please analyse this line and add the appropriate test to solve the problem: <$local_line>\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   216
			push(@list_unknown_tests_results, $local_line);
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   217
		}
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   218
	}
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   219
	else
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   220
	{
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   221
		#print "This line is of no interest to us!\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   222
	}
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   223
}
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   224
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   225
print "\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   226
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   227
close (INPUTFILE);
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   228
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   229
$total_nb_of_unknown_tests_results = scalar(@list_unknown_tests_results);
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   230
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   231
# Result section
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   232
print "Here are the values obtained:\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   233
print "total_nb_of_tests = <$total_nb_of_tests>\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   234
print "total_nb_of_passed_tests = <$total_nb_of_passed_tests>\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   235
print "total_nb_of_failed_tests = <$total_nb_of_failed_tests>\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   236
print "total_nb_of_error_tests = <$total_nb_of_error_tests>\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   237
print "total_nb_of_timeout_tests = <$total_nb_of_timeout_tests>\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   238
print "total_nb_of_unknown_tests_results = <$total_nb_of_unknown_tests_results>\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   239
if ($total_nb_of_unknown_tests_results)
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   240
{
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   241
	print "Here are the lines containing unknown tests results:\n<\n@list_unknown_tests_results>\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   242
}
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   243
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   244
print "\n\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   245
print "Display tables to populate in the csv file to list all tests\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   246
if(%list_all_tests_results)
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   247
{
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   248
	print Dumper(\%list_all_tests_results);
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   249
	print "\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   250
}
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   251
if(%list_all_errors)
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   252
{
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   253
	print Dumper(\%list_all_errors);
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   254
	print "\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   255
}
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   256
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   257
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   258
# List all the tests with their results & errors if some
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   259
open(OUTPUTFILE,">$full_list_destination_file");
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   260
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   261
print OUTPUTFILE $test_name_column_title.",".$test_status_column_title.",".$test_error_column_title."\n";	# Working, just easier to read
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   262
#print OUTPUTFILE "$test_name_column_title,$test_status_column_title,$test_error_column_title\n";			# Working
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   263
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   264
foreach (keys %list_all_tests_results)
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   265
{
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   266
	my $val = $_;
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   267
	#print "Test Name: <$val>\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   268
	print OUTPUTFILE "$val,".$list_all_tests_results {"$val"}.",".$list_all_errors {"$val"}."\n";	# Do we need to check if list_all_errors is empty or not?
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   269
}
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   270
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   271
close (OUTPUTFILE);
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   272
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   273
# Store statistics in the file
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   274
open(OUTPUTFILE,">$results_destination_file");
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   275
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   276
print OUTPUTFILE $total_nb_tests_save.",$total_nb_of_tests\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   277
print OUTPUTFILE $total_nb_tests_passed_save.",$total_nb_of_passed_tests\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   278
print OUTPUTFILE $total_nb_tests_failed_save.",$total_nb_of_failed_tests\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   279
print OUTPUTFILE $total_nb_tests_error_save.",$total_nb_of_error_tests\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   280
print OUTPUTFILE $total_nb_tests_timeout_save.",$total_nb_of_timeout_tests\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   281
print OUTPUTFILE $total_nb_tests_unknown_save.",$total_nb_of_unknown_tests_results\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   282
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   283
print OUTPUTFILE "\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   284
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   285
if ($total_nb_of_tests == ($total_nb_of_passed_tests + $total_nb_of_failed_tests + $total_nb_of_error_tests + $total_nb_of_timeout_tests + $total_nb_of_unknown_tests_results) )
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   286
{
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   287
	print OUTPUTFILE $check_result_ok.",YES"."\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   288
}
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   289
else
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   290
{
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   291
	print OUTPUTFILE $check_result_ok.",NO"."\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   292
}
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   293
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   294
if($total_nb_of_unknown_tests_results !=0)
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   295
{
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   296
	#print "\nThere are tests that have not been counted because not in the list of things we are looking for, please analyse file: <$results_destination_file>!\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   297
	
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   298
	print OUTPUTFILE "\n\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   299
	print OUTPUTFILE $display_analyse_and_update_script;
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   300
	print OUTPUTFILE "\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   301
	print OUTPUTFILE $display_total_nb_of_unknown_tests_results.",".$total_nb_of_unknown_tests_results."\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   302
	print OUTPUTFILE "\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   303
	print OUTPUTFILE $display_unknown_tests_results."\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   304
	foreach (@list_unknown_tests_results)
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   305
	{
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   306
		print OUTPUTFILE $_."\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   307
	}
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   308
}
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   309
close (OUTPUTFILE);
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   310
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   311
print "\n\nHere is your output file: <$results_destination_file> !!!!!\n\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   312
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   313
# End of the program!!!
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   314
exit(0);
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   315
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   316
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   317
# Functions section
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   318
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   319
# Help
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   320
sub helpme
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   321
{
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   322
	print "\nfct: helpme\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   323
	print "tests_results_statistics_extraction.pl\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   324
	print "Usage:\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   325
	print "tests_results_statistics_extraction.pl --help\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   326
	print "tests_results_statistics_extraction.pl --file_to_analyse=c:\\temp\\f32tests_log.txt\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   327
	print "Options:\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   328
	print "--help:\t\t\t\t display this help and exit\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   329
	print "--file_to_analyse:\t\t is the path to the directory containing the package_definition.xml file\n";
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   330
	
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   331
	exit(0);
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   332
}
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   333
d4afc2cbd15a Wrote a script to extract data for e32tests & f32tests based on input from:
Arnaud Lenoir
parents:
diff changeset
   334