Rumah >pembangunan bahagian belakang >tutorial php >Cara menggunakan rangka kerja PHPUnit untuk ujian dalam PHP
Memandangkan pembangunan web terus berkembang, ujian telah menjadi bahagian penting. Dalam pembangunan web, ujian boleh membantu kami memastikan kualiti kod dan meningkatkan kecekapan pembangunan. Rangka kerja PHPUnit ialah salah satu rangka kerja ujian yang paling biasa digunakan dalam PHP Ia menyediakan pelbagai alat ujian dan API, membolehkan pembangun menulis dan melaksanakan kes ujian dengan mudah. Dalam artikel ini, kita akan membincangkan cara menggunakan rangka kerja PHPUnit untuk ujian dalam PHP.
1. Pasang PHPUnit
PHPUnit ialah perpustakaan sambungan PHP bebas yang boleh dipasang melalui Komposer. Sebelum memasang PHPUnit, anda perlu memastikan bahawa Komposer dipasang. Jika ia tidak dipasang, sila pasangkannya mengikut arahan di laman web rasmi Komposer.
Sebelum memasang PHPUnit, anda perlu memasang kebergantungan PHPUnit dalam projek dahulu:
composer require --dev phpunit/phpunit
Arahan ini akan memasang pakej kebergantungan PHPUnit dalam direktori vendor
projek dan menyimpannya sebagai pergantungan pembangunan dalam bahagian composer.json
require-dev
dalam fail. Selepas arahan ini selesai dijalankan, kita boleh menggunakan PHPUnit.
2. Cipta kes ujian
Sebelum menggunakan PHPUnit untuk ujian, anda perlu menulis kes ujian terlebih dahulu. Kes ujian ialah koleksi kod ujian untuk fungsi atau kaedah tertentu, yang digunakan untuk mengesahkan ketepatan kod tersebut. Dalam PHPUnit, kelas kes ujian boleh mengandungi berbilang kaedah ujian. Kaedah ujian bermula dengan test
dan tidak boleh menerima sebarang parameter.
Mari kita buat kes ujian mudah untuk mengesahkan ketepatan fungsi penambahan. Mula-mula, kita perlu mencipta fail bernama CalculatorTest.php
dalam direktori akar projek, dan kemudian tulis kes ujian dalam fail:
<?php use PHPUnitFrameworkTestCase; class CalculatorTest extends TestCase { public function testAddition() { $this->assertSame(2 + 2, 4); } }
Dalam contoh di atas, kami menulis fail bernama testAddition()
Ujian kaedah yang mengesahkan sama ada 2 + 2 sama dengan 4. Antaranya, kami menggunakan fungsi assertSame()
untuk menentukan sama ada dua nilai adalah sama. Jika kedua-dua nilai tidak sama, kes ujian akan gagal.
3. Jalankan kes ujian
Selepas menulis kes ujian, kami boleh menjalankan kes ujian untuk mengesahkan ketepatan kod. Dalam PHPUnit, anda boleh menjalankan kes ujian melalui arahan berikut:
./vendor/bin/phpunit CalculatorTest.php
Selepas menjalankan arahan di atas, PHPUnit secara automatik akan menjalankan kes ujian yang kami tulis dalam fail CalculatorTest.php
. Jika kes ujian berjalan dengan jayanya, simbol hijau akan dikeluarkan jika tidak, simbol merah akan dikeluarkan dan sebab kegagalan ujian akan digesa.
4. Gunakan API yang disediakan oleh PHPUnit
PHPUnit menyediakan banyak API praktikal, memudahkan kami menulis kes ujian.
API yang paling biasa digunakan dalam PHPUnit ialah asersi API. Ia menyediakan beberapa fungsi untuk menegaskan keputusan ujian, seperti assertEmpty()
, assertNotNull()
, assertGreaterThan()
, dsb. Fungsi ini boleh digunakan pada objek ujian, rentetan, tatasusunan, pembolehubah dan banyak lagi.
Berikut ialah beberapa contoh fungsi penegasan yang biasa digunakan:
$this->assertEquals(2 + 2, 4); // 两个值相等 $this->assertNotEmpty($array); // 非空数组 $this->assertInstanceOf(MyClass::class, $object); // 类的实例
PHPUnit menyediakan API Set Data yang boleh digunakan dalam ujian yang sama Uji beberapa set data dalam kes penggunaan. Cara untuk menggunakannya ialah menggunakan data ujian sebagai tatasusunan, dan kemudian gunakan anotasi @dataProvider
untuk menentukan fungsi penyediaan data, seperti yang ditunjukkan di bawah:
/** * @dataProvider additionProvider */ public function testAddition($a, $b, $expected) { $this->assertSame($a + $b, $expected); } public function additionProvider() { return [ [0, 0, 0], [0, 1, 1], [1, 0, 1], [1, 1, 2], ]; }
Dalam contoh di atas, kami menggunakan @dataProvider
anotasi untuk menyediakan data ujian Nama fungsi ditetapkan kepada additionProvider
. Fungsi ini mengembalikan tatasusunan yang mengandungi berbilang set data ujian.
5. Ringkasan
Dalam artikel ini, kami memperkenalkan cara menggunakan rangka kerja PHPUnit untuk ujian dalam PHP. Kami mula-mula memperkenalkan pemasangan dan penggunaan PHPUnit, kemudian menunjukkan cara mencipta kes ujian dan menjalankan kes ujian, dan akhirnya memperkenalkan beberapa API praktikal yang disediakan oleh PHPUnit. Menggunakan rangka kerja PHPUnit boleh membantu kami menulis dan melaksanakan kes ujian dengan lebih mudah, dengan itu meningkatkan kualiti kod dan kecekapan pembangunan.
Atas ialah kandungan terperinci Cara menggunakan rangka kerja PHPUnit untuk ujian dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!