Automation execution is too slow in chrome using selenium webdriver 36 - java

Earlier I was using chrome 32, which was very fast. But after upgrading to 36, it is very slow. It is taking more than a second to execute sendKeys instruction even after location element.
Any help would be appreciated.

The answer can be the following if you use 64-bit OS architecture on your PC - as far as I remember is because Selenium performs switching between 32-bit and 64-bit mode (which is very slow operation). ChromeDriver was supported only in 32-bit. I had same issues with IE driver too.
Update:
Next thing to check then is that the proxy and network settings in chrome have not been altered. In the begging I considered extensions and add-ons, but Selenium raises clean instance each time. As to #36 being slow - check the dev threads on google chrome, you will see the issue has been ongoing for well over 6mths and is affecting cross-platforms too. And one solution is try disabling hardware acceleration.... it was a tenfold improvement for me on my laptop.
To disable it... type "chrome:settings" in the address bar, click Advanced Settings, then uncheck "Use hardware acceleration when available" under the System header. Close all open Chrome browser instances and restart Chrome.

Related

Issue with late version of selenium web driver

I have a selenium java project but I have an unsual error after some weeks not working on the project.
After searching on internet, most people said it was related to the chrome driver version. This seems weid, because I use the "io.github.bonigarcia.wdm.WebDriverManager" package to handle chrome version (and as you can see, I used the 103 chrome driver version).
After downloading the next version, and use:
"System.setProperty("webdriver.chrome.driver", "C:\Users\path\webdriver\chromedriver-104.exe");" the browser even fail to open, and it print me this error message.
But it seems the version is still 103 for my "personnal" chrome browser. I tried to update it, but it remains 103..
I tried to download the 104, but it act "beta chrome"...
What am I supposed to? Is there anyone else having issue with chrome selenium lately? Is there a work around? Can someone explain why selenium even bother to know the version of my work chrome?
The bug is actually in version 103 of the Chrome browser, not chromedriver. See https://bugs.chromium.org/p/chromedriver/issues/detail?id=4121 .
I have been able to mostly work around this by adding Thread.Sleep()'s (in C#) ranging from a fraction of a second to a few seconds, before the Selenium calls which fail.

Selenium has a problem finding element at lower window size (DOM doesn't change)

little introduction:
I'm using Selenium webdriver for Java to run some Tests. I got a Monitor with FullHD resolution (1920x1080) and a UWQHD Monitor (3440x1440). Normally i run selenium via chromedriver with headless as chrome param (which works fine so far). But if I want to develop or debug some Selenium paths, I use it without headless (of course).
Chromedriver Version: 77
Chrome Version: 78.0.3904.97
the Problem:
If I run the application without headless param on my fullHD Monitor selenium fails to find elements. If I run it on my UWQHD Monitor with a higher window size like 2500x1200 it works. The DOM really doesnt change between these window sizes. Also I can't set a higher window size then the current resolution of the monitor via:
this.driver.manage().window().setSize(new Dimension(2500,1500));
Do you guys have any idea? I thought the window size is only important for the different DOMs.
Even If I track the selenium paths at a lower window size it won't work.
regards,
bierat
The Problem was that there was an sticky header which overlapped the element I wanted to be clicked.
So I set an offset to fix that issue and that solved it.
Thanks to Volokh for his hint!

Selenium web driver moveToElement (Actions) throwing error with marionette driver?

Getting following error in selenium tests
POST /session/ee1b9201-dadc-7446-b753-0a418a230d30/moveto did not match a known command
What i've done is
Actions resetView = new Actions(driver);
resetView.moveToElement(el).perform();
Environment:
Firefox v47.0
Webdriver 3.0.0-beta2
This is entirely expected. No releases of GeckoDriver (Marionette) support the Actions class. It is one of the top priorities of Mozilla's team developing Marionette.
There is an issue that Selenium tracks, that is blocked by the Marionette issue.
Since the issue it's over 3 weeks old, and looking at their commit log, I wouldn't hold my breath for a patch anytime soon.
If you can use Firefox 47.0.1, because in Firefox 47.0 they had another bug, you can use the old WebDriver API that works (not Marionette). From 48 it stopped working, because you're supposed to use Marionette. Yes, that Marionette that is not finished.
If you must test on Firefox, I recommend you should stick to Firefox 47.0.1, Selenium 2.latest, eventually throw them in a docker image, and run like that.
That's what I do at least for Germanium, until it will hopefully eventually work also for Marionette.

Gecko Driver 0.9 Firefox hangs after driver.get

I am using Firefox Developer Edition 49.0a2 and I am able to open the web browser but after driver.get("example.website.com") executes, it just loads the page and hangs there. The test does not fail or error out.
I've tried using Marionette Driver and it doesn't even interact with the browser. I have also tried the different variations of the constructor such as FirefoxDriver(FFbinary, FFprofile, FFcapabilities) and the others that only require one or two of the parameters in all possible permutations. The developer edition of Firefox is where I get the best results as Firefox 47.0 is explicitly not supported.
i face the same issue so i tried to update the Windows OS and checked again
it worked fine for me.
Gecko driver might not be compatible if we do not update OS as well
Check it once if it help

Selenium IE - No Such Window Exception (Debugging is working however)

as per the title, I am using Selenium 2.45.0 WebDriver and trying to run some tests in IE11 with Win7 Pro. I have used these in Firefox and all works well.
The issue I am having is that shortly after the IE window is opened, Selenium looses track if it. I have searched and found the registry key and tried the security settings.
Here's where it gets odd. If I run this in Debug, it works. No issues. Just works. I also, for a time, thought the firewall was blocking stuff as things passed the first time it ran ( an allow access window appeared) however after allowing access the tests fail.
Anyone have any extra ideas?
I managed to get this working. Initially, I had saw Issue 6511 on the selenium group and had set my registry key for the 32 bit version of IE - however according to the issue, I should have set my registry key based on the version of windows. So
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BFCACHE - added a DWORD called "iexplore.exe" and set it be 0.

Categories