Bonjour,
Je suis confronté à un problème, non bloquant soit, mais gênant.
En effet, je n'arrive pas à initialiser les objets passés en paramètre lors de mes tests de procédures ou fonctions.
J'arrive à contourner cela, en utilisant les propriétés de ces objets, mais il doit toutefois y avoir une solution plus élégante.
Afin d'illustrer mon problème, voici un extrait de création de classe ainsi que les scenarii de test d'une méthode.
1-Extrait du code de la classe
Le constructeur, les getters et les setters sont classiques
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 //Vecteur 2D cVecteur est une Classe PRIVÉ Y est un réel = 0 //Ordonnée X est un réel = 0 //Abscisse FIN // Résumé : Ajoute un vecteur au vecteur en cours // Syntaxe : //[ <Résultat> = ] Ajouter (<clV2> est cVecteur) // // Paramètres : // clV2 (cVecteur) : <indiquez ici le rôle de V2> // Valeur de retour : // cVecteur : <indiquez ici les valeurs possibles ainsi que leur interprétation> // // Exemple : // Indiquez ici un exemple d'utilisation. // FONCTION Ajouter(LOCAL clV2 est cVecteur) clRésultat est un cVecteur clRésultat.setX(:X+clV2.getX()) clRésultat.setY(:Y+clV2.getY()) RENVOYER clRésultat
2-Scénario défini "automatiquement" lors de la création du test
3-Scénario "alternatif" afin de réaliser le test
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 c est un objet cVecteur Contrôleur1=c:Ajouter(clV2)
Je désirerais passer directement les valeurs de c, clV2 et Controleur1 sans avoir à utiliser la solution alternative.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 c est un objet cVecteur //Vecteur en cours clV2 est un objet cVecteur //Vecteur à ajouter clRésultat est un objet cVecteur //Vecteur résultat //rX1, rY1, rX2 et rY2 sont déclarés en tant que paramètres d'entrée dans l'onglet de test c=allouer un cVecteur(rX1,rY1) clV2=allouer un cVecteur(rX2,rY2) clRésultat=c:Ajouter(clV2) //rResX et rResY sont déclarés en tant que paramètres de sortie dans l'onglet de test rResX=clRésultat.getX() rResY=clRésultat.getY()
J'ai déjà tenté d'encadrer mes valeurs par "[]", "{}", "()" et "<>" en utilisant ";" comme séparateur sans résultat.
Merci.
Partager