Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk menggunakan Codeception dengan CakePHP?
CakePHP ialah rangka kerja aplikasi web sumber terbuka berdasarkan PHP yang boleh membantu pembangun membina aplikasi web dengan cepat. Codeception ialah rangka kerja ujian yang berkuasa yang boleh membantu pembangun menjalankan ujian automatik. Artikel ini akan memperkenalkan cara menggunakan Codeception untuk ujian dalam CakePHP.
Mula-mula, anda perlu memasang Codeception. Ia boleh dipasang melalui Composer, jalankan arahan berikut:
composer require --dev codeception/codeception
Jika anda memerlukan modul lain, anda boleh memasangnya seperti berikut:
composer require --dev codeception/module-webdriver composer require --dev codeception/module-db composer require --dev codeception/module-asserts
Selepas memasang Codeception, anda perlu melaksanakan arahan berikut dalam direktori akar aplikasi CakePHP untuk memulakan Codeception:
vendor/bin/codecept init
Selepas melaksanakan arahan, akan ada satu siri soalan interaktif yang perlu menjawab. Sebagai contoh, anda perlu memilih jenis ujian, lokasi penyimpanan fail ujian, dsb.
Codeception menyediakan tahap ujian yang berbeza. Dalam CakePHP, anda boleh menggunakan ujian berfungsi untuk menguji sama ada aplikasi berfungsi seperti yang diharapkan. Ujian fungsional mensimulasikan interaksi pengguna dengan aplikasi, seperti mengisi borang, mengklik pautan, dsb. Berikut ialah sampel ujian:
<?php $I = new FunctionalTester($scenario); $I->wantTo('ensure that login works'); $I->amOnPage('/'); $I->click('Login'); $I->seeCurrentUrlEquals('/users/login'); $I->fillField('username', 'testuser'); $I->fillField('password', 'testpass'); $I->click('Login'); $I->seeCurrentUrlEquals('/dashboard'); $I->see('Welcome, testuser');
Sampel ujian di atas cuba mensimulasikan log masuk pengguna dan mengesahkan sama ada ia berjaya. Simulasikan tingkah laku pengguna melalui $I->amOnPage() dan $I->click(), dan kemudian sahkan sama ada ia memenuhi jangkaan melalui $I->see() dan $I->seeCurrentUrlEquals().
Selepas menulis ujian, anda boleh menggunakan arahan berikut untuk menjalankan ujian:
vendor/bin/codecept run
Jika anda ingin menjalankan ujian ujian yang ditentukan, anda boleh menggunakan arahan berikut :
vendor/bin/codecept run functional MyFirstTestCest
Antaranya, MyFirstTestCest ialah nama fail ujian. Jika anda hanya mahu menjalankan kaedah ujian tertentu, anda boleh menggunakan arahan berikut:
vendor/bin/codecept run functional MyFirstTestCest:testLogin
di mana testLogin ialah nama kaedah ujian.
CakePHP menggunakan PHPUnit secara lalai untuk ujian unit. Codeception juga berdasarkan PHPUnit, jadi ia juga boleh dianggap sebagai kaedah ujian. Keindahan Codeception ialah ia memudahkan menulis, menjalankan dan mengurus ujian.
Jika anda perlu menggunakan PHPUnit dan Codeception dalam CakePHP pada masa yang sama, anda boleh menambah kod berikut pada fail phpunit.xml untuk menjalankan ujian Codeception:
<testsuites> <testsuite name="cake"> <directory>./tests/TestCase/</directory> <directory>./vendor/codeception/codeception/tests/unit/</directory> </testsuite> </testsuites>
Kod di atas akan juga digunakan semasa menjalankan ujian PHPUnit Termasuk menjalankan ujian Codeception.
Ringkasan
Artikel ini memperkenalkan cara menggunakan Codeception untuk ujian dalam CakePHP. Codeception menyediakan pelbagai fungsi ujian, seperti ujian berfungsi, ujian hujung ke hujung, ujian API, dll., yang boleh membantu kami menguji aplikasi secara lebih menyeluruh. Pada masa yang sama, Codeception adalah mudah untuk digunakan dan mudah untuk dimulakan, yang boleh meningkatkan kecekapan ujian.
Atas ialah kandungan terperinci Bagaimana untuk menggunakan Codeception dengan CakePHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!