diff options
Diffstat (limited to '3rdparty/simpletest/docs/fr/unit_test_documentation.html')
-rw-r--r-- | 3rdparty/simpletest/docs/fr/unit_test_documentation.html | 447 |
1 files changed, 0 insertions, 447 deletions
diff --git a/3rdparty/simpletest/docs/fr/unit_test_documentation.html b/3rdparty/simpletest/docs/fr/unit_test_documentation.html deleted file mode 100644 index a7c31f95dbb..00000000000 --- a/3rdparty/simpletest/docs/fr/unit_test_documentation.html +++ /dev/null @@ -1,447 +0,0 @@ -<html> -<head> -<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> -<title>Documentation SimpleTest pour les tests de régression en PHP</title> -<link rel="stylesheet" type="text/css" href="docs.css" title="Styles"> -</head> -<body> -<div class="menu_back"><div class="menu"> -<a href="index.html">SimpleTest</a> - | - <a href="overview.html">Overview</a> - | - <a href="unit_test_documentation.html">Unit tester</a> - | - <a href="group_test_documentation.html">Group tests</a> - | - <a href="mock_objects_documentation.html">Mock objects</a> - | - <a href="partial_mocks_documentation.html">Partial mocks</a> - | - <a href="reporter_documentation.html">Reporting</a> - | - <a href="expectation_documentation.html">Expectations</a> - | - <a href="web_tester_documentation.html">Web tester</a> - | - <a href="form_testing_documentation.html">Testing forms</a> - | - <a href="authentication_documentation.html">Authentication</a> - | - <a href="browser_documentation.html">Scriptable browser</a> -</div></div> -<h1>Documentation sur les tests unitaires en PHP</h1> - This page... - <ul> -<li> - <a href="#unitaire">Scénarios de test unitaire</a> - et opérations basiques. - </li> -<li> - <a href="#extension_unitaire">Étendre des scénarios de test</a> - pour les personnaliser à votre propre projet. - </li> -<li> - <a href="#lancement_unitaire">Lancer un scénario seul</a> - comme un script unique. - </li> -</ul> -<div class="content"> - <h2> -<a class="target" name="unitaire"></a>Scénarios de tests unitaires</h2> - <p> - Le coeur du système est un framework de tests de régression - construit autour des scénarios de test. - Un exemple de scénario de test ressemble à... -<pre> -<strong>class FileTestCase extends UnitTestCase { -}</strong> -</pre> - Si aucun nom de test n'est fourni au moment - de la liaison avec le constructeur alors - le nom de la classe sera utilisé. - Il s'agit du nom qui sera affiché dans les résultats du test. - </p> - <p> - Les véritables tests sont ajoutés en tant que méthode - dans le scénario de test dont le nom par défaut - commence par la chaîne "test" - et quand le scénario de test est appelé toutes les méthodes - de ce type sont exécutées dans l'ordre utilisé - par l'introspection de PHP pour les trouver. - Peuvent être ajoutées autant de méthodes de test que nécessaires. - Par exemple... -<pre> -require_once('simpletest/autorun.php'); -require_once('../classes/writer.php'); - -class FileTestCase extends UnitTestCase { - function FileTestCase() { - $this->UnitTestCase('File test'); - }<strong> - - function setUp() { - @unlink('../temp/test.txt'); - } - - function tearDown() { - @unlink('../temp/test.txt'); - } - - function testCreation() { - $writer = &new FileWriter('../temp/test.txt'); - $writer->write('Hello'); - $this->assertTrue(file_exists('../temp/test.txt'), 'File created'); - }</strong> -} -</pre> - Le constructeur est optionnel et souvent omis. Sans nom, - le nom de la classe est utilisé comme nom pour le scénario de test. - </p> - <p> - Notre unique méthode de test pour le moment est - <span class="new_code">testCreation()</span> où nous vérifions - qu'un fichier a bien été créé par notre objet - <span class="new_code">Writer</span>. Nous pourrions avoir mis - le code <span class="new_code">unlink()</span> dans cette méthode, - mais en la plaçant dans <span class="new_code">setUp()</span> - et <span class="new_code">tearDown()</span> nous pouvons l'utiliser - pour nos autres méthodes de test que nous ajouterons. - </p> - <p> - La méthode <span class="new_code">setUp()</span> est lancé - juste avant chaque méthode de test. - <span class="new_code">tearDown()</span> est lancé après chaque méthode de test. - </p> - <p> - Vous pouvez placer une initialisation de - scénario de test dans le constructeur afin qu'elle soit lancée - pour toutes les méthodes dans le scénario de test - mais dans un tel cas vous vous exposeriez à des interférences. - Cette façon de faire est légèrement moins rapide, - mais elle est plus sûre. - Notez que si vous arrivez avec des notions de JUnit, - il ne s'agit pas du comportement auquel vous êtes habitués. - Bizarrement JUnit re-instancie le scénario de test - pour chaque méthode de test pour se prévenir - d'une telle interférence. - SimpleTest demande à l'utilisateur final d'utiliser - <span class="new_code">setUp()</span>, mais fournit aux codeurs de bibliothèque d'autres crochets. - </p> - <p> - Pour rapporter les résultats de test, - le passage par une classe d'affichage - notifiée par - les différentes méthodes de type <span class="new_code">assert...()</span> - - est utilisée. En voici la liste complète pour - la classe <span class="new_code">UnitTestCase</span>, - celle par défaut dans SimpleTest... - <table><tbody> - <tr> -<td><span class="new_code">assertTrue($x)</span></td> -<td>Echoue si $x est faux</td> -</tr> - <tr> -<td><span class="new_code">assertFalse($x)</span></td> -<td>Echoue si $x est vrai</td> -</tr> - <tr> -<td><span class="new_code">assertNull($x)</span></td> -<td>Echoue si $x est initialisé</td> -</tr> - <tr> -<td><span class="new_code">assertNotNull($x)</span></td> -<td>Echoue si $x n'est pas initialisé</td> -</tr> - <tr> -<td><span class="new_code">assertIsA($x, $t)</span></td> -<td>Echoue si $x n'est pas de la classe ou du type $t</td> -</tr> - <tr> -<td><span class="new_code">assertEqual($x, $y)</span></td> -<td>Echoue si $x == $y est faux</td> -</tr> - <tr> -<td><span class="new_code">assertNotEqual($x, $y)</span></td> -<td>Echoue si $x == $y est vrai</td> -</tr> - <tr> -<td><span class="new_code">assertIdentical($x, $y)</span></td> -<td>Echoue si $x === $y est faux</td> -</tr> - <tr> -<td><span class="new_code">assertNotIdentical($x, $y)</span></td> -<td>Echoue si $x === $y est vrai</td> -</tr> - <tr> -<td><span class="new_code">assertReference($x, $y)</span></td> -<td>Echoue sauf si $x et $y sont la même variable</td> -</tr> - <tr> -<td><span class="new_code">assertCopy($x, $y)</span></td> -<td>Echoue si $x et $y sont la même variable</td> -</tr> - <tr> -<td><span class="new_code">assertPattern($p, $x)</span></td> -<td>Echoue sauf si l'expression rationnelle $p capture $x</td> -</tr> - <tr> -<td><span class="new_code">assertNoPattern($p, $x)</span></td> -<td>Echoue si l'expression rationnelle $p capture $x</td> -</tr> - <tr> -<td><span class="new_code">expectError($x)</span></td> -<td>Echoue si l'erreur correspondante n'arrive pas</td> -</tr> - <tr> -<td><span class="new_code">expectException($x)</span></td> -<td>Echoue si l'exception correspondante n'est pas levée</td> -</tr> - <tr> -<td><span class="new_code">ignoreException($x)</span></td> -<td>Avale toutes les exceptions correspondantes qui surviendraient</td> -</tr> - <tr> -<td><span class="new_code">assert($e)</span></td> -<td>Echoue sur un objet <a href="expectation_documentation.html">attente</a> $e qui échouerait</td> -</tr> - </tbody></table> - Toutes les méthodes d'assertion peuvent recevoir - une description optionnelle : - cette description sert pour étiqueter le résultat. - Sans elle, une message par défaut est envoyée à la place : - il est généralement suffisant. - Ce message par défaut peut encore être encadré - dans votre propre message si vous incluez "%s" - dans la chaîne. - Toutes les assertions renvoient vrai / true en cas de succès - et faux / false en cas d'échec. - </p> - <p> - D'autres exemples... -<pre> -<strong>$variable = null; -$this->assertNull($variable, 'Should be cleared');</strong> -</pre> - ...passera et normalement n'affichera aucun message. - Si vous avez <a href="http://www.lastcraft.com/display_subclass_tutorial.php"> - configuré le testeur pour afficher aussi les succès</a> - alors le message sera affiché comme tel. -<pre> -<strong>$this->assertIdentical(0, false, 'Zero is not false [%s]');</strong> -</pre> - Ceci échouera étant donné qu'il effectue une vérification - sur le type en plus d'une comparaison sur les deux valeurs. - La partie "%s" est remplacée par le message d'erreur - par défaut qui aurait été affiché si nous n'avions pas fourni le nôtre. - Cela nous permet d'emboîter les messages de test. -<pre> -<strong>$a = 1; -$b = $a; -$this->assertReference($a, $b);</strong> -</pre> - Échouera étant donné que la variable <span class="new_code">$b</span> - est une copie de <span class="new_code">$a</span>. -<pre> -<strong>$this->assertPattern('/hello/i', 'Hello world');</strong> -</pre> - Là, ça passe puisque la recherche est insensible - à la casse et que donc <span class="new_code">hello</span> - est bien repérable dans <span class="new_code">Hello world</span>. -<pre> -<strong>$this->expectError();</strong> -trigger_error('Catastrophe'); -</pre> - Ici la vérification attrape le message "Catastrophe" - sans vérifier le texte et passe. - Elle enlève l'erreur de la queue au passage. -<pre> -<strong>$this->expectError('Catastrophe');</strong> -trigger_error('Catastrophe'); -</pre> - La vérification d'erreur suivante teste non seulement - l'existance de l'erreur mais aussi le texte qui, - dans le cas présent, correspond et donc un nouveau succès. - Si des erreurs non vérifiées sont laissées pour compte - à la fin d'une méthode de test alors un exception sera levé - dans le test. - </p> - <p> - Notez que SimpleTest ne peut pas attraper des erreurs PHP - au moment de la compilation. - </p> - <p> - Les scénarios de tests peuvent utiliser des méthodes - bien pratiques pour déboguer le code ou pour étendre la suite... - <table><tbody> - <tr> -<td><span class="new_code">setUp()</span></td> -<td>Est lancée avant chaque méthode de test</td> -</tr> - <tr> -<td><span class="new_code">tearDown()</span></td> -<td>Est lancée après chaque méthode de test</td> -</tr> - <tr> -<td><span class="new_code">pass()</span></td> -<td>Envoie un succès</td> -</tr> - <tr> -<td><span class="new_code">fail()</span></td> -<td>Envoie un échec</td> -</tr> - <tr> -<td><span class="new_code">error()</span></td> -<td>Envoi un évènement exception</td> -</tr> - <tr> -<td><span class="new_code">signal($type, $payload)</span></td> -<td>Envoie un message défini par l'utilisateur au rapporteur du test</td> -</tr> - <tr> -<td><span class="new_code">dump($var)</span></td> -<td>Effectue un <span class="new_code">print_r()</span> formaté pour du déboguage rapide et grossier</td> -</tr> - </tbody></table> - </p> - - <h2> -<a class="target" name="extension_unitaire"></a>Etendre les scénarios de test</h2> - <p> - Bien sûr des méthodes supplémentaires de test - peuvent être ajoutées pour créer d'autres types - de scénario de test afin d'étendre le framework... -<pre> -require_once('simpletest/autorun.php'); -<strong> -class FileTester extends UnitTestCase { - function FileTester($name = false) { - $this->UnitTestCase($name); - } - - function assertFileExists($filename, $message = '%s') { - $this->assertTrue( - file_exists($filename), - sprintf($message, 'File [$filename] existence check')); - }</strong> -} -</pre> - Ici la bibliothèque SimpleTest est localisée - dans un répertoire local appelé <em>simpletest</em>. - Pensez à le modifier pour votre propre environnement. - </p> - <p> - Alternativement vous pourriez utiliser dans votre code - un directive <span class="new_code">SimpleTestOptions::ignore('FileTester');</span>. - </p> - <p> - Ce nouveau scénario peut être hérité exactement - comme un scénario de test classique... -<pre> -class FileTestCase extends <strong>FileTester</strong> { - - function setUp() { - @unlink('../temp/test.txt'); - } - - function tearDown() { - @unlink('../temp/test.txt'); - } - - function testCreation() { - $writer = &new FileWriter('../temp/test.txt'); - $writer->write('Hello');<strong> - $this->assertFileExists('../temp/test.txt');</strong> - } -} -</pre> - </p> - <p> - Si vous souhaitez un scénario de test sans - toutes les assertions de <span class="new_code">UnitTestCase</span> - mais uniquement avec les vôtres propres, - vous aurez besoin d'étendre la classe - <span class="new_code">SimpleTestCase</span> à la place. - Elle se trouve dans <em>simple_test.php</em> - en lieu et place de <em>unit_tester.php</em>. - A consulter <a href="group_test_documentation.html">plus tard</a> - si vous souhaitez incorporer les scénarios - d'autres testeurs unitaires dans votre suite de test. - </p> - - <h2> -<a class="target" name="lancement_unitaire"></a>Lancer un unique scénario de test</h2> - <p> - Ce n'est pas souvent qu'il faille lancer des scénarios - avec un unique test. Sauf lorsqu'il s'agit de s'arracher - les cheveux sur un module à problème sans pour - autant désorganiser la suite de test principale. - Avec <em>autorun</em> aucun échafaudage particulier - n'est nécessaire, il suffit de lancer votre test et - vous y êtes. - </p> - <p> - Vous pouvez même décider quel rapporteur - (par exemple, <span class="new_code">TextReporter</span> ou <span class="new_code">HtmlReporter</span>) - vous préférez pour un fichier spécifique quand il est lancé - tout seul... -<pre> -<?php -require_once('simpletest/autorun.php');<strong> -SimpleTest :: prefer(new TextReporter());</strong> -require_once('../classes/writer.php'); - -class FileTestCase extends UnitTestCase { - ... -} -?> -</pre> - Ce script sera lancé tel que mais il n'y aura - aucun succès ou échec avant que des méthodes de test soient ajoutées. - </p> - - </div> - References and related information... - <ul> -<li> - La page de SimpleTest sur - <a href="http://sourceforge.net/projects/simpletest/">SourceForge</a>. - </li> -<li> - La page de téléchargement de SimpleTest sur - <a href="http://www.lastcraft.com/simple_test.php">LastCraft</a>. - </li> -<li> - <a href="http://simpletest.org/api/">L'API complète de SimpleTest</a> - à partir de PHPDoc. - </li> -</ul> -<div class="menu_back"><div class="menu"> -<a href="index.html">SimpleTest</a> - | - <a href="overview.html">Overview</a> - | - <a href="unit_test_documentation.html">Unit tester</a> - | - <a href="group_test_documentation.html">Group tests</a> - | - <a href="mock_objects_documentation.html">Mock objects</a> - | - <a href="partial_mocks_documentation.html">Partial mocks</a> - | - <a href="reporter_documentation.html">Reporting</a> - | - <a href="expectation_documentation.html">Expectations</a> - | - <a href="web_tester_documentation.html">Web tester</a> - | - <a href="form_testing_documentation.html">Testing forms</a> - | - <a href="authentication_documentation.html">Authentication</a> - | - <a href="browser_documentation.html">Scriptable browser</a> -</div></div> -<div class="copyright"> - Copyright<br>Marcus Baker 2006 - </div> -</body> -</html> |