All Projects → wrike → callisto

wrike / callisto

Licence: MIT license
Callisto is an open-source Kubernetes-native implementation of Selenium Grid.

Programming Languages

python
139335 projects - #7 most used programming language
Dockerfile
14818 projects
Makefile
30231 projects

Projects that are alternatives of or similar to callisto

Docker Selenium
Docker images for the Selenium Grid Server
Stars: ✭ 5,476 (+6497.59%)
Mutual labels:  webdriver, selenium, selenium-server, selenium-grid
WebGrid
Decentralized, scalable and robust implementation of a selenium-grid equivalent. Based on the WebDriver specification by the W3C.
Stars: ✭ 17 (-79.52%)
Mutual labels:  webdriver, selenium, selenium-grid
Selenoid
Selenium Hub successor running browsers within containers. Scalable, immutable, self hosted Selenium-Grid on any platform with single binary.
Stars: ✭ 2,065 (+2387.95%)
Mutual labels:  selenium, selenium-server, selenium-grid
Nightwatch
End-to-end testing framework written in Node.js and using the Webdriver API
Stars: ✭ 10,912 (+13046.99%)
Mutual labels:  webdriver, selenium, selenium-server
Cdp4j
cdp4j - Chrome DevTools Protocol for Java
Stars: ✭ 232 (+179.52%)
Mutual labels:  webdriver, selenium
selenified
The Selenified Test Framework provides mechanisms for simply testing applications at multiple tiers while easily integrating into DevOps build environments. Selenified provides traceable reporting for both web and API testing, wraps and extends Selenium calls to more appropriately handle testing errors, and supports testing over multiple browser…
Stars: ✭ 38 (-54.22%)
Mutual labels:  selenium, selenium-grid
selenium-openapi
The missing Selenium OpenAPI spec
Stars: ✭ 25 (-69.88%)
Mutual labels:  webdriver, selenium
google-meet-bot
Bot for scheduling and entering google meet sessions automatically
Stars: ✭ 33 (-60.24%)
Mutual labels:  webdriver, selenium
Panther
A browser testing and web crawling library for PHP and Symfony
Stars: ✭ 2,480 (+2887.95%)
Mutual labels:  webdriver, selenium
Pytest Selenium
Plugin for running Selenium with pytest
Stars: ✭ 246 (+196.39%)
Mutual labels:  webdriver, selenium
phoenix.webui.framework
基于WebDriver的WebUI自动化测试框架
Stars: ✭ 118 (+42.17%)
Mutual labels:  webdriver, selenium
Selenium Python Helium
Selenium-python but lighter: Helium is the best Python library for web automation.
Stars: ✭ 2,732 (+3191.57%)
Mutual labels:  webdriver, selenium
Steward
PHP libraries that makes Selenium WebDriver + PHPUnit functional testing easy and robust
Stars: ✭ 215 (+159.04%)
Mutual labels:  webdriver, selenium
Selenoid Ui
Graphical user interface for Selenoid project
Stars: ✭ 237 (+185.54%)
Mutual labels:  webdriver, selenium
Splinter
splinter - python test framework for web applications
Stars: ✭ 2,476 (+2883.13%)
Mutual labels:  webdriver, selenium
Selion
Enabling Test Automation in Java
Stars: ✭ 252 (+203.61%)
Mutual labels:  webdriver, selenium
spydriver
🕵️ Lightweight utility to intercept WebDriver and WebElement method calls.
Stars: ✭ 24 (-71.08%)
Mutual labels:  webdriver, selenium
basic-selenium-project
an example selenium test project
Stars: ✭ 55 (-33.73%)
Mutual labels:  webdriver, selenium
SeleniumDemo
Selenium automation test framework
Stars: ✭ 84 (+1.2%)
Mutual labels:  selenium, selenium-grid
nightwatch101
使用 Nightwatch 實現 End-to-End Testing ★
Stars: ✭ 42 (-49.4%)
Mutual labels:  webdriver, selenium

Callisto

Callisto is an open-source Kubernetes-native implementation of Selenium Grid.

Architecture

Callisto architecture

Callisto architecture

Components

  • Nginx proxies requests for creating/deleting sessions to Callisto. All other requests are proxied to browser pods directly.
  • Callisto creates/deletes browser pods, watches the status of pods, and creates sessions via the webdriver.
  • Browser pods contain a webdriver and a browser.

Nginx and Callisto must be running inside a Kubernetes cluster in order to access browser pods directly.

Features

Requirements

  • Running Kubernetes cluster
  • kubectl and helm installed and pointing to the cluster

Installation

See helm chart to get started.

Configuration

Name Type Required Default Description
WEB_API_HOST str No 127.0.0.1 a host to run web api
WEB_API_PORT int No 8080 a port to run web api
LOG_LEVEL str No INFO log level
GRAYLOG_HOST str No Graylog host address. Logging to Graylog is disabled if left empty
GRAYLOG_PORT int No 12201 Graylog port
K8S_NAMESPACE str No default k8s namespace to spawn pods
POD_WEBDRIVER_PATH str No webdriver path location. On selenoid images /wd/hub for firefox, empty for others
POD_WEBDRIVER_PORT int No 4444 webdriver port
POD_MANIFEST str No /etc/callisto/pod_manifest.yaml Path to pod manifest file
SENTRY_DSN str No Sentry DSN. Sentry disabled if left empty

Resources requests/limits, browser image, screen resolution and other parameters can be configured via pod_manifest.yaml.

Troubleshooting

Each request is marked with a unique trace id (tid). This information is available in the logs. Also, for debugging, it is recommended to set the LOG_LEVEL to DEBUG.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].