Skip to content

High-performance scalable implementation of Selenium Grid

License

Notifications You must be signed in to change notification settings

qa-kit/awesome-grid

Repository files navigation

Awesome grid logo

Awesome grid Build Status Go Report Card codecov

Project provides simple tool for launching your UI-tests with selenium-base docker images in kubernetes cluster.

For every test tool will create unique pod and after test finished pod will be removed.

Quick start with minikube

minikube start
  • Clone source
git clone git@github.com:qa-kit/awesome-grid.git
  • Change directory to repo
cd awesome-grid
  • Apply default permissions of cluster
kube apply -f build/kube
  • Build docker image
eval $(minikube docker-env)
docker build . -t awesome-grid
  • Start deployment
kubectl run awesome-grid --image=awesome-grid --labels="app=awesome-grid" --image-pull-policy=Never --port 4444
  • Get url of pod
minikube service awesome-grid --url
  • Start tests with this url.

Building

Building a docker image and

docker build . -t registry.example.com/awesome-grid

After that you could push image to your private registry and use it in k8s cluster

docker push registry.example.com/awesome-grid

Features

  • Flexible JSON-config for grid
  • JSON template for deployment template for k8s
  • On-demand grid scaling
  • Complete end-to-end tests provide stability of current release
  • Opportunity of tuning selenium images for best performance.

Contributing

If you'd like to contribute, please fork the repository and use a feature branch. Pull requests are warmly welcome.

We try to follow and hope you will too:

Links

Licensing

The code in this project is licensed under MIT license.

Releases

No releases published

Packages

No packages published

Languages