Javascript 需要与浏览器元素交互。但是 selenium 为所有高级编程语言(如 Java、C# 等)提供 API。selenium 是否将这些 java 命令编译为 javascript 代码?即当代码不是用javascript编写时,selenium如何与浏览器交互
问问题
292 次
3 回答
1
不,Selenium 不会(必然)将 Java 转换为 JavaScript 等。
引用http://docs.seleniumhq.org/docs/03_webdriver.jsp:
Selenium-WebDriver 使用每个浏览器对自动化的原生支持直接调用浏览器。这些直接调用的方式以及它们支持的功能取决于您使用的浏览器。
Selenium WebDriver 有一个特定于浏览器的部分,它通常作为模块、扩展或插件嵌入在浏览器中,它为运行的 Selenium 脚本提供接口,例如,在您的 Java JUnit 代码中。
这个插件如何与浏览器交互取决于它的实现。我猜在大多数情况下,先编译成 javascript 然后在浏览器中执行 javascript 效率太低了。在可能的情况下,我猜开发人员会直接使用/调用网络浏览器中的内部 API 来访问(内部)DOM 并与之交互。
于 2013-10-17T09:22:24.263 回答
0
WebDriver 背后的指导力量 Simon Stewart为The Architecture of Open Source Applications写了一个关于其设计和架构的章节。它详细介绍了如何以及为什么要完成这些事情。
于 2013-10-17T10:50:22.577 回答