2010-07-09 3 views
1

Donc, j'ai un petit problème avec mon Unittests. J'ai écrit quelques classes de base pour différents Testcases et je veux utiliser des méthodes de test préparées.PHPUnit: Dépendances de test avec le test de la classe parent

à savoir

class ModelTestCase extends PHPUnit_Framework_TestCase { 
    public function testCreateInstance() { ... } 
} 

class UserModelTest extends ModelTestCase { 
    /** 
    * (at)depends testCreateInstance 
    */ 
    public funcion testWhatever($model) { ...} 
} 

Y at-il astuce pour l'utiliser comme je veux ou dois-je vraiment écrire tous les tests dans chaque classe?

Répondre

1

Tout dépend de ce que vous voulez vraiment faire, votre échantillon de code est trop vague pour le dire. Une option pour vous est de créer votre propre méthode setup() dans ModelTestCase (sans oublier d'appeler parent :: setUp()) et d'y initialiser.

0

Si vous voulez tester uniquement les tests de modèles dérivés, mais pas la classe de base elle-même, vous pouvez le déclarer comme abstraite:

abstract class ModelTestCase extends PHPUnit_Framework_TestCase { 
    public function testCreateInstance() { ... } 
} 

Cela a fonctionné pour moi.

Questions connexes