Skip to content

Kenith/docker-images

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Introduction

This project provides convenient Docker images for Katalon Studio and other Selenium-based testing frameworks, with following requirements:

  • Images are easy to deploy and use for people with limited Docker knowledge,
  • Up-to-date browser versions (Google Chrome, Mozilla Firefox) from official installation packages,
  • Testing frameworks and companion tools are fully installed and configured for common use cases,
  • Compatible with Cloud and local-based CIs.

At this moment, the following images are available:

  • Base: contains common software for doing Selenium testing: Google Chrome, Mozilla Firefox, Xvfb, Java SE Runtime Environment (OpenJDK).
  • Katalon Studio: used for creating containers that can execute Katalon Studio tests and write reports to host's file system.

Versions of important packages is written in /katalon/version (or $KATALON_VERSION_FILE).

cat $KATALON_VERSION_FILE
Google Chrome 65.0.3325.181 (ChromeDriver 2.36)
Mozilla Firefox 59.0.3 (Geckodriver 0.20.1)
Katalon Studio 5.4.2

Katalon Studio image

The container started from this image will expect following environment variables:

  • KATALON_OPTS: all Katalon Studio console mode arguments except -runMode, -reportFolder, and -projectPath. For more details as well as an easy way to generate all arguments please refer to the documentation.

The following bind mounts should be used:

Container's directory Host's directory Writable?
/katalon/katalon/source project directory No - the source code will be copied to a temporary directory inside the container, therefore no write access is needed.
/katalon/katalon/report report directory Yes - Katalon Studio will write execution report to this directory.

If you need to configure proxy for Katalon Studio please use following parameters:

Option Name Value Type Values Mandatory?
proxy.option Fixed NO_PROXY, USE_SYSTEM, MANUAL_CONFIG YES
proxy.server.type Fixed HTTP, HTTPS, or SOCKS YES
proxy.server.address String Examples: locahost, 192.168.1.221 YES
proxy.server.port Integer Examples: 8888, 8080 YES
proxy.username String Example: MyProxyUsername Optional (YES if your proxy server requires authentication)
proxy.password String Example: MyProxyPasswordOptional (YES if your proxy server requires authentication)

These proxy information will be passed to browsers executing the tests.

For example, the following script will execute a project at /home/ubuntu/katalon-test and write reports to /katalon/katalon/report. Do not forget to put --config before the proxy configuration.

If during the test, encountering the "chrome is not reachable", or "failed to decode response from marionette", add the --privileged -v /dev/shm:/dev/shm --shm-size 2048m into docker run

#!/usr/bin/env bash

katalon_opts='-browserType="Chrome" -retry=0 -statusDelay=15 -testSuitePath="Test Suites/TS_RegressionTest" --config -proxy.option=MANUAL_CONFIG -proxy.server.type=HTTP -proxy.server.address=192.168.1.221 -proxy.server.port=8888'
docker run --rm -v /home/ubuntu/katalon-test:/katalon/katalon/source:ro -v /home/ubuntu/report:/katalon/katalon/report -e KATALON_OPTS="$katalon_opts" katalonstudio/katalon

Please visit https://github.com/katalon-studio/docker-images-samples for samples.

About

Docker images for Katalon Studio and other frameworks

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 100.0%