Tag: selenium chromedriver

如何使用Selenium(Java)在浏览器中禁用JavaScript?

在我的function自动化中,我需要在浏览器中禁用JavaScript并运行流程。 如何禁用JavaScript? 试过firefox和Chrome的DesiredCapabilities。 DesiredCapabilities dc = new DesiredCapabilities(); dc.setCapability(CapabilityType.SUPPORTS_JAVASCRIPT, false) 和 DesiredCapabilities dc = new DesiredCapabilities(); dc.setJavascriptEnabled(false); 对于firefox,尝试过1)为firefox设置配置文件 2)添加附加组件 – noScript.xpi 3)profile.setPreference(“javascript.enabled”,false); 4)通过UI,尝试将标志 – “about:config”中的“javascript.enabled”更改为false。 在这里,打开firefox并给出“about:config”警告 – “这可能会使您的保修失效!”。 有一个按钮 – “我会小心的,我保证!” id – warningButton。 应单击此按钮以继续。 要单击此按钮,请使用driver.findElement(By.id(“warningButton”))。click(); 但它不起作用。 以上所有选项均无效。 任何建议都会有所帮助。

无法在“chrome:// downloads /”页面找到网络元素

我正在使用Java和Selenium为Chrome编写测试。 有时我需要进入chrome://downloads/并单击CLEAR ALL按钮。 我可以到达页面 RemoteWebDriver driver = (RemoteWebDriver) driverChrome; driver.executeScript(“window.open();”); Thread.sleep(500); tabs = new ArrayList(driverChrome.getWindowHandles()); driverChrome.switchTo().window(tabs.get(1)); Thread.sleep(500); driverChrome.get(“chrome://downloads/”); 但我无法点击按钮,无论我使用什么xpath,都说no such element

在selenium上获得以下错误

