User Tools

Site Tools


2013_2014:lp:idse:gl:td:tests

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
2013_2014:lp:idse:gl:td:tests [2013/08/07 23:52]
blay [Créer une suite de tests JUnit]
2013_2014:lp:idse:gl:td:tests [2014/10/10 07:54] (current)
blay [Tests unitaires avec Junit]
Line 5: Line 5:
  
 Nous vous proposons ici d'​apprendre JUnit en utilisant certaines parties de ces tutoriaux. Nous vous proposons ici d'​apprendre JUnit en utilisant certaines parties de ces tutoriaux.
 +
 +
 +Pour les étudiants qui pensent réaliser leur projet ou une partie de leur projet en php,
 +voici [[2014_2015:​lp:​idse:​gl:​td_phpunit|quelques tutoriaux avec PHP UNit]], mais que nous n'​avons pas testé.
 +
  
  
Line 56: Line 61:
 http://​www.vogella.com/​articles/​JUnit/​article.html#​juniteclipse_testsuite http://​www.vogella.com/​articles/​JUnit/​article.html#​juniteclipse_testsuite
    
 +
 +===== Tests paramétrés =====
 +
 +[[http://​rpouiller.developpez.com/​tutoriels/​java/​tests-unitaires-junit4/#​LVI|Basé sur cet exemple.]]
 +
 +
 +//Les tests paramétrés permettent d'​exécuter plusieurs fois un cas de tests avec des valeurs différentes. Le cas de test doit être annoté avec @RunWith avec pour valeur Parameterized. Les paramètres sont indiqués par une méthode annotée avec @Parameters retournant une Collection. Le cas de tests paramétrés doit comporter un constructeur correspondant aux paramètres.//​
 +
 +Voici ci-après un exemple de tests paramétrés.
 +Adaptez le à votre exemple.
 +
 +<code java>
 +package math;
 +
 +import static org.junit.Assert.*;​
 +
 +import java.util.Arrays;​
 +import java.util.List;​
 +
 +import org.junit.After;​
 +import org.junit.Before;​
 +import org.junit.Test;​
 +import org.junit.runner.RunWith;​
 +import org.junit.runners.Parameterized;​
 +import org.junit.runners.Parameterized.Parameters;​
 +
 +@RunWith(Parameterized.class)
 +public class ParametreTests {
 +
 +   Calculator op;
 +   @Parameters
 +     public static List<​Object[]>​ getParametres() {
 +         return Arrays.asList(new Object[][] {
 +                 { 0, 0, 0 },
 +                 { 1, 3, 4 },
 +                 { 200, 800, 1000 } } );
 +     }
 +
 +     int first;
 +     int second;
 +     int result ;
 +     ​
 + ​public ParametreTests(int premier, int second, int res) {
 +         first = premier;
 +         this.second = second;
 +         result = res;
 +     }
 +     ​
 + @Before
 + public void setUp() throws Exception {
 + op = new Calculator();​
 + }
 +
 + @After
 + public void tearDown() throws Exception {
 + }
 +
 +    @Test
 +    ​public void testCalculer() throws Exception {
 +    System.out.println(first + "+ " + second +"​="​+ result);
 +     assertEquals(first,​ second, result);
 +    }
 +}
 +</​code>​
 +
 +
 +
 ===== Exécuter les tests JUnit en dehors d'​Eclipse ===== ===== Exécuter les tests JUnit en dehors d'​Eclipse =====
 http://​www.vogella.com/​articles/​JUnit/​article.html#​juniteclipse_code http://​www.vogella.com/​articles/​JUnit/​article.html#​juniteclipse_code
  
  
-====== Tests d'​intégrations avec easyMock ====== 
  
-http://​www.vogella.com/​articles/​EasyMock/​article.html 
 ===== A vous !! ===== ===== A vous !! =====
  
Line 70: Line 140:
   * Continuez!   * Continuez!
  
 +<note warning>​N'​oubliez pas de commiter vos codes et les tests !!</​note>​
 +
 +===== A la fin de cette séance =====
 + 
 +<box round  rgb(175,​238,​238) rgb(255,​255,​204) 97%|Je sais, j'ai :   >
 +  * A quoi servent les tests? Quels types de tests existent-ils ?
 +  * Avancé sur le développement du bus et j'ai créé les tests unitaires associés à mes codes;
 +  * Utilisé le gestionnaire de version pour sauvegarder mes codes;
 +
 +</​box>​
 ===== Références ===== ===== Références =====
  
2013_2014/lp/idse/gl/td/tests.1375912337.txt.gz · Last modified: 2013/08/07 23:52 by blay