docs test FINI !

++ mea culpa de charge
This commit is contained in:
LaNymphtaline
2021-06-05 14:42:11 +02:00
parent 6a567bc43b
commit b4edabfc8b
15 changed files with 1907 additions and 2 deletions
@@ -15,5 +15,11 @@ les constantes littérales. Au fil du développement, les tests ont été conclu
\section{ExpressionEntier}
Il n'y a rien à signaler sur le développement de ExpressionEntier.
\section{ExpressionBoolenne}
Le développement a été scindé en deux. Un premier groupe a commencer à écrire
les interfaces et les tests cependant il a rencontré des difficultés à coder
le constructeur, ont été repris par la suite par un autre groupe.
Cependant la méthode calculer() n'a pas posé de problème lors du développement.
@@ -0,0 +1,24 @@
% \chapter{Tests du paquetage interpreteurlir.motscles.instructions}
\section{Instruction}
Le développement de la classe Instruction a été mené lors de l'itération 1
en TDD, en effet la classe a été passée en classe abstraite lors de
l'itération 3. Les tests mené ont été conservés en commentaire.
\section{InstructionAffiche, InstructionEntre et InstructionSi(Vaen)}
Le développement de ces instructions n'a pas posé de problème, aussi leurs
tests ont été concluants.
\section{InstructionProcedure, InstructionRetour, InstructionStop et InstructionVaen}
Le développement de ces quatre instructions n'a pas posé de problème particulier.
Leurs tests ont permis de tester par la même occasion les méthodes de la classe
Programme.
\section{InstructionVar}
Le développement de l'instruction var a posé un léger problème avec la nécessité
que l'expression suivant le mot clé var contienne obligatoirement une affectation.
Hormis ce souci, le développement de cette instruction n'a pas posé outre problème.
@@ -0,0 +1,48 @@
% \chapter{Tests du paquetage interpreteurlir.motscles}
\section{Commande}
Le développement de la classe Commande a été mené lors de l'itération 1
en TDD, en effet la classe a été passée en classe abstraite lors de
l'itération 3. Les tests mené ont été conservés en commentaire.
\section{EssaiCommande}
Lors de l'itération 1, avant l'implémentation de classe Analyseur, pour
l'intégration des premières commandes debut, defs et fin nous avons utilisé
une classe EssaiCommande. Une fois la classe Analyseur implémentée, l'intégration
des autres commandes a été par la suite testée avec.
\section{CommandeCharge}
Le développement de charge n'a pas été simple, en effet, son implémentation
a soulevé un problème de conception. La commande charge doit faire appel à
l'Analyseur cependant celui-ci n'a pas été conçu de façon assez générale pour
prendre en compte ce cas de figure. Au vu des délais à tenir, nous avons choisi
la solution qui nous paraissait la plus viable. Celle-ci impliquait de recréer
des parties de la classe Analyseur au sein même de la classe CommandeCharge.
\\ Les tests de charge ont encore une particularité, en effet, ils dépendent
de la machine sur laquelle les tests sont effectués, il faut donc adapter les
tests à la machine utilisée. Cela consiste à avoir sur la machine utilisée des
chemins d'accès et des fichiers coïncidant avec ceux des tests.
\section{CommandeDebut}
La commande debut a évolué entre l'itération 1 et 2 avec l'ajout de la remise
à zéro du programme en plus de celle du contexte.
\section{CommandeDefs et CommandeFin}
Le développement de ces commandes n'a pas posé de problème, aussi leurs
tests ont été concluants.
\section{CommandeEfface, CommandeLance et CommandeListe}
Le développement de ces trois commandes n'a pas posé de problème particulier.
Leurs tests ont permis de tester par la même occasion les méthodes de la classe
Programme.
\section{CommandeSauve}
Le développement de ces commandes n'a pas posé de problème.
À l'instar de charge, la commande sauve nécessite que les chemins pour les tests
soient accessibles sur la machine utilisée.
@@ -0,0 +1,26 @@
% \chapter{Tests du paquetage interpreteurlir.programmes}
\section{Etiquette}
Aucune difficulté n'a été rencontrée lors du développement de la classe
Etiquette, aussi les tests ont été concluants.
\section{Programme}
Lors de l'implémentation de la classe Programme, certaines méthodes ne pouvaient
être testées directement car il manquait encore des instructions permettant de le
faire.
Lors de l'implémentation de ces instructions, les tests de celles-ci ont permis
de tester également les méthodes de programmes. Ainsi certains tests de Programme
n'ont pu être menés que lors de l'intégration avec les instructions ou commandes.
\section{Les programmes de tests}
Lors de l'itération 2, alors que le commandes sauve et charge n'étaient pas encore
implémentées, un composant permettait de charger un programme complet au lancement
de l'interpréteur pour les démonstrations.
\\ Lors de l'itération 3, après l'implémentation de la commande charge, quatre
fichiers contenant un programme écrit en langage LIR ont été écrits pour les
démonstrations et tests finaux de l'interpréteur. Il s'agit de l'exemple de
programme proposé dans le cahier des charges et des programmes EtatCivil,
Median3Entiers et Factorielle.
@@ -0,0 +1,21 @@
% \chapter{Tests du paquetage interpreteurlir}
\section{InterpreteurException et ExecuteurException}
Ces deux exceptions sont héritées de RuntimeException et n'ajoute aucun
comportement supplémentaire. Par conséquent, leurs tests n'étaient pas
déterminants pour la suite du développement de l'interpréteur.
\section{Contexte}
Le développement de la classe Contexte s'est déroulé sans difficultés.
Aussi les tests ont été concluants.
\section{Analyseur}
L'Analyseur n'a pas de tests unitaires car tous les tests ont été menés
lors de l'intégration. Tests d'intégration effectués en deux parties,
la première lors de l'itération 1 avec le test de la prise en charge
des commandes et d'instructions exécutées directement, la seconde lors de
l'itération 2 pour l'édition de programme.
@@ -0,0 +1,32 @@
\relax
\providecommand\hyper@newdestlabel[2]{}
\@writefile{toc}{\contentsline {chapter}{\numberline {1}Tests du paquetage interpreteurlir.donnees.litteraux}{8}{chapter.1}\protected@file@percent }
\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\addvspace {10\p@ }}
\@writefile{toc}{\contentsline {section}{\numberline {1.1}Litteral}{8}{section.1.1}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {1.2}Chaine}{8}{section.1.2}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {1.3}Entier}{8}{section.1.3}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {1.4}Booleen}{8}{section.1.4}\protected@file@percent }
\@setckpt{./fichiers/tests/docTests}{
\setcounter{page}{9}
\setcounter{equation}{0}
\setcounter{enumi}{0}
\setcounter{enumii}{0}
\setcounter{enumiii}{0}
\setcounter{enumiv}{0}
\setcounter{footnote}{0}
\setcounter{mpfootnote}{0}
\setcounter{part}{5}
\setcounter{chapter}{1}
\setcounter{section}{4}
\setcounter{subsection}{0}
\setcounter{subsubsection}{0}
\setcounter{paragraph}{0}
\setcounter{subparagraph}{0}
\setcounter{figure}{0}
\setcounter{table}{0}
\setcounter{Item}{0}
\setcounter{Hfootnote}{0}
\setcounter{bookmark@seq@number}{10}
\setcounter{section@level}{1}
}
@@ -1,5 +1,4 @@
% Partie 5 Tests
\large
\chapter*{Démarche globale}
Afin de développer l'Interpréteur LIR selon un modèle de cycle de vie
itératif, nous avons privilégié la méthode du TDD, Test Driven Development ou
@@ -16,4 +15,16 @@ framework de test JUnit.
\input{./fichiers/tests/chap_interpreteurlir.donnees}
\chapter{Tests du paquetage interpreteurlir.expressions}
\input{./fichiers/tests/chap_interpreteurlir.expressions}
\input{./fichiers/tests/chap_interpreteurlir.expressions}
\chapter{Tests du paquetage interpreteurlir}
\input{./fichiers/tests/chap_interpreteurlir}
\chapter{Tests du paquetage interpreteurlir.programmes}
\input{./fichiers/tests/chap_interpreteurlir.programmes}
\chapter{Tests du paquetage interpreteurlir.motscles}
\input{./fichiers/tests/chap_interpreteurlir.motscles}
\chapter{Tests du paquetage interpreteurlir.motscles.instructions}
\input{./fichiers/tests/chap_interpreteurlir.motscles.instructions}
@@ -0,0 +1,25 @@
\relax
\providecommand\hyper@newdestlabel[2]{}
\@setckpt{./fichiers/tests/docTests.tex}{
\setcounter{page}{7}
\setcounter{equation}{0}
\setcounter{enumi}{0}
\setcounter{enumii}{0}
\setcounter{enumiii}{0}
\setcounter{enumiv}{0}
\setcounter{footnote}{0}
\setcounter{mpfootnote}{0}
\setcounter{part}{5}
\setcounter{chapter}{0}
\setcounter{section}{0}
\setcounter{subsection}{0}
\setcounter{subsubsection}{0}
\setcounter{paragraph}{0}
\setcounter{subparagraph}{0}
\setcounter{figure}{0}
\setcounter{table}{0}
\setcounter{Item}{0}
\setcounter{Hfootnote}{0}
\setcounter{bookmark@seq@number}{5}
\setcounter{section@level}{0}
}