We're here to help
Running Provar tests on Docker using Docker file
Once you have Docker installed on your machine, you can build the image using the example Dockerfile.
The Dockerfile uses global arguments to specify which version of Provar to target and use in the container, namely PROVAR_DEFAULT_VERSION and PROVAR_MAJOR_VERSION. The major version represents the first 3 decimal values of a Provar version (i.e. 1.9.10 and 1.9.11). The default version represents the full Provar version to target (i.e. 1.9.10.02).
You can target any of the following versions (the Dockerfile will always use the most recent Provar ANT files):
(1) Open up a command shell (PowerShell in Windows or Terminal on Mac) and input the following commands.
(2) Download the example Dockerfile to your Provar test project root directory (location of .testproject)
(3) Navigate to your Provar test project root directory (location of .testproject file)
(4) Run the following command to build the Docker container
$ docker build -t <your_tag_name_here>
(5) Once the build completes, you can run the docker image by running this command:
$ docker run -it -v <location_to_save_reports_locally>:/home/<PROJECT_NAME>/ANT/Results --name provartests <your_tag_name_here>
- -v maps the ANT results folder to your local file system to grant visibility to test reports
- Note you must use /c/path/to/resultsto map files to a Windows host. This command is optional.
- The -d command automatically removes the container after execution. This option will also return control of the terminal immediately and not give test output. This command is optional.
- -it allows for a pseudo-TTY and keeps STDIN open even if not attached. This command is optional.
You should see the following output after executing the commands above:
This will run your Provar tests inside the docker container using build file that you generated previously. The results/reports will be inside this container and can be copied elsewhere for reporting. They are also mapped to the machine’s local file system via the -v command.
(6) In order to copy a file from a container to the host, you can use the command:
$ docker cp <containerId>:/file/path/within/container /host/path/target
(7) In order to find the docker container’s id, you can use the command:
$ docker ps
(Add -a to include exited containers.)
The container’s id is listed in the first column (copy this value).
(8) To copy the results of the test run to your machine, input the following command into another command window (to copy the entire directory just reference the directory itself, no *):
(9) The docker container cannot execute docker commands (natively) so this command must be executed on the host machine.
$ docker cp 48e22cb4076b:/home/ProvarProject/ANT/Results/ C:\users\16156\ProvarDocker\Results\