我在selenium上遇到以下错误,我不知道如何解决它或我应该做什么, 未知错误:未处理的检查员错误:{“code”: – 32603,“message”:“无法导航到无效的URL”}(会话信息:chrome = 29.0.1547.57)(驱动程序信息:chromedriver = 2.2,platform = Windows NT 6.1 SP1 x86_64)(警告:服务器未提供任何堆栈跟踪信息)命令持续时间或超时:3毫秒构建信息:版本:’2.35.0’,修订版:’c916b9d’,时间:’2013-08-12 15:42 :01’系统信息:os.name:’Windows Server 2008 R2’,os.arch:’x86’,os.version:’6.1’,java.version:’1.7.0_04’会话ID:6c0f76e6f67873a6318edab1d66e4ccf驱动程序信息:org .openqa.selenium.chrome.ChromeDriver Capabilities [{platform = XP,acceptSslCerts = true,javascriptEnabled = true,browserName = chrome,chrome = {chromedriverVersion = 2.2},rotating = false,locationContextEnabled = true,version = 29.0.1547.57,cssSelectorsEnabled = true,databaseEnabled = true,handlesAlerts = true,browserConnectionEnabled = false,nativeEvents = true,webStorageEnabled = true,applicationCacheEnabled = false,takesScreenshot = […]

将Selenium WebDriver连接到现有的浏览器会话

我正在使用selenium,如果现有浏览器会话(对我来说Chrome)当前存在,我想附加一个webdriver实例。 我不想打开新的浏览器窗口/会话。 我用google搜索并看到,有一些方法可以使用这些网站上的描述: 通过扩展RemoteWebDriver重用现有的浏览器会话 ChromeDriverService的基本资料 我在最新版本中使用ChromeDriver 2.29 。 我的代码现在看起来如下: public static void main(String[] args) throws Exception { // starting Chrome Webdriver server ChromeDriverService service = new ChromeDriverService.Builder() .usingDriverExecutable(new File(“D:\\Development\\chromedriver\\chromedriver.exe”)) .usingAnyFreePort() .build(); service.start(); WebDriver driver = new CustomRemoteWebDriver(service.getUrl(),DesiredCapabilities.chrome()); driver.get(“http://www.google.com”); WebDriver driver2 = new CustomRemoteWebDriver(service.getUrl(),DesiredCapabilities.chrome()); // here I am expecting www.google.com from last driver instance, because it […]

使用ChromeDriver和无头模式下载Java,Selenium中的文件

由于我仍然不清楚如何使用ChromeDriver中的–headless模式下载文件 – selenium [Java],请在此处添加如何执行此操作的示例,我尝试这样做(文件下载工作正常 – 无头选项): ChromeOptions lChromeOptions = new ChromeOptions(); HashMap lChromePrefs = new HashMap(); lChromePrefs.put(“profile.default_content_settings.popups”, 0); lChromePrefs.put(“download.default_directory”, _PATH_TO_DOWNLOAD_DIR); lChromePrefs.put(“browser.set_download_behavior”, “{ behavior: ‘allow’ , downloadPath: ‘”+_PATH_TO_DOWNLOAD_DIR+”‘}”); lChromeOptions.addArguments(“–headless”); lChromeOptions.addArguments(“–disable-gpu”); lChromeOptions.setExperimentalOption(“prefs”, lChromePrefs); WebDriver lWebDriver = new ChromeDriver(lChromeOptions); 据我所知,自从Chrome v60 +设置Browser.setDownloadBehaviour(true, _DIRECTORY) ,无法以无头模式下载文件,但我无法找到ChromeDriver是否已经支持它的信息,或者只是我使用错误的chrome首选项作为参数 ChromeDriver版本:2.34 Selenium + WebDriver版本:3.8.1

如何在桌面浏览器上使用webdriver移动网络

我使用selenium webdriver进行AUT(应用程序测试)的function测试自动化。 AUT是响应式网络,我几乎完成了桌面浏览器的不同测试用例。 现在相同的测试用例也适用于移动浏览器,因为可以从移动浏览器访问AUT。 因为当我们在移动浏览器中打开时它是响应式web,所以UI具有一些不同的表示。 所以我们也需要为移动浏览器运行这些测试。 对于使用safari浏览器的用户代理function的手动测试团队 Safari浏览器菜单 – >开发 – >用户代理 它满足了我们对手动测试的需求。 如果我们可以通过自动化做同样的事情,即在桌面浏览器上使用某些twik运行测试,那么它也被认为是移动Web自动化完成。 我的问题是如何使用web驱动程序来修改标题。 url是相同的,因为只有一个网络应用程序。 我的自动化测试使用FirefoxDriver和chromeDriver在firefox上正常运行。 两种浏览器都有类似的开发工具,但我无法通过自动化来利用它。 我们使用的是selenium2.53.0。 我们的IVY文件具有以下与selenium相关的依赖关系。 任何人都可以提供建议并帮助我如何运行我的测试来实现它以及我需要做的相关代码更改是什么? 谢谢。

是否已弃用ChromeDriverfunction?

我有一段代码完美无缺,直到今天。 public class TestSelenium { public static void main(String[] args) { System.setProperty(“webdriver.chrome.driver”,”chromedriver\\chromedriver.exe”); WebDriver driver = new ChromeDriver(); driver.get(“https://google.com”); driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS); driver.findElement(By.name(“q”)).sendKeys(“hello world”); } } 上面的简单代码输出以下错误: Started ChromeDriver port=25456 version=26.0.1383.0 log=C:\Use…………….omedriver.log Exception in thread “main” org.openqa.selenium.WebDriverException: Unknown command ‘WaitForAllTabsToStopLoading’. Options: AcceptOrDismissAppModalDialog, ActionOnSSLBlockingPage, ActivateTab, AddBookmark, AddDomEventObserver, AppendTab, ApplyAccelerator, BringBrowserToFront, ClearEventQueue, CloseBrowserWindow, CloseTab, CreateNewAutomationProvider, DeleteCookie, DeleteCookieInBrowserContext, DoesAutomationObjectExist, DragAndDropFilePaths, […]

Java Selenium Chrome驱动程序 – 禁用图像加载

我试图运行chrome驱动程序而不加载任何图像,原因很明显。 我在网上发现了一段代码,但我认为它已经过时了 HashMap images = new HashMap(); images.put(“images”, 2); HashMap prefs = new HashMap(); prefs.put(“profile.default_content_settings”, images); ChromeOptions options =new ChromeOptions(); options.setExperimentalOption(“prefs”, prefs); DesiredCapabilities chromeCaps = DesiredCapabilities.chrome(); chromeCaps.setCapability(ChromeOptions.CAPABILITY, options); driver = new ChromeDriver(chromeCaps); 根本不起作用.. 任何帮助都会受到极大的关注

Chrome版本44在selenium测试中存在一些问题

我正在使用Selenium和Chrome编写测试,昨天当我的Chrome从43更新到44时,我的测试遇到了action.sendkey(“arrow.down”)等问题。 我尝试卸载Chrome并安装Chrome 43,但是一旦我这样做就将其自我更新为44! 我也尝试过chromedriver 2.16,但它也没有用。 我该如何解决?

如何使用selenium设置“value”来输入web元素?

我的代码中的元素看起来像这样: 我想设置它的值,所以我用它的xpath创建了一个web元素: val test = driver.findElements(By.xpath(“””//*[@id=”invoice_supplier_id”]”””)) 但现在我没有看到设置值的选项……