小编Ami*_*mit的帖子

WebDriverManager 安装程序无法下载 chromedriver 116

这是复制该问题的代码。在 chromedriver 114 之前,这一切都工作正常,但当 chrome 浏览器升级到 116 时,它就崩溃了。

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import io.github.bonigarcia.wdm.WebDriverManager;

public class ChromeTest {
public static void main(String args[]) {
    WebDriverManager.chromedriver().setup();
    WebDriver driver  = new ChromeDriver();
    driver.get("https://www.google.com/");
    String title = driver.getTitle();
    System.out.println(title);
    driver.quit();
  }
}
Run Code Online (Sandbox Code Playgroud)

该错误表明库无法访问 116 的版本文件

automation selenium-chromedriver selenium-webdriver webdrivermanager-java

11
推荐指数
2
解决办法
3万
查看次数

使用angularjs动态创建键值对,并将其传递给java Map

前端有两个空文本框,一个用于键,另一个用于值1添加按钮和提交按钮.用户可以单击添加按钮再添加一对两个文本框,每个文本框分别代表键和值.

用户可以在文本框中随意添加任何文本作为键和任何文本作为值.提交按钮是提交最终表格.我想在angularJS中获取这些数据,并通过post请求进一步将其传递给java Map.

具体来说,转换为Json时,java中的Map看起来像这样.

{"A":"something","B":"something","C":"something","D":"value"} 
Run Code Online (Sandbox Code Playgroud)

但是我无法使用angularJS从前端动态创建这样的结构.

java angularjs

2
推荐指数
1
解决办法
1万
查看次数

Selenium 代码在延迟加载的 Web 元素中水平滚动

有人可以帮我编写一段 selenium 代码,通过在延迟加载时水平滚动来查找 div 内的元素吗?

例如,在以下 URL 中,我们向右滚动后会加载元素:

  1. http://ressio.github.io/lazy-load-xt/demo/horizo​​ntal.htm
  2. http://www.appelsiini.net/projects/lazyload/enabled_wide_container.html

我努力了 :

 1. ((JavascriptExecutor) driver).executeScript("window.scrollTo(<x-corodinate>,<y-coordinate>)");
 2. ((JavascriptExecutor) driver).executeScript("arguments[0].scrollIntoView();", element); 
 3. ((JavascriptExecutor) driver).executeScript("window.scrollBy(<x-corodinate>,<y-coordinate>)");
 4. ((JavascriptExecutor) driver).executeScript("arguments[0].scrollIntoView(true);", element);
Run Code Online (Sandbox Code Playgroud)

但并没有解决我的目的。

我使用的是 java 1.8 ,selenium jar 版本是 3.0.1 和 Firefox 50.0.2。

File driverPathFirefox = new File("PATH \\TO \\ Driver \\geckodriver.exe");
System.setProperty("webdriver.gecko.driver",driverPathFirefox.getAbsolutePath()); 
WebDriver driver = new FirefoxDriver();
driver.manage().timeouts().implicitlyWait(25000, TimeUnit.SECONDS);
driver.manage().window().maximize();
driver.navigate().to(URL);// URL could be the one referred in the question
WebElement scrollArea = driver.findElement(By.xpath(<Xpath of the div>));
// Capturing xpath of div from the URL …
Run Code Online (Sandbox Code Playgroud)

java selenium

2
推荐指数
1
解决办法
3万
查看次数