Check out this video to learn how to setup Chromedriver in Docker - ua-cam.com/video/peHHavCgHKg/v-deo.html For Selenium Python users, I have created this video - ua-cam.com/video/jQW2fjgUJrY/v-deo.html 📧 Subscribe to my mailing list for all the latest updates regarding new courses and videos - bit.ly/sdet-u-mailing-list
Hey Dilpreet, you do not know wow much I was struggling to resolve this driver not matched with version issue as my version of chrome is 124 and driver is 112. This video really helped me and I don't have to install / download a driver now to execute scripts now. A like and a subscribed added. :) Thanks.
hi @Dilpreet Johal nice video. May you please create one video on how to display webdriverio allure report on jenkins pipeline using jenkins file. I am unable to do so and not any video available for that.
Hey hi @Dilpreet Johal, I have tried the same but i have interpreted by the error message as " Failed to create a session, make sure browser drive is running on that address. It seems like the service failed to start or is rejecting any connection". And I'm using the port so how it will work here...?
even i tried by keeping service as chrome and downloaded driver and wdio-chrome driver service same , https authentication issue as its asking username and password everytime which i need to type. pls help me how to get over it
Hi Dilpreet, Your channel has helped me a lot in the past and want to implement this on my project where tests are running on jenkins agents which has linux AMIs and seeing this chromedriver version mismatch. currently my wdio version is 7 and knowing the fact that this solution only apply to wdio v8. Could you please brief me if there are major changes between v7 and v8 were introduced ?
@@sdetunicorns Thanks a lot Dilpreet, I've now upgraded WDIO from version 7 to 8 and this Chrome for testing working like a gem. With this do we need to take care of defauld port? if so, how can I specify default port?
Hi Dilpreet, I have upgraded my wdio version to 8 (from 7) and chrome for testing working fine. But is it correct that if I don't specify browser versio at all then it will pick up the chrome version installed on local? Why I am asking is because we run our test on local as well as on jenkins and we do not want to specify browser version everytime chrome version change.
Hey Dilpreet, Thanks for the video! My problem is that I updated the wdio to the latest version as you mentioned but when Im running the test wdio still usting google Chrome and not the new google chrome for testing, why is doing that?
Hi Dilpreet, On the WDIO blog, we can see that we can pass 'stable' as browserVersion and it should pick the latest stable version. However, this is throwing ENONET error. Is there anything that needs to be done additionaly ?
Would you please make a video on network interception or devtools interception using webdriverio. Test case scenario is like, intercepting networkcalls and get the response, payload, request method etc
Hello, I have a problem. I do everthing just like You but in the end chromedriver doesn't download itselft when test starts. I have more dependencies and cucumber instead of mocha, can it make a difference?
Hi, great video! :) I have a question: is it possible to run my tests (WebdriverIO 8) against real chrome browser and not against "chrome for testing"? if yes, can I still enjoy from the auto download of chrome driver done by WebdriverIO 8?
Yes, you can but then you will need to provide the path to real chrome browser and no auto download would not work in that case. But, the Google team itself officially recommends to use Chrome for Testing then why go with regular chrome browser?
@@sdetunicorns Because rest of the world and customers do use regular Chrome and not the one for testing. This helps with automaton but hides some parts that users are experiencing as it is not the same thing.
Hi Dilpreet, Just curious isn't this same as what selenium standalone library has been handling? If i am not wrong this was not part of framework earlier and this time they have added the feature. Please correct me if i am wrong.
It depends on what you're referring to, but in a nutshell, the Selenium Standalone Service used to let us run tests on multiple browsers. However, it added an extra layer of complexity as a separate dependency. Now, this feature is seamlessly integrated into the framework itself, making the management of different browsers and versions much smoother
But everytime when its downloading the chrome and running tests iam getting https authentication issue as its asking username and password everytime which i need to type. pls help me how to get over it (manually only once i turn on laptop i used to enter it but here its asking everytime).
After upgrading to latest, I'm able to run tests on chrome 116. But I can see screenshots are not captured, It used to work before upgrades. Do we have any issue with this? Your help is much appreciated
@@sdetunicorns I'm using below code - afterTest: async function (test, context, { error, result, duration, passed, retries }) { if (!passed) { await browser.takeScreenshot(); } }, It used to work before upgrade, now I don't see any screenshots captured as part of not passed cases
At the moment, custom driver and binaries options are not supported. There's a ticket out for that, you can add in details to that ticket to explain why this is important for you - github.com/webdriverio/webdriverio/issues/10900
hey hi @sdetunicorns, i am already doing, but the download url is not whitelisted on my CI pipeline...i am working in a banking domain, what you suggest, should I give them base URL for the whitelisting??
For firefox, just add 'firefox' as the browser name and that would work. For Safari, you need to install developer.apple.com/safari/technology-preview/ and then add `safari technology preview` as the browsername
Hi Dilpreet, when I remove the wdio-standalone-service, and all references to it in my config, as well as removing references to `drivers` in my config, so that I can piggy-back on v8.14.x for auto-browser-downloading, I instead see the following: Do you know why my wdio isn't trying to resolve my chrome version? node_env=test headless=false npx wdio ./config/web.config.js --suite Regression Execution of 1 workers started at 2023-08-22T00:05:44.497Z [0-0] RUNNING in chrome - file:///test/pdp/accessory_1_test.js [0-0] 2023-08-22T00:05:49.615Z ERROR webdriver: TypeError: Invalid URL [0-0] at new NodeError (node:internal/errors:405:5) [0-0] at new URL (node:internal/url:611:13)
so the issue here is with the file name - file:///test/pdp/accessory_1_test.js Make sure the specs path is correct in your wdio.conf.js, try to use absolute path for now to make sure the test works. If it does then you know its the path issue and then you can fix that accordingly.
Check out this video to learn how to setup Chromedriver in Docker - ua-cam.com/video/peHHavCgHKg/v-deo.html
For Selenium Python users, I have created this video - ua-cam.com/video/jQW2fjgUJrY/v-deo.html
📧 Subscribe to my mailing list for all the latest updates regarding new courses and videos -
bit.ly/sdet-u-mailing-list
Hey Dilpreet, you do not know wow much I was struggling to resolve this driver not matched with version issue as my version of chrome is 124 and driver is 112. This video really helped me and I don't have to install / download a driver now to execute scripts now. A like and a subscribed added. :)
Thanks.
Thanks! Glad it helped :)
hi @Dilpreet Johal nice video. May you please create one video on how to display webdriverio allure report on jenkins pipeline using jenkins file. I am unable to do so and not any video available for that.
Hey hi @Dilpreet Johal, I have tried the same but i have interpreted by the error message as " Failed to create a session, make sure browser drive is running on that address. It seems like the service failed to start or is rejecting any connection". And I'm using the port so how it will work here...?
Very userful! Thanks for presentation.
even i tried by keeping service as chrome and downloaded driver and wdio-chrome driver service same , https authentication issue as its asking username and password everytime which i need to type. pls help me how to get over it
i'm using chrome for testing in ubuntu server with headless mode but no luck. it just works with my ubuntu desktop. any idea?
Hi Dilpreet, Your channel has helped me a lot in the past and want to implement this on my project where tests are running on jenkins agents which has linux AMIs and seeing this chromedriver version mismatch. currently my wdio version is 7 and knowing the fact that this solution only apply to wdio v8.
Could you please brief me if there are major changes between v7 and v8 were introduced ?
Good to hear! These were some of the main v8 changes - webdriver.io/blog/2023/07/31/driver-management
@@sdetunicorns Thanks a lot Dilpreet, I've now upgraded WDIO from version 7 to 8 and this Chrome for testing working like a gem. With this do we need to take care of defauld port? if so, how can I specify default port?
Hi Dilpreet, I have upgraded my wdio version to 8 (from 7) and chrome for testing working fine. But is it correct that if I don't specify browser versio at all then it will pick up the chrome version installed on local? Why I am asking is because we run our test on local as well as on jenkins and we do not want to specify browser version everytime chrome version change.
great overview thank you
I have an issue I have chromedriver version 119 now but I am not able to anything related to 119 only - 120,121,122 is available what to do
I am not sure I understand your question. You can just set the browser version based on what you want and it will pick it up accordingly.
Last night Jenkins updated chrome version to 116 which made our python script scheduled in Jenkins gets failing. You can guide me?
i’ve a video on python coming out soon, that might help you out
Check out this Python Chromedriver Video, might help with your Jenkins issue - ua-cam.com/video/jQW2fjgUJrY/v-deo.html
Hey Dilpreet, Thanks for the video! My problem is that I updated the wdio to the latest version as you mentioned but when Im running the test wdio still usting google Chrome and not the new google chrome for testing, why is doing that?
you can set the browser version in the config to point it too 116+ and it should spin up chrome for testing
@@sdetunicorns I'll try with that, cheers
Hi Dilpreet,
On the WDIO blog, we can see that we can pass 'stable' as browserVersion and it should pick the latest stable version.
However, this is throwing ENONET error. Is there anything that needs to be done additionaly ?
If the stable is giving error then you can directly add in the version number too - 116 for example
Would you please make a video on network interception or devtools interception using webdriverio. Test case scenario is like, intercepting networkcalls and get the response, payload, request method etc
Yeah this one is an interesting topic, I will create a video on it.
Bro I have version 120.0.6099.217 how to download it is not there
Hello, I have a problem. I do everthing just like You but in the end chromedriver doesn't download itselft when test starts. I have more dependencies and cucumber instead of mocha, can it make a difference?
What error are you seeing though when it tries to download the driver?
@@sdetunicorns in logs also:
2023-09-07T08:43:02.884Z INFO webdriver: Downloading Chromedriver v116.0.5845.180
2023-09-07T08:43:02.928Z WARN webdriver: Couldn't download Chromedriver v116.0.5845.180: write EPROTO CC110000:error:0A000410:SSL routines:ssl3_read_bytes:sslv3 alert handshake failure:c:\ws\deps\openssl\openssl\ssl
ecord
ec_layer_s3.c:1586:SSL alert number 40
, trying to find known good version...
2023-09-07T08:43:08.152Z INFO webdriver: Downloading Chromedriver v116.0.5845.180
2023-09-07T08:43:08.435Z WARN webdriver: Couldn't download Chromedriver v116.0.5845.180: Download failed: server returned code 404. URL: edgedl.me.gvt1.com/edgedl/chrome/chrome-for-testing/116.0.5845.180/win64/chromedriver-win64.zip, trying to find known good version...
thank you
Hi, great video! :) I have a question: is it possible to run my tests (WebdriverIO 8) against real chrome browser and not against "chrome for testing"? if yes, can I still enjoy from the auto download of chrome driver done by WebdriverIO 8?
Yes, you can but then you will need to provide the path to real chrome browser and no auto download would not work in that case. But, the Google team itself officially recommends to use Chrome for Testing then why go with regular chrome browser?
@@sdetunicorns Because rest of the world and customers do use regular Chrome and not the one for testing. This helps with automaton but hides some parts that users are experiencing as it is not the same thing.
Hi Dilpreet, Just curious isn't this same as what selenium standalone library has been handling? If i am not wrong this was not part of framework earlier and this time they have added the feature. Please correct me if i am wrong.
It depends on what you're referring to, but in a nutshell, the Selenium Standalone Service used to let us run tests on multiple browsers. However, it added an extra layer of complexity as a separate dependency. Now, this feature is seamlessly integrated into the framework itself, making the management of different browsers and versions much smoother
But everytime when its downloading the chrome and running tests iam getting https authentication issue as its asking username and password everytime which i need to type. pls help me how to get over it (manually only once i turn on laptop i used to enter it but here its asking everytime).
Not sure why you would be seeing that, you can reach out on the Discord channel for help and provide more details - discord.gg/tK2zK66P
After upgrading to latest, I'm able to run tests on chrome 116. But I can see screenshots are not captured, It used to work before upgrades. Do we have any issue with this? Your help is much appreciated
What are you using for screenshots? It may be a bug as well, as that shouldn't really get affected.
@@sdetunicorns I'm using below code -
afterTest: async function (test, context, { error, result, duration, passed, retries }) {
if (!passed) {
await browser.takeScreenshot();
}
},
It used to work before upgrade, now I don't see any screenshots captured as part of not passed cases
What if the external download is blocked and org repo is used for maintaining the exe ?
At the moment, custom driver and binaries options are not supported. There's a ticket out for that, you can add in details to that ticket to explain why this is important for you - github.com/webdriverio/webdriverio/issues/10900
Can u tell me which framework you're using
webdriverio
hey hi @sdetunicorns, i am already doing, but the download url is not whitelisted on my CI pipeline...i am working in a banking domain, what you suggest, should I give them base URL for the whitelisting??
Yes, provide baseUrl, so any updates it can handle as well.
do u know the way of putting the binary??@@sdetunicorns
Wouldnt this slowdown the test execution by downloading the driver each run?
Good question. For that, there's caching involved so it will first check the cache and if its not there then only it will download.
For windows 64 bit how can we write selenium java code
In the binaries you will be providing the path for Chrome For Testing browser now.
What if i want to run my test on firefox or safari?
For firefox, just add 'firefox' as the browser name and that would work. For Safari, you need to install developer.apple.com/safari/technology-preview/ and then add `safari technology preview` as the browsername
Can you do similar one for python as well. It would be helpful
Yes, that's the next video I am working on. Stay tuned!
Python Video is out now - ua-cam.com/video/jQW2fjgUJrY/v-deo.html
how to do it in pyCharm?
I have a video coming out on this soon. Stay tuned!
PyCharm video is out now - ua-cam.com/video/jQW2fjgUJrY/v-deo.html
Hi Dilpreet, when I remove the wdio-standalone-service, and all references to it in my config, as well as removing references to `drivers` in my config, so that I can piggy-back on v8.14.x for auto-browser-downloading, I instead see the following:
Do you know why my wdio isn't trying to resolve my chrome version?
node_env=test headless=false npx wdio ./config/web.config.js --suite Regression
Execution of 1 workers started at 2023-08-22T00:05:44.497Z
[0-0] RUNNING in chrome - file:///test/pdp/accessory_1_test.js
[0-0] 2023-08-22T00:05:49.615Z ERROR webdriver: TypeError: Invalid URL
[0-0] at new NodeError (node:internal/errors:405:5)
[0-0] at new URL (node:internal/url:611:13)
so the issue here is with the file name - file:///test/pdp/accessory_1_test.js
Make sure the specs path is correct in your wdio.conf.js, try to use absolute path for now to make sure the test works. If it does then you know its the path issue and then you can fix that accordingly.
@@sdetunicorns Actually that wasn't the issue, it ended up because my config still had a reference to:
path: '/wd/hub',
Saviour 🫡