zalenium | scalable container based Selenium Grid with video | Functional Testing library
kandi X-RAY | zalenium Summary
kandi X-RAY | zalenium Summary
.
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
- Updates the values of the test
- Updates the number of executed tests and values in the file
- Save test information to a file
- Renders the summary of the proxy
- Get the icon file path for the grid
- Content of the browsers tab
- Called when a test command is executed
- Ensure that the test session is present in the test session
- Adds a proxy to the registry
- Removes the remote proxy if it exists
- Updates the CBT - specific capabilities
- Executes a command on a container
- Update dashboard
- Extracts the BsCapabilities from the URL provided
- Check the status of containers
- Updates the casLabs capabilities
- Get capabilities
- Creates the container
- Serialize this object to a Map
- Update the dashboard
- Registers a node in a container
- Get test information from a selenium test session
- Saves the dashboard
- Dumps the status table
- Obtains a JSON object from a given URL
- Read the configuration values from the env
zalenium Key Features
zalenium Examples and Code Snippets
Community Discussions
Trending Discussions on zalenium
QUESTION
I'm trying to set group name when i start my test, and i want if for example testNg groups annotation is BS
only run test for firefox.
I used for this IAnnotationTransformer but it's doesn't work. Maybe i have a mistake but i don't get it. Can you help me? By the way i'm using BDD and when i run my test, it is not get in MyTransformer class. These are my codes;
Testng.xml
...ANSWER
Answered 2021-Apr-20 at 14:58The below code is printing groups set on method FirstTestNGFileTest
just before getting it
QUESTION
I've set up a Kubernetes (1.17.11) cluster (Azure), and I've installed nginx-ingress-controller via
helm install nginx-ingress --namespace z1 stable/nginx-ingress --set controller.publishService.enabled=true
the setup seems to be ok and it's working but every now and then it fails, when I check running pods (kubectl get pod -n z1
) I see there is a number of restarts for the ingress-controller pod.
I thought maybe there is a huge load so better to increase replicas so I ran helm upgrade --namespace z1 stable/ingress --set controller.replicasCount=3
but still only one of the pods (out of 3) seems to be in use and one has fails due to CrashLoopBackOff sometimes (not constantly).
One thing worth mentioning, installed nginx-ingress version is 0.34.1 but 0.41.2 is also available, do you think the upgrade will help, and how can I upgrade the installed version to the new one (AFAIK helm upgrade
won't replace the chart with a newer version, I may be wrong) ?
Any idea?
kubectl describe pod
result:
ANSWER
Answered 2020-Nov-25 at 14:10As OP confirmed in comment section, I am posting solution for this issue.
Yes I tried and I replaced the deprecated version with the latest version, it completely solved the nginx issue.
In this setup OP used helm chart from stable
repository. In Github page, dedicated to stable/nginx-ingress there is an information that this specific chart is DEPRECATED. It was updated 12 days ago so this is a fresh change.
This chart is deprecated as we have moved to the upstream repo ingress-nginx The chart source can be found here: https://github.com/kubernetes/ingress-nginx/tree/master/charts/ingress-nginx
In Nginx Ingress Controller deploy guide using Helm
option is already with new repository.
To list current repository on the cluster use command $ helm repo list
.
QUESTION
I tried to use Zalenium to run my automation cases. The default driver version is latest like chromedriver is v84 but I wanna to use version 76. Is there any way to change it? My automation is running with TestNG + selenium.
...ANSWER
Answered 2020-Jul-29 at 12:03You would need to use one of the docker images that has the versions you need, you can check the releases at elgalu/docker-selenium
here https://github.com/elgalu/docker-selenium/releases
QUESTION
I hosted Zalenium in Azure Kubernates, and I need to enable SSL. I see that in the helm charts, there is ingress.yaml with TLS setting, I tried to enable it but apparently nothing happens, does anyone knows what should done ?
...ANSWER
Answered 2020-Jun-29 at 10:29As I mentioned in comments, SSL/HTTPS is not just about enabling something in helm chart, it´s more complicated.
For example
You could set up nginx ingress controller with Let's Encrypt, which is a free TLS Certificate Authority and you can use it to automatically request and renew Let's Encrypt certificates for public domain names.
Additionally you need cert-manager, which is a Kubernetes tool that issues certificates from various certificate providers, including Let's Encrypt.
There are several tutorials about this, for example take a look at these
- https://cert-manager.io/docs/tutorials/acme/ingress/
- https://www.digitalocean.com/community/tutorials/how-to-set-up-an-nginx-ingress-with-cert-manager-on-digitalocean-kubernetes
- https://docs.bitnami.com/tutorials/secure-kubernetes-services-with-ingress-tls-letsencrypt/
Additionally take a look at this stackoverflow answer provided by @Tushar Mahajan.
QUESTION
I am trying to create a custom firefox profile for a remote driver for a Selenium test. Technologies used:
- Written in Java
Zalenium link-to-zalenium
...
ANSWER
Answered 2020-Apr-10 at 12:27Finally found the solution to enable DRM on the remote driver
QUESTION
I've setup a Zalenium in Kubernates (in the cloud not local minikube or anything else), It works perfectly and everything is OK. When I run a test case with recordVideo capability on, Zalenium records the test and stores a video inside a container, I can access the video via Zalenium's dashboard, but I want to download the video programmatically (not by visiting the dashboard) by RemoteWebDriver or something else, the video's name is dynamically generated and it consists of sessionId (known) and a timestamp which makes it impossible to generate by client to construct a URL to the video file, I wonder if anyone has already experience with Zalenium and knows how to download the video ?
...ANSWER
Answered 2020-Apr-01 at 11:58I found a workaround which it helps in my scenario, Zalenium exposes a Servlet (DashboardInformationServlet
) which provides information about tests that have been done so far, this servlet returns a list of objects, each object describes the test and gives a path to the video recording of the test, the information is enough to automate further steps I need to take.
QUESTION
I'm experiencing some problems using karate testing when uploading a file through a web interface using a Selenium grid cluster (Zalenium) and Jenkins:
find an easy way for getting the full path of the file to be able to send it to the input web element with:
waitFor(inputFieldSelector).input(fullPathOfThefile)
I solved this using a custom java method to reconstruct it but for sure there's a faster/more elegant way. Is there a specific Karate function/way for get it?
find a way to set up the remote webdriver to handle the local files as it seems that it searches the file to upload in the wrong place.
In Java I solved it using setFileDetector of RemoteWebDriver with LocalFileDetector (an example is shown below) but I don't know how to do it in Karate:
...
ANSWER
Answered 2020-Mar-13 at 17:58This may need investigation, to be honest we haven't worked on file-uploads to that extent, so we may need your help. For point 1, a custom Java method sounds good to me but you can suggest a new API and we can add it to Karate in the next version, maybe karate.toAbsolutePath('classpath:some/file.txt')
Any reference you can point us to for the FileDetector
will help - it would be great if you can contribute code. At the very least, please consider submitting a sample in this form: https://github.com/intuit/karate/tree/develop/examples/ui-test
QUESTION
I am able to execute WebUI feature file against single browser (Zalenium) using parallel runner and defined driver in karate-config.js. How can we execute WebUI feature file against multiple browsers (Zalenium) using parallel runner or distributed testing?
...ANSWER
Answered 2020-Feb-25 at 05:27Use a Scenario Outline
and the parallel runner. Karate will run each row of an Examples
table in parallel. But you will have to move the driver config into the Feature
.
Just add a parallel runner to this sample project and try: https://github.com/intuit/karate/tree/master/examples/ui-test
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install zalenium
Docker engine running, version >= 1.11.1 (probably works with earlier versions, not tested yet).
Make sure your docker daemon is running (e.g. docker info works without errors).
Pull the [docker-selenium](https://github.com/elgalu/docker-selenium) image. docker pull elgalu/selenium
docker pull dosel/zalenium
Zalenium uses docker to scale on-demand, therefore we need to give it the docker.sock full access, this is known as "Docker alongside docker". ```sh # Pull docker-selenium docker pull elgalu/selenium # Pull Zalenium docker pull dosel/zalenium docker run --rm -ti --name zalenium -p 4444:4444 \ -v /var/run/docker.sock:/var/run/docker.sock \ -v /tmp/videos:/home/seluser/videos \ --privileged dosel/zalenium start ```
Why --privileged? We suggest you run Zalenium as --privileged to speed up the node registration process by increasing the entropy level with [Haveged](http://www.issihosts.com/haveged/). Using --privileged is optional since it is just meant to improve its performance. For more information, check this [tutorial](https://www.digitalocean.com/community/tutorials/how-to-setup-additional-entropy-for-cloud-servers-using-haveged).
Try also our one line installer and starter for OSX/Linux (it will check for the latest images and ask for missing dependencies.) ```sh curl -sSL https://raw.githubusercontent.com/dosel/t/i/p | bash -s start ```
More usage examples, parameters, configurations, video usage and one line starters can be seen [here](https://zalando.github.io/zalenium/#usage)
After the output, you can check the [grid](http://localhost:4444/grid/console) console
Now you can point your Selenium tests to [http://localhost:4444/wd/hub](http://localhost:4444/wd/hub)
Stop it: docker stop zalenium
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page