I had previously built a Cucumber test suite that ran sequentially (no containers), each tag from which I am now running in individual containers (8 in total) using
docker-compose. The application being tested and my test containers are on different servers. To ensure that my containerized test results were correct I have been running both the containerized tests and sequential tests for the last while. Occasionally I will have one or two steps failing in the containerized tests and passing in the sequential tests. When I run the specific container(s) using
docker run ... afterwards, the previously failing tests pass. The application being tested is the same in all cases.
Has anyone previously experienced this issue with Cucumber or other test frameworks in containers? It might be a network traffic issue due to parallel tests contacting the same target server from one host, but I don’t trust that explanation.
$ docker info Containers: 8 Running: 0 Paused: 0 Stopped: 8 Images: 2 Server Version: 1.11.2 Storage Driver: devicemapper Pool Name: docker-docker--pool Pool Blocksize: 524.3 kB Base Device Size: 10.74 GB Backing Filesystem: ext4 Data file: Metadata file: Data Space Used: 10.43 GB Data Space Total: 23.35 GB Data Space Available: 12.93 GB Metadata Space Used: 3.486 MB Metadata Space Total: 25.17 MB Metadata Space Available: 21.68 MB Udev Sync Supported: true Deferred Removal Enabled: true Deferred Deletion Enabled: true Deferred Deleted Device Count: 0 Library Version: 1.02.93-RHEL7 (2015-01-28) Logging Driver: json-file Cgroup Driver: cgroupfs Plugins: Volume: local Network: null host bridge Kernel Version: 4.4.19-29.55.amzn1.x86_64 Operating System: Amazon Linux AMI 2016.09 OSType: linux Architecture: x86_64 CPUs: 4 Total Memory: 16.00 GiB Name: XXXXXXXX ID: XXXXXXXXXXXXXXXXX Docker Root Dir: /var/lib/docker Debug mode (client): false Debug mode (server): false Registry: https://index.docker.io/v1/