Rumah > Artikel > pembangunan bahagian belakang > Penyepaduan lancar PHP WebDriver dan JMeter: gabungan ujian automatik dan ujian prestasi
Dalam proses pembangunan perisian, ujian adalah bahagian yang sangat penting. Dalam ujian, ujian automatik dan ujian prestasi adalah kedua-dua pautan penting. Ujian automatik bertujuan untuk mengurangkan pertindihan operasi manual dan meningkatkan kecekapan dan ketepatan ujian manakala ujian prestasi adalah untuk mengesahkan kestabilan prestasi sistem di bawah beban yang berbeza. Artikel ini akan membincangkan cara menggabungkan PHP WebDriver dan JMeter dua alat ujian untuk mencapai penyepaduan lancar ujian automatik dan ujian prestasi.
1. PHP WebDriver
PHP WebDriver ialah alat ujian automatik berdasarkan bahasa PHP yang boleh digunakan untuk menguji aplikasi web. Ia menggunakan protokol WebDriver untuk berinteraksi dengan penyemak imbas yang biasa digunakan dan mensimulasikan pelbagai operasi pengguna dalam penyemak imbas, seperti membuka halaman web, memasukkan teks, mengklik butang, dsb.
Proses menggunakan PHP WebDriver untuk menguji aplikasi web terutamanya termasuk langkah-langkah berikut:
Anda boleh memasang PHP WebDriver melalui Composer . Untuk kaedah khusus, sila rujuk dokumentasi rasminya.
PHP WebDriver memerlukan pemacu penyemak imbas untuk berinteraksi dengan penyemak imbas. Pemacu penyemak imbas yang biasa digunakan termasuk ChromeDriver, FirefoxDriver, dsb. Tambahkan laluan di mana fail boleh laku pemacu penyemak imbas terletak pada pembolehubah PATH sistem supaya PHP WebDriver boleh mencari pemacu.
Anda boleh menggunakan PHP untuk menulis skrip ujian untuk melaksanakan ujian automatik. Berikut ialah contoh:
<?php use FacebookWebDriverRemoteRemoteWebDriver; use FacebookWebDriverWebDriverBy; require_once __DIR__ . '/vendor/autoload.php'; $webDriver = RemoteWebDriver::create( 'http://localhost:4444/wd/hub', FacebookWebDriverRemoteDesiredCapabilities::chrome() ); $webDriver->get('http://www.example.com'); $webDriver->findElement(WebDriverBy::name('q'))->sendKeys('webdriver'); $webDriver->findElement(WebDriverBy::name('btnK'))->click(); $webDriver->quit();
Dalam contoh di atas, objek RemoteWebDriver pertama kali dibuat, yang disambungkan ke ChromeDriver pada pelayan Selenium. Kemudian buka laman web http://www.example.com, masukkan kata kunci "pemacu web", dan klik butang carian. Akhirnya, tetingkap penyemak imbas ditutup menggunakan fungsi $webDriver->quit().
2. JMeter
JMeter ialah alat ujian prestasi sumber terbuka yang boleh melakukan ujian tekanan, ujian beban, ujian fungsi dan ujian lain. Ia boleh mensimulasikan berbilang pengguna yang mengakses aplikasi web dan boleh menguji kestabilan prestasi aplikasi di bawah beban yang berbeza.
Proses menggunakan JMeter untuk ujian prestasi terutamanya termasuk langkah-langkah berikut:
Anda boleh memuat turun versi terkini JMeter dari Laman web rasmi JMeter.
Pelan ujian adalah asas untuk ujian prestasi JMeter. Kumpulan benang yang berbeza, pengawal, pensampel dan komponen lain boleh ditambah pada pelan ujian untuk mensimulasikan gelagat pengguna yang mengakses aplikasi web. Pelan ujian juga perlu menyediakan model beban, data ujian dan keputusan ujian.
Apabila anda menjalankan rancangan ujian, JMeter akan mensimulasikan berbilang pengguna yang mengakses aplikasi web dan merekodkan masa tindak balas, daya pemprosesan, kadar ralat dan penunjuk lain . Selepas ujian selesai, anda boleh melihat keputusan ujian dan menganalisis laporan ujian.
3. Penyepaduan PHP WebDriver dan JMeter
Penyepaduan PHP WebDriver dan JMeter boleh mencapai gabungan lancar ujian automatik dan ujian prestasi. Khususnya, skrip ujian yang ditulis oleh PHP WebDriver boleh dimasukkan ke dalam pelan ujian JMeter untuk mensimulasikan tingkah laku pengguna di bawah beban yang berbeza.
Berikut ialah contoh yang menunjukkan cara mengintegrasikan PHP WebDriver dalam JMeter.
Buka JMeter dan buat rancangan ujian baharu. Tambahkan kumpulan benang, tetapkan bilangan utas kepada 10 dan tempoh kepada 60 saat. Kemudian tambahkan komponen nilai lalai permintaan HTTP dan tetapkan nama pelayan kepada www.example.com.
Muat turun pemalam Pemacu Web dalam pengurus pemalam JMeter. Kemudian, tambahkan komponen permintaan Pemacu Web pada pelan ujian. Dalam konsol komponen, nyatakan pelayar dan laluan Pemacu Web yang dimulakan oleh WebDriver. Dalam lajur "Parameter perintah", anda boleh menambah laluan dan parameter skrip PHP.
Tulis skrip ujian WebDriver PHP yang boleh mensimulasikan operasi pengguna di http://www.example.com. Khususnya, anda boleh mencari kata kunci "pemandu web" dan merekodkan masa tindak balas carian.
<?php use FacebookWebDriverRemoteRemoteWebDriver; use FacebookWebDriverWebDriverBy; require_once __DIR__ . '/vendor/autoload.php'; $webDriver = RemoteWebDriver::create( 'http://localhost:4444/wd/hub', FacebookWebDriverRemoteDesiredCapabilities::chrome() ); $webDriver->get('http://www.example.com'); $startTime = microtime(true); $webDriver->findElement(WebDriverBy::name('q'))->sendKeys('webdriver'); $webDriver->findElement(WebDriverBy::name('btnK'))->click(); $endTime = microtime(true); $responseTime = $endTime - $startTime; $webDriver->quit(); echo "response time: ".$responseTime." ";
Dalam JMeter, anda boleh menjalankan pelan ujian dan melihat keputusan ujian. Dengan melaraskan parameter pelan ujian secara berterusan, senario ujian di bawah beban yang berbeza boleh disimulasikan dan kestabilan prestasi sistem boleh dianalisis.
Ringkasnya, penyepaduan lancar PHP WebDriver dan JMeter boleh mencapai gabungan sempurna ujian automatik dan ujian prestasi. Pembangun boleh menggunakan kaedah ini untuk mengurangkan masa ujian dan kos ujian, serta meningkatkan kualiti dan kestabilan perisian.
Atas ialah kandungan terperinci Penyepaduan lancar PHP WebDriver dan JMeter: gabungan ujian automatik dan ujian prestasi. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!