我是Java和Selenium的新手。我試圖登錄到一個網站,有一個唯一的用戶名和密碼的ID,所以我想我會使用CSS來定位登錄字段。我可以在Selenium IDE中執行此操作,但不能在Eclipse中執行此操作。通過Selenium Webdriver的CSS Selector登錄Java
<input name="uid_578180ab6f188bd2803df958f4aafa6c399bc8fe" class="form-control
col-sm-10" id="uid_578180ab6f188bd2803df958f4aafa6c399bc8fe" autofocus=""
required="" type="text">
我能夠啓動網站,但用戶名和密碼字段保持空白。
driver.findElement(By.cssSelector("[id^=uid_]")).sendKeys("username");
driver.findelement(By.cssSelector("[id^=pwd_]")).sendKeys("password");
這是用於密碼的字段。也許我的做法是不正確的。
<input type="password" required="" class="form-control"
id="pwd_28e13d5a226a4a576f54de3e0501f2ce1b8204ee"
name="pwd_28e13d5a226a4a576f54de3e0501f2ce1b8204ee"
onkeypress="if(event.keyCode==13)
{document.getElementById('login_form').submit();}">
道歉輸入,我的意思是說,UID和PWD是動態的,所以在每一個新的實例,uid_後的字符串pwd_將會改變。 – fitfa3234
那麼,您可以將類:.password和.username分配給您的輸入並以正常方式使用它,但是您無法確定是否選擇了帶有類的單個元素。通過選擇ID的部分名稱來處理唯一的ID - 是不正確的(因爲您可能會選擇多個ID)。另外,1個元素不能分配2個不同的ID。 –
我不確定你的意思是使用.password和.username分配給我的輸入。我認爲使用下面的這樣的東西可以工作,但它似乎不是輸入密鑰。 driver.findElement(By.cssSelector(「input [id ='uid _']」))。sendKeys(「username」) – fitfa3234