我正在尝试使用PhantomJS运行非常简单的Java自动化测试用例。我正在使用以下版本:
我的代码预期功能和驱动程序启动如下:
DesiredCapabilities caps = new DesiredCapabilities();
((DesiredCapabilities) caps).setJavascriptEnabled(true);
((DesiredCapabilities) caps).setCapability("takesScreenshot", true);
((DesiredCapabilities) caps).setCapability(
PhantomJSDriverService.PHANTOMJS_EXECUTABLE_PATH_PROPERTY,
"C:/Program Files/phantomjs-2.1.1-windows/bin/phantomjs.exe" //java web start / jnpl file...
// "/Controller/phantomjs.exe"
);
//SET enabled javascript for php script on WEB page to transform it to picture:
caps.setJavascriptEnabled(true);
String [] phantomJsArgs = {"--web-security=no", "--ignore-ssl-errors=yes"};
caps.setCapability(PhantomJSDriverService.PHANTOMJS_CLI_ARGS, phantomJsArgs);
//CREATING WEB driver
WebDriver driver = new PhantomJSDriver(caps);
然而,我得到了这个错误:
线程“main”java中出现异常。lang.NoClassDefFoundError:org/openqa/selenium/browserlaunchers/Proxies at org。openqa。硒。幻影。PhantomJSDriversService。createDefaultService(PhantomJSDriverService.java:178)位于org。openqa。硒。幻影。幽灵司机。(PhantomJSDriver.java:99)在HD_PhantomJSTest1。main(HD_PhantomJSTest1.java:33)由:java引起。lang.ClassNotFoundException:org。openqa。硒。浏览器发射器。java的代理。网1美元。在java上运行(URLClassLoader.java:372)。网1美元。在java上运行(URLClassLoader.java:361)。安全访问控制器。java上的doPrivileged(本机方法)。网URLClassLoader。java上的findClass(URLClassLoader.java:360)。lang.ClassLoader。sun上的loadClass(ClassLoader.java:424)。杂项。Launcher$AppClassLoader。java上的loadClass(Launcher.java:308)。lang.ClassLoader。loadClass(ClassLoader.java:357)。。。还有3个
java。当Java虚拟机无法在运行时找到编译时可用的特定类时,会观察到lang.NoClassDefFoundError
。
例如,如果我们有一个类的方法调用或访问一个类的任何静态成员,而该类在运行时不可用,那么JVM将抛出java。lang.NoClassDefFoundError
。
从您的测试台
信息来看,我不确定是否包含PhantomJSdriver。jar 1.1。版本
。当前的PhantomJS
实现本身不需要任何额外的jar。相关的Selenium JARs
解决了所需的依赖关系。因此可以删除PhantomJSdriver。jar 1.1。版本
。
除此之外,我在你的代码中没有看到任何这样的错误。然而,在进行了一点代码格式化之后,我用我的配置执行了您的代码,结果是成功
,如下所示:
@Test
public void verifyFacebookTitle()
{
DesiredCapabilities caps = new DesiredCapabilities();
((DesiredCapabilities) caps).setJavascriptEnabled(true);
((DesiredCapabilities) caps).setCapability("takesScreenshot", true);
((DesiredCapabilities) caps).setCapability(PhantomJSDriverService.PHANTOMJS_EXECUTABLE_PATH_PROPERTY, "C:\\Utility\\phantomjs-2.1.1-windows\\bin\\phantomjs.exe");
caps.setJavascriptEnabled(true);
String [] phantomJsArgs = {"--web-security=no", "--ignore-ssl-errors=yes"};
caps.setCapability(PhantomJSDriverService.PHANTOMJS_CLI_ARGS, phantomJsArgs);
WebDriver driver = new PhantomJSDriver(caps);
driver.get("https://www.facebook.com/");
System.out.println(driver.getTitle());
driver.quit();
}
我的控制台上的输出:
INFO: Detected dialect: OSS
Facebook – log in or sign up
[INFO - 2017-12-06T08:24:22.972Z] ShutdownReqHand - _handle - About to shutdown
PASSED: verifyFacebookTitle
===============================================
Default test
Tests run: 1, Failures: 0, Skips: 0
===============================================
===============================================
Default suite
Total tests run: 1, Failures: 0, Skips: 0
===============================================
我使用的是Selenium 2.53.0Java、Tor 6.0.4和Firefox43。我用Firefoxprofile()加载profile.default归档文件,并用firefox.exe加载Firefoxbinary()来执行tor。Tor启动,但它没有启动,它显示两个错误:无法连接到Tor控制端口和Tor启动失败。
这是我的程序 打包Projectpack导入org . open QA . selenium . by;导入org . open QA . selenium . web driver;导入org . open QA . selenium . chrome . chrome driver;公共类project class {/* * * * @ param args */public static
问题内容: 我刚接触selenium。我生成了我的第一个Javaselenium测试用例,它已成功编译。但是当我运行该测试时,我得到了以下RuntimeException 请告诉我如何解决此错误。 这是我要运行的Java文件。 我首先通过命令提示符启动了selenium服务器,然后通过另一个命令提示符执行了上述java文件。 第二个问题:我可以右键单击包含selenium的网页上的指定位置。 问题
第一次在这里发帖,所以如果我错过了任何细节,请原谅我。 我使用以下设置: 机器人框架:3.0.1(Python 2.7.10) selenium: 3.4.1 selenium2Library: 1.4.1 我将一台mac计算机配置为网格集线器,另一台配置为节点。 这是我的射频测试: 我现在只是试图在另一台机器上打开浏览器以使其正常工作,但在尝试执行脚本时收到以下错误: KeyError:“des
我的代码: 例外情况 线程“main”java中出现异常。lang.IllegalStateException:驱动程序可执行文件不存在:C:\Users\sony\Downloads\chromedriver\U win32。在com.exe。谷歌。常见的基础先决条件。org上的checkState(premissions.java:534)。openqa。硒。遥远的服务司机服务。在org上检查
使用此代码为相同,但它是给无法访问的浏览器异常和不工作。