Running Tests in Docker Containers

Docker is a container platform provider that enables you to package applications, including all their dependencies, into virtual containers.

Silk4J supports the following scenarios for running tests from Docker containers:
  • Running tests against a browser in a Docker container. The Open Agent and the test executor are running on your local Windows machine.
  • Running tests against a browser in a Docker container through an Open Agent that is running in another Docker container. The browser and the Open Agent communicate with each other through a Docker network. The test executor is running on your local Windows machine.
  • Running tests entirely from Docker containers. The Open Agent, the test executor, and the browser run in three separate Docker containers and communicate with each other through a Docker network.


Silk4J supports running tests for web applications in the following desktop browsers from Docker containers:
  • Microsoft Edge
  • Mozilla Firefox
  • Google Chrome
  • Apple Safari
Running your Silk4J tests in Docker containers enables you to better integrate your Silk4J tests into your existing CI workflow and provides the following advantages:
  • You can run your tests on Windows, Linux, and macOS.
  • You do not have to install Silk4J or any other required software, for example Java, on the machine on which you want to run the tests.
  • You do not need to update the browser version when using the images provided by Docker.
  • You can run tests in the background while working on other things.
  • You can use the command line to run the Docker image and the tests.

Silk4J provides a basic Docker image, named functionaltesting/silktest, which contains the Open Agent and the capabilities to run Silk4J tests. You can download the image from the Docker Hub.

Note: The topics in this section assume familiarity with Docker. If you are new to Docker and you would like to have additional information, refer to the Docker website.