질문:
GeckoDriver 프로세스가 과도하게 소비되는 것을 방지하려면 어떻게 해야 합니까? 사용하지 않고 Selenium 테스트를 실행하는 동안의 메모리 drivers.quit()?
답변:
모범 사례:
운전자에게 전화하는 것을 피하는 것은 바람직하지 않습니다. 메모리 최적화를 위해 각 테스트 실행 후에 quit()을 수행합니다. Selenium 모범 사례에서는 탐색 세션을 완전히 종료하고 WebDriver 인스턴스를 종료하기 위해 분해 메서드 내에서 quit()를 호출하는 것이 좋습니다.
Dangling WebDriver 인스턴스에 대한 솔루션:
그러나 매달려 있는 WebDriver 인스턴스(예: GeckoDriver.exe 프로세스)를 종료해야 하는 경우 다음을 사용할 수 있습니다. 방법:
Java(Windows):
import java.io.IOException; public class Kill_GeckoDriver { public static void main(String[] args) throws Exception { Runtime.getRuntime().exec("taskkill /F /IM geckodriver.exe /T"); } }
Python(Windows):
import os os.system("taskkill /f /im geckodriver.exe /T")
파이썬(크로스 플랫폼):
import os import psutil PROCNAME = "geckodriver" for proc in psutil.process_iter(): if proc.name() == PROCNAME: proc.kill()
이러한 방법을 활용하면 테스트에 영향을 주거나 브라우저 창을 닫지 않고도 원치 않는 GeckoDriver 프로세스를 종료할 수 있습니다. quit() 호출을 포함하여 메모리 관리에 대한 모범 사례를 따르는 것이 최적의 Selenium 테스트 실행을 위해 중요하다는 점을 기억하세요.
위 내용은 모범 사례를 희생하지 않고 Selenium에서 GeckoDriver 메모리 사용을 최적화하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!