Skip to content
Snippets Groups Projects
Commit dc48558e authored by noapo's avatar noapo
Browse files

couvertur des tests

parent 33fde1c2
No related branches found
No related tags found
No related merge requests found
Pipeline #10596 passed
...@@ -202,6 +202,9 @@ Pour vérifier que votre programme respecte les conventions de codage vous pouve ...@@ -202,6 +202,9 @@ Pour vérifier que votre programme respecte les conventions de codage vous pouve
Pour la partie **test** du programme c'est moins réjouissant, en effet Hacker a créé une classe de test de son cru, plutôt que d'utiliser le *framework* `Junit`, cela peut être une bonne idée dans certains cas notamment pour les tests d'*intégration* (quand on regroupe plusieurs classes ensemble), mais les tests de Hacker laissent faussement penser que le programme fonctionne. Pour apercevoir les dysfonctionnements il suffit pour d'exécuter les méthodes `testPlus` et `testMinus` deux fois de suite. Pour la partie **test** du programme c'est moins réjouissant, en effet Hacker a créé une classe de test de son cru, plutôt que d'utiliser le *framework* `Junit`, cela peut être une bonne idée dans certains cas notamment pour les tests d'*intégration* (quand on regroupe plusieurs classes ensemble), mais les tests de Hacker laissent faussement penser que le programme fonctionne. Pour apercevoir les dysfonctionnements il suffit pour d'exécuter les méthodes `testPlus` et `testMinus` deux fois de suite.
Vérifiez la couverture de code : `mvn jacoco:prepare-agent install jacoco:report`
Puis visualisez le résultat : `open target/site/jacoco/index.html`
## Débogage ## Débogage
......
package fr.nancy.iut;
/**
* Test the CalcEngine class.
*
* @author Hacker T. Largebrain
* @version 1.0
*/
// package calculator;
public class CalcEngineTester
{
// The engine to be tested.
private CalcEngine engine;
/**
* Constructor for objects of class CalcEngineTester
*/
public CalcEngineTester()
{
engine = new CalcEngine();
}
/**
* Test everything.
*/
public void testAll()
{
System.out.println("Testing the addition operation.");
System.out.println("The result is: " + testPlus());
System.out.println("Testing the subtraction operation.");
System.out.println("The result is: " + testMinus());
System.out.println("All tests passed.");
}
/**
* Test the plus operation of the engine.
* @return the result of calculating 3+4.
*/
public int testPlus()
{
// Make sure the engine is in a valid starting state.
engine.clear();
// Simulate the key presses: 3 + 4 =
engine.numberPressed(3);
engine.plus();
engine.numberPressed(4);
engine.equals();
// Return the result, which should be 7.
return engine.getDisplayValue();
}
/**
* Test the minus operation of the engine.
* @return the result of calculating 9 - 4.
*/
public int testMinus()
{
// Make sure the engine is in a valid starting state.
engine.clear();
// Simulate the presses: 9 - 4 =
engine.numberPressed(9);
engine.minus();
engine.numberPressed(4);
engine.equals();
// Return the result, which should be 5.
return engine.getDisplayValue();
}
public static void main(String[] args) {
CalcEngineTester tester = new CalcEngineTester();
tester.testAll();
}
}
...@@ -37,4 +37,15 @@ public class Calculator ...@@ -37,4 +37,15 @@ public class Calculator
public static void main(String[] args) { public static void main(String[] args) {
(new Calculator()).show(); (new Calculator()).show();
} }
/**
* @return the engine
*/
public CalcEngine getEngine() {return engine;}
/**
* @return the gui
*/
public UserInterface getGui() {return gui;}
} }
...@@ -163,4 +163,26 @@ public class UserInterface ...@@ -163,4 +163,26 @@ public class UserInterface
showingAuthor = !showingAuthor; showingAuthor = !showingAuthor;
} }
/**
* Getter visible
*/
public boolean getVisible()
{
return frame.isVisible();
}
/**
* getter Display
*/
public JTextField getDisplay()
{
return display;
}
public JLabel getStatus()
{
return status;
}
} }
...@@ -16,7 +16,7 @@ public class CalcEngineTest { ...@@ -16,7 +16,7 @@ public class CalcEngineTest {
* @return the number pressed. * @return the number pressed.
*/ */
@Test @Test
void testClear() { public void testClear() {
// Je crée une nouvelle calculatrice // Je crée une nouvelle calculatrice
CalcEngine calculette = new CalcEngine(); CalcEngine calculette = new CalcEngine();
// Je lui donne une valeur et je vérifie que la valeur en sortie est bien celle que je lui ai donnée // Je lui donne une valeur et je vérifie que la valeur en sortie est bien celle que je lui ai donnée
...@@ -33,7 +33,7 @@ public class CalcEngineTest { ...@@ -33,7 +33,7 @@ public class CalcEngineTest {
* @return the result of calculating 9-2. * @return the result of calculating 9-2.
*/ */
@Test @Test
void testEquals() { public void testEquals() {
CalcEngine calculette = new CalcEngine(); CalcEngine calculette = new CalcEngine();
////Je fais le teste en faisant la soustraction des 2 chiffres ////Je fais le teste en faisant la soustraction des 2 chiffres
...@@ -56,7 +56,7 @@ public class CalcEngineTest { ...@@ -56,7 +56,7 @@ public class CalcEngineTest {
* Test of getAuthor method, of class CalcEngine. * Test of getAuthor method, of class CalcEngine.
*/ */
@Test @Test
void testGetAuthor() { public void testGetAuthor() {
CalcEngine calculette = new CalcEngine(); CalcEngine calculette = new CalcEngine();
assertEquals("Hacker T. Largebrain", calculette.getAuthor()); assertEquals("Hacker T. Largebrain", calculette.getAuthor());
...@@ -66,7 +66,7 @@ public class CalcEngineTest { ...@@ -66,7 +66,7 @@ public class CalcEngineTest {
* @return the tow number pressed. * @return the tow number pressed.
*/ */
@Test @Test
void testGetDisplayValue() { public void testGetDisplayValue() {
CalcEngine calculette = new CalcEngine(); CalcEngine calculette = new CalcEngine();
//Je fais le teste en vérifiant que ce que je rentre est bien égale à ce que m'affiche la calculatrice //Je fais le teste en vérifiant que ce que je rentre est bien égale à ce que m'affiche la calculatrice
...@@ -80,7 +80,7 @@ public class CalcEngineTest { ...@@ -80,7 +80,7 @@ public class CalcEngineTest {
* Test of getTitle method, of class CalcEngine. * Test of getTitle method, of class CalcEngine.
*/ */
@Test @Test
void testGetTitle() { public void testGetTitle() {
// //Je fais le teste pour la valeur voulut // //Je fais le teste pour la valeur voulut
String res = "Super Calculator"; String res = "Super Calculator";
CalcEngine calculette = new CalcEngine(); CalcEngine calculette = new CalcEngine();
...@@ -93,7 +93,7 @@ public class CalcEngineTest { ...@@ -93,7 +93,7 @@ public class CalcEngineTest {
* Test of getVersion method, of class CalcEngine. * Test of getVersion method, of class CalcEngine.
*/ */
@Test @Test
void testGetVersion() { public void testGetVersion() {
// //Je fais le teste pour la valeur voulut // //Je fais le teste pour la valeur voulut
String res = "version 0.2"; String res = "version 0.2";
CalcEngine calculette = new CalcEngine(); CalcEngine calculette = new CalcEngine();
...@@ -107,7 +107,7 @@ public class CalcEngineTest { ...@@ -107,7 +107,7 @@ public class CalcEngineTest {
* @return the result of calculating 8-2. * @return the result of calculating 8-2.
*/ */
@Test @Test
void testMinus() { public void testMinus() {
CalcEngine calculette = new CalcEngine(); CalcEngine calculette = new CalcEngine();
//Je fais le teste en faisant la soustraction des 2 chiffres //Je fais le teste en faisant la soustraction des 2 chiffres
calculette.numberPressed(8); calculette.numberPressed(8);
...@@ -123,7 +123,7 @@ public class CalcEngineTest { ...@@ -123,7 +123,7 @@ public class CalcEngineTest {
* @return the tow number pressed. * @return the tow number pressed.
*/ */
@Test @Test
void testNumberPressed() { public void testNumberPressed() {
CalcEngine calculette = new CalcEngine(); CalcEngine calculette = new CalcEngine();
//Je fais le teste en vérifiant que ce que je rentre est bien égale à ce que m'affiche la calculatrice //Je fais le teste en vérifiant que ce que je rentre est bien égale à ce que m'affiche la calculatrice
calculette.numberPressed(9); calculette.numberPressed(9);
...@@ -138,7 +138,7 @@ public class CalcEngineTest { ...@@ -138,7 +138,7 @@ public class CalcEngineTest {
* @return the result of calculating 7+1. * @return the result of calculating 7+1.
*/ */
@Test @Test
void testPlus() { public void testPlus() {
CalcEngine calculette = new CalcEngine(); CalcEngine calculette = new CalcEngine();
//Je fais le teste en faisant l'addition des 2 chiffres //Je fais le teste en faisant l'addition des 2 chiffres
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment