모든 ChromeOS 테스트 이미지에는 ChromeDriver 바이너리가 /usr/local/chromedriver/에 설치되어 있습니다. 바이너리가 해당 테스트 이미지의 동일한 버전의 Chrome으로 업데이트됩니다. 즉, 항상 최신 빌드의 ChromeDriver를 사용합니다.
테스트가 안정적인 ChromeDriver 바이너리 빌드에 대해 실행되기를 기대하는 경우 테스트에서 특정 바이너리를 다운로드하고 /usr/local/chromedriver/의 바이너리를 대체하는 자체 코드를 작성해야 합니다.
Autotest 테스트에서 ChromeDriver 사용
ChromeDriver를 사용하여 ChromeOS와 상호작용하는 테스트를 작성할 수 있습니다. ChromeOS/Autotest에서 사용할 수 있는 ChromeDriver를 사용하는 래퍼 클래스가 있습니다. 래퍼 클래스는 컨텍스트 관리자 유형으로 작동하며 다음 작업을 처리합니다.
- 원격 분석을 사용하여 ChromeOS에 로그인합니다.
- 테스트 대상 기기 (DUT)에서 원격 모드로 ChromeDriver를 시작하고 로그인 후 Chrome 인스턴스의 원격 디버그 포트에 연결합니다.
- ChromeDriver 호출을 할 수 있도록 드라이버 인스턴스를 노출합니다.
- ChromeDriver 프로세스를 종료하고 ChromeOS에서 로그아웃합니다.
다음 테스트 예를 따르세요. desktopui_UrlFetchWithChromeDriver
시작하려면 다음 단계를 따르세요.
래퍼 클래스를 가져옵니다.
from autotest_lib.client.common_lib.cros import chromedriverChromeDriver의 인스턴스를 만들고 호출합니다.
with chromedriver.chromedriver() as chromedriver_instance: driver = chromedriver_instance.driver # Here you can make standard ChromeDriver calls through the driver instance. # For example, browse a given url with |driver.get(url)|