Apabila menggunakan Selenium untuk ujian automatik, adalah penting untuk menggunakan kaedah quit() untuk menamatkan contoh WebDriver dan menutup sesi pelayar. Walau bagaimanapun, jika anda ingin menganalisis keputusan ujian atau membetulkan sebarang isu sebelum menutup penyemak imbas, anda mungkin mahu mengelakkan panggilan quit().
Menurut amalan terbaik, adalah dinasihatkan untuk memanggil quit() dalam kaedah tearDown() atau After untuk memastikan pembersihan yang betul dan mencegah potensi kebocoran ingatan. Menyebut quit() menghantar arahan "quit" dengan bendera tambahan kepada contoh WebDriver, mengakibatkan penamatan sesi penyemak imbas yang anggun.
Jika anda tidak memanggil quit(), setiap larian ujian berikutnya akan meninggalkan proses geckodriver.exe yang terkumpul dalam ingatan, yang berpotensi menyebabkan masalah prestasi. Pengumpulan memori ini berterusan tanpa mengira sama ada anda menutup penyemak imbas secara manual.
Walaupun panggilan quit() disyorkan, anda boleh menggunakan penyelesaian luaran untuk bunuh contoh pendorong tokek yang tergantung jika perlu. Berikut ialah tiga blok kod yang boleh anda gunakan:
import java.io.IOException; public class Kill_ChromeDriver_GeckoDriver_IEDriverserver { public static void main(String[] args) throws Exception { Runtime.getRuntime().exec("taskkill /F /IM geckodriver.exe /T"); Runtime.getRuntime().exec("taskkill /F /IM chromedriver.exe /T"); Runtime.getRuntime().exec("taskkill /F /IM IEDriverServer.exe /T"); } }
import os os.system("taskkill /f /im geckodriver.exe /T") os.system("taskkill /f /im chromedriver.exe /T") os.system("taskkill /f /im IEDriverServer.exe /T")
import os import psutil PROCNAME = "geckodriver" # or chromedriver or IEDriverServer for proc in psutil.process_iter(): # check whether the process name matches if proc.name() == PROCNAME: proc.kill()
Atas ialah kandungan terperinci Bagaimana untuk Menguruskan Proses Pemacu Gecko dan Mencegah Kebocoran Memori dalam Selenium Tanpa Menggunakan `driver.quit()`?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!