我环顾四周,找不到帮助我弄清楚代码中发生了什么的具体答案。
我正在使用 htmlunitdriver 运行 selenium webdriver 测试。我只是为了学习目的在 photobucket 上上传图片。我用过 FirefoxDriver,它工作得很好。然后我尝试使用 htmlunitdriver 并且我的 IDE 说代码正在运行(我刚刚将 FirefoxDriver 更改为 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 都会从 DefaultCssErrorHandler 中引发一系列与“样式规则”相关的警告和错误,但字符串仍然为空。