Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Cara menggunakan PHPUnit untuk ujian integrasi dalam pembangunan PHP

Cara menggunakan PHPUnit untuk ujian integrasi dalam pembangunan PHP

WBOY
WBOYasal
2023-06-27 15:21:071341semak imbas

Apabila pembangunan perisian menjadi semakin kompleks, ujian manual tidak lagi mencukupi untuk ujian projek. Dalam kes ini, pembangun perlu mencari cara ujian yang lebih mantap dan boleh dipercayai, iaitu ujian integrasi. Ujian integrasi boleh menguji interaksi antara sistem, modul dan modul, atau komponen dan komponen untuk memastikan operasi normal sistem keseluruhan. Dalam pembangunan PHP, PHPunit ialah rangka kerja ujian integrasi yang biasa digunakan Artikel ini akan memperkenalkan cara menggunakan PHPUnit untuk ujian integrasi dalam pembangunan PHP.

  1. Pengenalan kepada PHPUnit

PHPUnit ialah rangka kerja ujian integrasi untuk PHP yang boleh menulis kes ujian automatik dan dengan elegan memaparkan keputusan ujian dan kod yang memerlukan semakan. Selain API yang ringkas dan mudah, PHPUnit juga menyediakan kaedah dan ciri penegasan yang kaya yang menyokong liputan ujian.

  1. Pasang PHPUnit

PHPUnit boleh dipasang melalui Composer Langkah-langkah untuk memasang PHPUnit adalah seperti berikut:

composer require --dev phpunit/phpunit

Arahan di atas akan memasang PHPUnit dalam projek anda dan menambahkannya pada kebergantungan pembangunan anda. Sebelum menjalankan arahan ini, anda perlu memasang Komposer terlebih dahulu.

Selepas pemasangan berjaya, anda boleh mencipta fail konfigurasi phpunit.xml dalam direktori akar projek untuk menentukan suite ujian projek dan maklumat konfigurasi yang berkaitan, contohnya:

<?xml version="1.0" encoding="UTF-8"?>
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/5.7/phpunit.xsd"
         colors="true"
         bootstrap="vendor/autoload.php"
>
    <testsuites>
        <testsuite name="My Test Suite">
            <directory>tests</directory>
        </testsuite>
    </testsuites>
</phpunit>

Dalam fail konfigurasi ini, kami mentakrifkan fail bernama Set ujian daripada "Suite Ujian Saya" dan menentukan direktori tempat kod ujian berada.

  1. Menulis kes ujian

Menulis kes ujian adalah teras ujian integrasi PHPUnit. Kes ujian hendaklah terdiri daripada dua bahagian: penyediaan ujian dan kod ujian. Penyediaan ujian termasuk beberapa kerja permulaan, seperti menyediakan data ujian, membina objek ujian, dsb. Kod ujian terdiri daripada panggilan ke sasaran ujian dan menggunakan pernyataan penegasan untuk mengesahkan bahawa output sasaran adalah seperti yang diharapkan.

Berikut ialah contoh kelas TestMethodTest:

class TestMethodTest extends PHPUnitFrameworkTestCase
{
    public function testAdd()
    {
        $tmp = new TestMethod();
        $this->assertEquals(3, $tmp->add(1, 2));
        $this->assertEquals(5, $tmp->add(2, 3));
        $this->assertEquals(7, $tmp->add(3, 4));
    }

    public function testSub()
    {
        $tmp = new TestMethod();
        $this->assertEquals(1, $tmp->sub(2, 1));
        $this->assertEquals(2, $tmp->sub(3, 1));
        $this->assertEquals(3, $tmp->sub(4, 1));
    }
}

Dalam kes ujian ini, kami mentakrifkan dua fungsi ujian, yang digunakan untuk menguji fungsi add() dan sub() dalam kelas TestMethod. Apabila menguji fungsi add(), kami memanggil fungsi add() kelas dan menggunakan tiga pernyataan $this->assertEquals() untuk menyemak sama ada output adalah seperti yang dijangkakan.

  1. Menjalankan Kes Ujian

Menjalankan kes ujian adalah sangat mudah. Jalankan arahan berikut dalam direktori akar projek anda:

./vendor/bin/phpunit

Ini sepatutnya memulakan ujian PHPUnit dan mengeluarkan butiran tentang keputusan ujian.

  1. Liputan ujian

Liputan ujian ialah ciri yang sangat berguna dalam rangka kerja PHPUnit. Ia mengukur peratusan kod sebenar yang dilindungi oleh kod ujian anda, membolehkan anda mengesahkan sama ada terdapat sebarang ujian yang terlepas.

Anda boleh menjana laporan analisis liputan ujian dengan menggunakan pilihan --coverage-html PHPUnit:

./vendor/bin/phpunit --coverage-html report

Dalam arahan di atas, kami mengubah hala laporan analisis yang dihasilkan ke subdirektori bernama "laporan". Dalam laporan ini, anda boleh melihat bilangan baris kod yang diliputi oleh kes ujian dan bilangan baris kod yang tidak diliputi, yang boleh membantu anda mencari dan menyelesaikan masalah yang berpotensi dalam ujian.

  1. Kesimpulan

Dalam pembangunan PHP, menggunakan PHPUnit untuk ujian integrasi adalah cara yang sangat mudah dan berkesan. Walaupun mengambil sedikit masa untuk menjana liputan ujian dan menulis kes ujian, ia boleh menghalang pepijat dan ralat daripada berlaku dengan berkesan, sekali gus meningkatkan kualiti projek. Melalui artikel ini, saya percaya anda telah dapat memahami cara PHPUnit melaksanakan ujian integrasi, dan cuba menulis beberapa kes ujian asas untuk dicuba.

Atas ialah kandungan terperinci Cara menggunakan PHPUnit untuk ujian integrasi dalam pembangunan PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn