Penantian tersirat ialah arahan kepada WebDriver untuk menunggu jumlah masa tertentu semasa mencari untuk sesuatu unsur. Ini boleh berguna dalam situasi di mana halaman dimuatkan dengan perlahan atau elemen tidak tersedia serta-merta.
Masalah:
Anda cuba menggantikan penantian tersirat dengan penantian yang jelas dalam perkara berikut kod:
driver = new ChromeDriver(capabilities); driver.manage().deleteAllCookies(); driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
Penyelesaian:
Penantian tersirat ditakrifkan sekali pada permulaan sesi WebDriver dan digunakan pada semua carian elemen. Penantian eksplisit digunakan untuk elemen dan syarat tertentu. Dalam kes ini, tiada syarat khusus untuk menunggu, jadi penantian tersirat tidak boleh digantikan secara langsung dengan yang tersurat.
Sebaliknya, anda boleh menggunakan penantian eksplisit apabila anda perlu menunggu elemen tertentu atau syarat. Contohnya, untuk menunggu elemen kelihatan, anda boleh menggunakan kod berikut:
WebDriverWait wait = new WebDriverWait(driver, 10); WebElement element = wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("my-element")));
Kod ini akan menunggu sehingga 10 saat untuk elemen dengan ID "elemen saya" menjadi kelihatan.
Atas ialah kandungan terperinci Bagaimana untuk Menggantikan Penantian Tersirat dengan Penantian Eksplisit dalam Selenium WebDriver?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!