From 85aa4314728970301f04aa252342d8c7716db37f Mon Sep 17 00:00:00 2001 From: troufflard <> Date: Wed, 12 Oct 2016 08:09:31 +0000 Subject: [PATCH] a propos dernier commit : le script Perl/test.pl a ete modifie de maniere a permettre plusieurs types de verification pour un meme test. Desormais, un test peut etre l objet a la fois d une verif de .maple et d une verif par script .verif; actualisation de la doc doc_procedure_verification.pdf pour mentionner ce fait (voir evolution des mises a jour) --- Doc/doc_procedure_verification.tex | 24 ++++++++++++---- Perl/test.pl | 44 +++++++++++++++++------------ doc_procedure_verification.pdf | Bin 250152 -> 250145 bytes 3 files changed, 45 insertions(+), 23 deletions(-) diff --git a/Doc/doc_procedure_verification.tex b/Doc/doc_procedure_verification.tex index 375dc19..703402a 100644 --- a/Doc/doc_procedure_verification.tex +++ b/Doc/doc_procedure_verification.tex @@ -332,11 +332,16 @@ L'ex %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \subsubsection{Vérification}\label{subsubsection_verification} -Pour chaque calcul, une vérification est faite pour déterminer si le test est réussi ou non. Le rapport de test contient les indicateurs \verb|OK| ou \verb|ECHEC|. Il y a actuellement 3 types de vérification possible : +Pour chaque calcul, une vérification est faite pour déterminer si le test est réussi ou non. Le rapport de test contient les indicateurs \verb|OK| ou \verb|ECHEC|. Il y plusieurs types de vérification possibles. Plusieurs types de vérification peuvent \^etre faites pour un m\^eme test. + +Liste des possibilités : \begin{itemize} \item[$\bullet$] comparaison des données sorties au format maple : \begin{itemize} -\item[] il s'agit du mode de vérification par défaut. Le fichier \verb|.CVisu|[i] définit les sorties au format maple. Le répertoire de test contient alors un fichier \verb|.maple.ref|[i] qui définit les valeurs de référence. Si l'écart absolu et relatif entre les données de référence et les données du calcul sont inférieures à une tolérance, alors le test est réussi. Les tolérances par défaut sont en absolu 1e-6 et en relatif 1e-3. Il est possible de choisir librement les tolérances dans un fichier \verb|.precision|[i]. Pour une grandeur $X$ générée à l'issue du calcul [i] et sa valeur de référence $X_{ref}$ contenue dans le fichier \verb|.maple.ref|[i], le test est réussi si les relations de comparaison suivantes sont respectées : +\item[] Ce mode de vérification est exécuté si il y a la présence d'un fichier \verb|.maple.ref|[i]. +\vspace*{0.2cm} + +Le fichier \verb|.CVisu|[i] définit les sorties au format maple. Le fichier \verb|.maple.ref|[i] définit les valeurs de référence. Si l'écart absolu et relatif entre les données de référence et les données du calcul sont inférieures à une tolérance, alors le test est réussi. Les tolérances par défaut sont en absolu 1e-6 et en relatif 1e-3. Il est possible de choisir librement les tolérances dans un fichier \verb|.precision|[i]. Pour une grandeur $X$ générée à l'issue du calcul [i] et sa valeur de référence $X_{ref}$ contenue dans le fichier \verb|.maple.ref|[i], le test est réussi si les relations de comparaison suivantes sont respectées : \begin{equation} \begin{array}{rrcl} \text{comparaison absolue :} & |X - X_{ref}| & \leq & \varepsilon_{absolu}\\ @@ -346,13 +351,16 @@ Pour chaque calcul, une v \\ \bf IMPORTANT : \rm si les fichiers \verb|.maple| et \verb|.maple.ref| contiennent plusieurs lignes de données, seule la dernière ligne est traitée\\ \end{itemize} -\item[$\bullet$] comparaison libre définie par un script : +\item[$\bullet$] comparaison libre définie par un script \verb|.verif|: \begin{itemize} -\item[] la vérification peut \^etre librement définie par un script qui a pour fonction de renvoyer \verb|OK| ou \verb|ECHEC|. Ce script est un fichier exécutable d'extension \verb|.verif|[i], signifiant que le calcul n°[i] sera vérifié par un script libre.\\ +\item[] Ce mode de vérification est exécuté si il y a présence d'un fichier \verb|.verif|[i]. +\vspace*{0.2cm} + +Cette vérification est définie par un script qui a pour fonction de renvoyer \verb|OK| ou \verb|ECHEC|. Ce script est un fichier exécutable d'extension \verb|.verif|[i], signifiant que le calcul n°[i] sera l'objet d'une vérification par un script libre.\\ \end{itemize} \item[$\bullet$] vérification simple de l'exécution : \begin{itemize} -\item[] en l'absence de fichier \verb|.maple.ref| ou de script \verb|.verif|, la vérification est considérée \verb|OK| si le calcul s'est lancé normalement et terminé normalement (que le calcul ait convergé ou non). +\item[] en l'absence de fichier \verb|.maple.ref| et de script \verb|.verif|, la vérification est considérée \verb|OK| si le calcul s'est lancé et a renvoyé la main au terminal (que le calcul ait convergé ou non). Il y a tout de m\^eme quelques vérifications de l'affichage pour y trouver des indicateurs d'erreur, ce qui provoquera le cas échéant un ECHEC. \end{itemize} \end{itemize} @@ -1145,6 +1153,12 @@ pour ces 2 scripts, une gestion des signaux d'interruption \verb|INT| et \verb|T \item[-] modif du script \verb|test.pl| : ajout d'un nouveau message d'erreur fatal dans la liste des erreurs à repérer dans le fichier de redirection \verb|.log|. Désormais, si Herezh++ produit un message de la forme "\verb|erreur (...message...) detectee|", le test est considéré comme \verb|ECHEC| \end{itemize}%tiret +~\\ +\item[$\bullet$] 2016-10-11 (Julien Troufflard) : +\begin{itemize} +\item[-] modif du script \verb|test.pl| : désormais, les vérifications ne sont plus mutuellement exclusives. Un m\^eme test peut très bien \^etre l'objet à la fois d'une vérification de \verb|.maple| et d'une vérification libre par script \verb|.verif|. Légère modif de l'affichage dans le rapport de tests de manière à rendre clair les cas où un test est l'objet de plusieurs vérifications. +\end{itemize}%tiret + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %template d ajout d une nouvelle mise à jour (composé d'une puce "bullet" avec Date et auteur de la modif, suivie d une série de puce "-" %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% diff --git a/Perl/test.pl b/Perl/test.pl index 67e9a28..7a0506b 100755 --- a/Perl/test.pl +++ b/Perl/test.pl @@ -788,29 +788,34 @@ BOUCLE_TEST:for(my $no_test=1; $no_test<=$nb_CVisu; $no_test++) { #saisie du resultat (on s attend a trouver une chaine de la forme "resultat verification : STATUS" dans le .log) my $resu_verif = ''; + my $commentaire = ''; open(FIC, "<$script_verif.log"); while() { next if(not /^\s*resultat\s+verification\s*:\s*(\S+)/i);#rq : recherche insensible a la casse $resu_verif = $1; + (my $reste_chaine = $_) =~ s/^\s*resultat\s+verification\s*:\s*\S+\s*//; + chomp($reste_chaine); + $commentaire = "cause : $reste_chaine" if(defined $reste_chaine); last; } close(FIC); #verif du resultat (doit etre ECHEC ou OK) ($resu_verif eq 'OK' or $resu_verif eq 'ECHEC') or do { - printRapport(" -> ECHEC : resultat non conforme de la verification via le script $script_verif. Cause possible : la chaine \"resultat verification : ...\" n a pas ete trouvee ou alors le resultat n etait ni OK, ni ECHEC\n\n"); + printRapport(" -> resultat .verif : ECHEC (resultat non conforme de la verification via le script $script_verif. Cause possible : la chaine \"resultat verification : ...\" n a pas ete trouvee ou alors le resultat n etait ni OK, ni ECHEC)\n\n"); print "**Erreur Test $repertoire_test/.CVisu$no_test : resultat non conforme de la verification via le script $script_verif. Cause possible : la chaine \"resultat verification : ...\" n a pas ete trouvee ou alors le resultat n etait ni OK, ni ECHEC\n"; last BOUCLE_TEST; }; - printRapport(" -> $resu_verif (resultat fourni par le script de verification $script_verif)\n\n"); + printRapport(" -> resultat .verif : $resu_verif ($commentaire) (resultat fourni par le script de verification $script_verif)\n\n"); }#if(-e $script_verif) + ################################################################################# #cas d une verification classique (comparaison entre .maple et .maple.ref[$no_test]) # rq : on suppose qu il s agit d une verification classique si il y a la presence d un fichier .maple.ref ################################################################################# - elsif(-e "$fichier_temp_maple.ref$no_test") { + if(-e "$fichier_temp_maple.ref$no_test") { ############################################################## # pretraitement @@ -939,22 +944,22 @@ BOUCLE_TEST:for(my $no_test=1; $no_test<=$nb_CVisu; $no_test++) { $diff_relative_pourcent = sprintf("%.${nb_decimales_prec_relative}f", 100.*($valeur_temp-$valeur_ref)/$valeur_ref); } - $sortie_rapport .= " -> grandeur testee : colonne \[$no_colonne_maple\]\n"; + $sortie_rapport .= " -> grandeur testee : colonne \[$no_colonne_maple\]\n"; ############################# #comparaison absolue }; ############################# #---OK if(abs($diff_absolue) <= $precision_absolue) { - $sortie_rapport .= " - comparaison absolue (precision : $precision_absolue) -> OK\n"; + $sortie_rapport .= " - comparaison absolue (precision : $precision_absolue) -> OK\n"; } #---ECHEC else { $is_grandeur_ECHEC = 1; - $sortie_rapport .= " - comparaison absolue (precision : $precision_absolue) -> ECHEC\n"; - $sortie_rapport .= " -> Valeur = $valeur_temp\n"; - $sortie_rapport .= " -> Valeur reference = $valeur_ref\n"; - $sortie_rapport .= " -> Difference = $diff_absolue\n"; + $sortie_rapport .= " - comparaison absolue (precision : $precision_absolue) -> ECHEC\n"; + $sortie_rapport .= " -> Valeur = $valeur_temp\n"; + $sortie_rapport .= " -> Valeur reference = $valeur_ref\n"; + $sortie_rapport .= " -> Difference = $diff_absolue\n"; } ############################# @@ -962,19 +967,19 @@ BOUCLE_TEST:for(my $no_test=1; $no_test<=$nb_CVisu; $no_test++) { ############################# #---cas d une comparaison impossible => affichage d un message d erreur (mais pas du mot ECHEC : ce n est pas un echec car la valeur de reference est egale a 0) if($diff_relative_pourcent =~ /impossible/) { - $sortie_rapport .= " - comparaison relative : impossible car valeur de reference egale a 0\n"; + $sortie_rapport .= " - comparaison relative : impossible car valeur de reference egale a 0\n"; } #---OK elsif(abs($diff_relative_pourcent) <= $precision_relative) { - $sortie_rapport .= " - comparaison relative (precision : $precision_relative\%) -> OK\n"; + $sortie_rapport .= " - comparaison relative (precision : $precision_relative\%) -> OK\n"; } #---ECHEC else { $is_grandeur_ECHEC = 1; - $sortie_rapport .= " - comparaison relative (precision : $precision_relative\%) -> ECHEC\n"; - $sortie_rapport .= " -> Valeur = $valeur_temp\n"; - $sortie_rapport .= " -> Valeur reference = $valeur_ref\n"; - $sortie_rapport .= " -> Difference relative = $diff_relative_pourcent\%\n"; + $sortie_rapport .= " - comparaison relative (precision : $precision_relative\%) -> ECHEC\n"; + $sortie_rapport .= " -> Valeur = $valeur_temp\n"; + $sortie_rapport .= " -> Valeur reference = $valeur_ref\n"; + $sortie_rapport .= " -> Difference relative = $diff_relative_pourcent\%\n"; } @@ -983,11 +988,11 @@ BOUCLE_TEST:for(my $no_test=1; $no_test<=$nb_CVisu; $no_test++) { #si il y a au moins 1 ECHEC => ecriture de tout le contenu de $sortie_rapport if($is_grandeur_ECHEC) { - printRapport($sortie_rapport); + printRapport(" -> comparaison .maple : ECHEC\n\n$sortie_rapport"); } #sinon, on signale que tout est OK else { - printRapport(" -> pour toutes les grandeurs testees : OK\n\n"); + printRapport(" -> comparaison .maple : OK (pour toutes les grandeurs testees)\n\n"); } @@ -999,7 +1004,10 @@ BOUCLE_TEST:for(my $no_test=1; $no_test<=$nb_CVisu; $no_test++) { ################################################################################# #cas sans verification ################################################################################# - else { + #pas de verification si les conditions suivantes sont TOUTES remplies : + # - pas de fichier .verif + # - pas de fichier .maple.ref + if(not (-e $script_verif) and not (-e "$fichier_temp_maple.ref$no_test")) { printRapport(" -> OK (pas de verification pour ce test)\n\n"); } diff --git a/doc_procedure_verification.pdf b/doc_procedure_verification.pdf index 02ddbe377a50b10637e41feada8247a96ce8bf59..43eb53d50af045663578c5bc26579e5b4e5ee3e5 100644 GIT binary patch delta 27059 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 delta 27071 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