这是我第一次在项目中使用测试。我使用Gitlab CI和gitlabRunner进行测试。但是发生了一些奇怪的事情,当phpunit执行输出失败时,但是gitlab中的测试结果是通过。 Gitlab应该显示失败的结果。
我使用流明5.1。和Gitlab Runner使用docker。
这是我的.gitlab-ci.yml
文件
image: dragoncapital/comic:1.0.0
stages:
- test
cache:
paths:
- vendor/
before_script:
- bash .gitlab-ci.sh > /dev/null
test:7.0:
script:
- phpunit
这是我的
.gitlab-sh.sh
文件#!/bin/bash
# We need to install dependencies only for Docker
[[ ! -e /.dockerenv ]] && exit 0
set -xe
composer install
cp .env.testing .env
日志和结果:
如您所见,phpunit测试失败,但是gitlab CI中的状态通过了。
更新:
在我的本地计算机中,日志输出是完全不同的,但是结果是错误/失败。
最佳答案
至少我弄清楚了这个测试有什么问题。这个系统中有两个phpunit
,我叫错了一个。
首先,我使用phpunit
命令安装了apt-get
,因此phpunit作为Ubuntu软件包安装。
其次,Laravel / Lumen在phpunit
中提供了vendor/bin
。
当我仅在终端中键入phpunit
时,它会调用Ubuntu提供的phpunit,这会给我带来意想不到的结果。但是,当我调用vendor/bin/phpunit
而不是phpunit
时,一切正常。
关于docker - 流明:PHPUnit失败,但在Gitlab CI Runner中通过了测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41276007/