Bonjour,
désolé je commence juste à apprendre les tests unitaires. J'ai fais un test sur trois classes/fichiers. Quand j'ai écris les tests pour chacune des classes, je testai individuellement chaque classe, et tout était ok :
Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 :~/Sys/Mes.lib.php/SIMPLET2$ phpunit test/ViewhandlerTest PHPUnit 4.2.0 by Sebastian Bergmann. Configuration read from /home/thierrybo/Sys/Mes.lib.php/SIMPLET2/phpunit.xml ..... Time: 104 ms, Memory: 4.25Mb OK (5 tests, 5 assertions)
Quand je le lance globalement, un des tests de ce fichier ne passe plus :
Mon fichier phpunit.xml:
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 :~/Sys/Mes.lib.php/SIMPLET2$ phpunit PHPUnit 4.2.0 by Sebastian Bergmann. Configuration read from /home/thierrybo/Sys/Mes.lib.php/SIMPLET2/phpunit.xml IIIII.IIF.... Time: 159 ms, Memory: 4.75Mb There was 1 failure: 1) thierrybo\SimpleT\ViewHandlerTest::testLocation Failed asserting that '/test.php' matches PCRE pattern "/test\/templates\/test.php$/". /home/thierrybo/Sys/Mes.lib.php/SIMPLET2/test/ViewhandlerTest.php:45 FAILURES! Tests: 13, Assertions: 7, Failures: 1, Incomplete: 7.
et le test en question
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10<?xml version="1.0" encoding="UTF-8"?> <phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://schema.phpunit.de/4.2/phpunit.xsd" bootstrap="./vendor/autoload.php"> <testsuites> <testsuite name="Simple Template Tests"> <directory>./test</directory> </testsuite> </testsuites> </phpunit>
et donc je ne comprend pas ce qui peut se passer. Il n'y a aucune particularité dans les tests, pas de tests qui dépendent du résultat d'un autre, que des trucs basiques.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 function testLocation() { $view = new ViewHandler($this->stub_cache_lite, 'test.php', 0); $this->assertRegExp('/test\/templates\/test.php$/', $view->location()); }
Je vois bien que $view->location() renvoie '/test.php' au lieu du chemin complet, mais je n'arrive pas voir la cause avec la façon de lancer phpunit.
TB
Partager