En utilisant PHPUnit et l'annotation @dataProvider, vous pouvez tester unitairement les types de paramètres des fonctions PHP : Créez une classe de test. Utilisez @dataProvider pour fournir différents types de données. Dans la méthode de test, utilisez assertType() pour affirmer le type de paramètre.
Tests unitaires des types de paramètres de fonction PHP
Les tests unitaires sont le processus de vérification qu'une fonction ou une méthode fonctionne comme prévu. En PHP, vous pouvez utiliser la bibliothèque PHPUnit pour les tests unitaires.
Types de paramètres de fonction de test unitaire à l'aide de PHPUnit
class MyFunctionTest extends \PHPUnit\Framework\TestCase { public function testTypeHint() { // ... } }
@dataProvider
pour fournir une indication de type données de test : @dataProvider
注解来提供类型提示的测试数据:/** * @dataProvider typeHintProvider */ public function testTypeHint() { // ... } public function typeHintProvider() { return [ ['int', 1], ['string', 'foo'], ['array', []], ]; }
$this->assertType()
断言参数的类型:public function testTypeHint() { $this->assertType($hint, $arg); }
实战案例
考虑以下函数:
function sum(int $a, int $b) { return $a + $b; }
对应的单元测试:
class SumTest extends \PHPUnit\Framework\TestCase { /** * @dataProvider typeHintProvider */ public function testTypeHint($hint, $arg) { $this->assertType($hint, $arg); } public function typeHintProvider() { return [ ['int', 1], ['int', '1'], // 失败,'1' 不是 int 类型 ['string', 'foo'], ['array', []], ]; } }
通过运行此单元测试,您可以验证函数 sum
$this->assertType()
pour affirmer le type du paramètre : 🎜🎜rrreee🎜🎜Pratique case🎜🎜🎜🎜Considérez la fonction suivante : 🎜🎜rrreee🎜🎜Le test unitaire correspondant : 🎜🎜rrreee🎜En exécutant ce test unitaire, vous pouvez vérifier que les types de paramètres de la fonction sum
sont vérifiés comme prévu. 🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!