Toggle navigation
PHPUnit
7.0 (beta)
6.5 (
stable
)
5.7 (old)
English
French
Japanese
Brazilian Portuguese
Simplified Chinese
1. Installer PHPUnit
Pré-requis
PHP Archive (PHAR)
Windows
Vérification des versions PHAR de PHPUnit
Composer
Paquets optionnels
2. Écrire des tests pour PHPUnit
Dépendances des tests
Fournisseur de données
Tester des exceptions
Tester les erreurs PHP
Tester la sortie écran
Sortie d'erreur
Cas limite
3. Le lanceur de tests en ligne de commandes
Options de la ligne de commandes
4. Fixtures
Plus de setUp() que de tearDown()
Variantes
Partager les Fixtures
Etat global
5. Organiser les tests
Composer une suite de tests en utilisant le système de fichiers
Composer une suite de tests en utilisant la configuration XML
6. Tests risqués
Tests inutiles
Code non-intentionnellement couvert
Sortie d'écran lors de l'exécution d'un test
Délai d'execution des tests
Manipulation d'états globaux
7. Tests incomplets et sautés
Tests incomplets
Sauter des tests
Sauter des tests en utilisant @requires
8. Tester des bases de données
Systèmes gérés pour tester des bases de données
Difficultés pour tester les bases de données
Les quatre phases d'un test de base de données
1. Nettoyer la base de données
2. Configurer les fixtures
3–5. Exécuter les tests, vérifier les résultats et nettoyer
Configuration d'un cas de test de base de données PHPUnit
Implémenter getConnection()
Implémenter getDataSet()
Qu'en est-il du schéma de base de données (DDL)?
Astuce: utilisez votre propre cas de tests abstrait de base de données
Comprendre DataSets et DataTables
Implémentations disponibles
Attention aux clefs étrangères
Implementer vos propres DataSets/DataTables
L'API de connexion
API d'assertion de base de données
Faire une assertion sur le nombre de lignes d'une table
Faire une assertion sur l'état d'une table
Faire une assertion sur le résultat d'une requête
Faire une assertion sur l'état de plusieurs tables
Foire aux questions
PHPUnit va-t'il (re-)créer le schéma de base de données pour chaque test ?
Suis-je obligé d'utiliser PDO dans mon application pour que l'extension de base de données fonctionne ?
Que puis-je faire quand j'obtiens une erreur
«
Too much Connections (Trop de connexions)
»
?
Comment gérer les valeurs NULL avec les DataSets au format XML à plat / CSV ?
9. Doublure de test
Bouchons
Objets Mock
Prophecy
Mocker les Traits et les classes abstraites
Bouchon et simulacre pour Web Services
Simuler le système de fichiers
10. Pratiques de test
Pendant le développement
Pendant le débogage
11. Analyse de couverture de code
Indicateurs logiciels pour la couverture de code
Liste blanche de fichiers
Ignorer des blocs de code
Spécifier les méthodes couvertes
Cas limites
12. Autres utilisations des tests
Documentation agile
Tests inter-équipes
13. Journalisation
Résultats de test (XML)
Couverture de code (XML)
Couverture de code (TEXTE)
14. Etendre PHPUnit
Sous-classe PHPUnit\Framework\TestCase
Ecrire des assertions personnalisées
Implémenter PHPUnit\Framework\TestListener
Hériter de PHPUnit_Extensions_TestDecorator
Implémenter PHPUnit_Framework_Test
A. Assertions
De l'utilisation Statique vs. Non-Statique des méthodes d'assertion
assertArrayHasKey()
assertClassHasAttribute()
assertArraySubset()
assertClassHasStaticAttribute()
assertContains()
assertContainsOnly()
assertContainsOnlyInstancesOf()
assertCount()
assertDirectoryExists()
assertDirectoryIsReadable()
assertDirectoryIsWritable()
assertEmpty()
assertEqualXMLStructure()
assertEquals()
assertFalse()
assertFileEquals()
assertFileExists()
assertFileIsReadable()
assertFileIsWritable()
assertGreaterThan()
assertGreaterThanOrEqual()
assertInfinite()
assertInstanceOf()
assertInternalType()
assertIsReadable()
assertIsWritable()
assertJsonFileEqualsJsonFile()
assertJsonStringEqualsJsonFile()
assertJsonStringEqualsJsonString()
assertLessThan()
assertLessThanOrEqual()
assertNan()
assertNull()
assertObjectHasAttribute()
assertRegExp()
assertStringMatchesFormat()
assertStringMatchesFormatFile()
assertSame()
assertStringEndsWith()
assertStringEqualsFile()
assertStringStartsWith()
assertThat()
assertTrue()
assertXmlFileEqualsXmlFile()
assertXmlStringEqualsXmlFile()
assertXmlStringEqualsXmlString()
B. Annotations
@author
@after
@afterClass
@backupGlobals
@backupStaticAttributes
@before
@beforeClass
@codeCoverageIgnore*
@covers
@coversDefaultClass
@coversNothing
@dataProvider
@depends
@expectedException
@expectedExceptionCode
@expectedExceptionMessage
@expectedExceptionMessageRegExp
@group
@large
@medium
@preserveGlobalState
@requires
@runTestsInSeparateProcesses
@runInSeparateProcess
@small
@test
@testdox
@ticket
@uses
C. Le fichier de configuration XML
PHPUnit
Série de tests
Groupes
Inclure des fichiers de la couverture de code
Journalisation
Écouteurs de tests
Configurer les réglages de PHP INI, les constantes et les variables globales
D. Index
Index
E. Bibliographie
F. Copyright
粤公网安备 44190002002837号