Zalenium test results are shown as "completed" while running on Browserstack - browserstack

While running the test cases using zalenium and browserstack, the test results are shouwn in zalenium dashboard as completed, but not passed, failed.
Steps
I have added support to set test results based on zalenium documentation
Zalenium add cookie to pass/faile the test result
Added the support to set cookies to browserstack browser
Add cookies to browserstack driver
Added support to set test result in browserstack using it's API
Results:
Stil the test results of browserstack are shown as "completed"
Test Results in Zalenium dashboard
Note:
Please note, that the local runs set the test result correct as failed/passed
QUESTION:
Is there any way to set test result from browserstack to Zalenium local dashboard?

This is expected, the pass/fail status has only been implemented for tests running in containers started by Zalenium.

Related

TestCafe - How to automatically run the generated remote connection URL on a remote browser

I'm new to TestCafe. I have a requirement to execute the TestCafe automated tests on Internet Explorer(IE) browser.
I'm using TestCafe Studio to record the tests and the TestCafe docker container will be used to run the tests within the pipeline. Since the docker container doesn't support test execution with IE browser. I tried out the "remote" option and got a remote connection URL generated.
Which I need to copy and paste in to the remote IE browser where I want to execute the tests. Is there any way that I can automatically triggers test execution with the generated remote connection URL without manually copy and paste the URL?
docker run --add-host=my.host:127.0.0.1 -p 1337:1337 -p 1338:1338 -v /Users/Documents/GIT/Projects/e2e_tests:/tests -it testcafe/testcafe --hostname my.host remote -q --skip-js-errors --assertion-timeout 20000 --selector-timeout 20000 '/tests/Tests/**/*.testcafe'
You can write a script (using Batch/PowerShell, etc.) that starts the TestCafe container with a remote mode enabled and then navigates Internet Explorer to the connection URL, which is http://${HOSTNAME}:${PORT1}/browser/connect (where HOSTNAME and PORT1 are variables that were used to launch TestCafe). Check out this answer. It contains a bash script that implements this approach for the automation of test launch in the Safari browser using the remote mode.
Also note that TestCafe allows you to use browsers from cloud testing services. BrowserStack and Sauce Labs services provide Internet Explorer among many other browsers, so I assume it would be simpler to make your tests run in IE.

Does Zalenium have plan to support other browser like IE, Edge? As per my understanding, currently it supports Chrome and Firefox only

As per my understanding, currently Zalenium supports Chrome and Firefox only. Does Zalenium have plan to support other browsers like IE, Edge too? If yes, is there any roadmap or timeline on this?
Thank you
The project's github says Zalenium is not being developed anymore. Link to github is on https://opensource.zalando.com/zalenium/ where, to confirm browsers support, it says you can run tests in Firefox and Chrome and "If you need a different browser, Zalenium can redirect your tests to a cloud testing provider (Sauce Labs, BrowserStack, TestingBot, CrossBrowserTesting, LambdaTest)".

Does selenoid has dashboard like zalenium? and which one is more recommended to use?

I am new to selenoid. On my linux system selenoid and selenoid-ui services are up and running. I am able to run test cases on selenoid also able to view videos and logs on http://:4444/video/ and http://:4444/logs/.
Do we have a dashboard where we will have total no of test cases executed, passed, failed, logs etc.
As per the links gone through, most of the people have supported use of selenoid over zalenium. why? the url which it provides such as http://:4444/video/ and http://:4444/logs/ are also not well designed.
Do we have a dashboard where we will have total no of test cases
executed, passed, failed, logs etc?
The selenoid dashboard doesn't have any option to set test result, test counts etc.
It only shows videos, logs and the browsers on which the tests are run.
The selenoid-ui is open source, so you can customize the dashboard by adding some reports.
Please refer to selenoid-ui for development and contrubiting.
As per the links gone through, most of the people have supported use
of selenoid over zalenium. why?
If you are going to use many versions of browsers(chrome, opera, firefox), the selenoid is preferable.
Zalenium supports only two latest versions of chrome and firefox, but it also works with could base testing tools(browserstack, saucelabs etc).

i want to run my jmeter web driver script for 100 user without open browser

when i was run jmeter webdriver script multiple browser is open and this condition not get accurate load testing report so how i get proper load testing report without open Browser?
As per WebDriver Tutorial
Note: It is NOT the intention of this project to replace the HTTP Samplers included in JMeter. Rather it is meant to compliment them by measuring the end user load time.
So you should not be using WebDriver Samplers to create the main load as browsers are very resource intensive and most probably you won't be able to kick off more than 5-10 browsers on a single machine.
If your requirement is to conduct the load testing using 100 real browsers - you will have to go for Distributed Testing
If you want to use existing Selenium tests as a basis for a protocol-based load test you should record them using JMeter's HTTP(S) Test Script Recorder. You can set the proxy for your WebDriver tests as follows:
So we have an option to run webdriver smaplers without opening the browsers if you are using chrome browser for this. You add jp#gc - Chrome Driver Config config element and there are 3 tabs in that those are "proxy", "chrome" and "Experimental". So you click on "chrome" tab and check the check box of Use Chrome headless mode. See the screenshot below.
In reality if you want to run webdriver samplers for more than 100 browser then I would suggest you that u use distributed test. Because browsers are resource consuming if you run around 4 browsers then your system starts hanging. so you cannot run 100 browsers. So go with Distributed testing in jmeter.

Why does Nightwatch start a Selenium server?

The Selenium docs say:
If your browser and tests will all run on the same machine, and your
tests only use the WebDriver API, then you do not need to run the
Selenium-Server; WebDriver will run the browser directly.
So why does Nightwatch even use the server? Whenever I try to run my tests they first say Starting Selenium Server.
I imagine my tests would be faster without starting a server for each. Is there a way to turn it off? Currently Selenium isn't even working for me: Why does Nightwatch / Selenium give me a 'Connection reset' error?
Nightwatch will send a http request to the webdriver server to run your tests on a web browser. You can go over the way Nightwatch.js works in detail here:
http://nightwatchjs.org/getingstarted
Nightwatch is just a task runner. You still need a server along with the task runner to actually execute your tasks. That's where Webdriver comes in. Selenium is one of the most popular Webdriver out there and is stable when paired with Nightwatch tasks. Whether to use a standalone server or not is optional and up to you.