This is my first time to use testing in my project. I use Gitlab CI and gitlab runner to perform test. But something weird happened, when phpunit executed the output is failure, but the test result in gitlab is passed. Gitlab should be show failed result.
I use Lumen 5.1. And Gitlab Runner using docker.
This is my .gitlab-ci.yml
file
image: dragoncapital/comic:1.0.0
stages:
- test
cache:
paths:
- vendor/
before_script:
- bash .gitlab-ci.sh > /dev/null
test:7.0:
script:
- phpunit
This is my .gitlab-sh.sh
file
#!/bin/bash
# We need to install dependencies only for Docker
[[ ! -e /.dockerenv ]] && exit 0
set -xe
composer install
cp .env.testing .env
The log and result:
As you can see the phpunit test fail, but the status in gitlab CI is passed.
Update:
The log ouput is quite different in my local computer, but the results are error/fail.
At least I figured out what wrong with this test. There are two
phpunit
in this system, and I called the wrong one.First, I installed
phpunit
usingapt-get
command, so phpunit is installed as Ubuntu package.And secondly, Laravel/Lumen provided
phpunit
invendor/bin
.When I just typing
phpunit
in terminal, it call phpunit that provided by Ubuntu, and this give me unexpected results. But, everything ok when I callvendor/bin/phpunit
instead of justphpunit
.