Bonjour à tous,
Pour résumer :
j'arrive à faire fonctionner phpunit avec une série de tests rassemblés dans un classe étendant PHPUnit_Framework_TestCase.
Je veux utiliser les fonctions de codecoverage avec xdebug.
ça ne fonctionne pas : ça tourne dans le vide et au bout de quelques minutes, le navigateur me propose de télécharger mon script. Sur le serveur, un log d'erreur est créé avec une erreur 503
-> si je réduis le nombre de tests, ça passe
-> j'ai essayé de modifier la memory_limit en la passant à 2000M ( ! ) mais ça ne change rien.
-> même chose avec set_time_limit
J'avoue ne pas savoir quoi faire pour essayer de trouver l'origine du problème
Tout d'abord ma config/info complémentaire :
PHP 5.3.2 installé sur windows avec ZendServer
Xdebug installé
Tests portant sur une extension réalisée pour Mediawiki 1.15.4
Maintenant un peu de code :
le fichier xml de config de phpunit
le fichier PHP qui lance les tests (en ligne de commande j'ai des tas d'erreurs d'inclusion)
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43<?xml version="1.0" encoding="UTF-8"?> <phpunit backupGlobals="false" backupStaticAttributes="false" colors="false" convertErrorsToExceptions="true" convertNoticesToExceptions="true" convertWarningsToExceptions="true" forceCoversAnnotation="false" mapTestClassNameToCoveredClassName="false" processIsolation="false" stopOnError="false" stopOnFailure="false" stopOnIncomplete="false" stopOnSkipped="false" syntaxCheck="false" strict="false" verbose="false"> <testsuites> <testsuite name="My Test Suite"> <directory>/MonExtension</directory> <file>/MonExtension/Controller.php</file> </testsuite> </testsuites> <logging> <log type="coverage-html" target="../../../../../../reports/my-wiki" charset="UTF-8" yui="true"/> </logging> <filter> <blacklist> <exclude> <directory suffix=".php">../../../../../../../../ZendServer</directory> <directory suffix=".php">../../../../../../my/website</directory> </exclude> </blacklist> <whitelist> <directory suffix=".php">../../../../../../my/website/extensions/MonExtension</directory> <exclude> <directory suffix=".php">../../../../../../my/website/extensions/MonExtension/maintenance</directory> </exclude> </whitelist> </filter> </phpunit>
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
30
31 <?php ini_set('memory_limit', '2000M'); set_time_limit(500); error_reporting(E_ALL & ~E_NOTICE); $IP = '../../../../'; putenv("MW_INSTALL_PATH=$IP"); require_once ($IP.'includes/WebStart.php'); set_include_path(implode(PATH_SEPARATOR, array( 'D:\zend\ZendServer\bin\PEAR', get_include_path(), ))); require '/../../autoload.php'; //autoload personnel de l'extension require 'D:\zend\ZendServer\bin\PEAR\PHPUnit.php'; require 'D:\zend\ZendServer\bin\PEAR\PHPUnit\Autoload.php'; $_SERVER['argv'] = array( '--configuration' , 'D:\zend\Apache2\htdocs\my\website\extensions\MonExtension\maintenance\tests\phpunit-config.xml' ); echo '<pre>'; try { PHPUnit_TextUI_Command::main(); } catch(Exception $e) { print_r($e->getTrace()); } echo '</pre>';
output quand je lance le test sans code coverage
Par avance merci pour vos réponses
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 PHPUnit @package_version@ by Sebastian Bergmann. ............... Time: 48 seconds, Memory: 4.75Mb OK (15 tests, 43 assertions)
Partager