我环顾四周,无法找到一个特定的答案,帮助我弄清楚我的代码中发生了什么。
我正在使用htmlunitdriver运行selenium webdriver测试。我只是在photobucket上传一张图片用于学习目的。我使用过FirefoxDriver,它运行得非常好。然后我尝试使用htmlunitdriver并且我的IDE说代码正常工作(我刚刚更改了Firefox驱动程序用于htmlunitdriver)但每当我查看我的相册时我都看不到图片。我的第一个猜测是无头浏览器没有等待图片上传,所以它只是离开了,所以我添加了一些丑陋的睡眠以检查它并仍然无法工作!
这是代码
driver.get("http://s394.photobucket.com/upload/links");
Thread.sleep(3000);
driver.findElement(By.id("urlInput")).sendKeys("photo_link");
driver.findElement(By.id("uploadBtn")).click();
Thread.sleep(3000);
String text = driver.findElement(By.className("progressCount")).getText();
driver.findElement(By.id("goalbum")).click();
driver.close();
getText()用于看起来像这样的HTML元素。
<div class="progressCount" style="width: 711px;">100%</div>
它是一个加载栏。这一点的目的是让webdriver web等待,直到酒吧宣布它已满并继续并关闭驱动程序。
每当我尝试使用getText时,Intellij会从与#34;样式规则&#34;相关的DefaultCssErrorHandler中抛出一系列警告和错误。虽然字符串仍然是空的。
答案 0 :(得分:0)
您还可以尝试以下操作:
driver.findElement(By.cssSelector(&#34; div.progressCount&#34))。gettext的();