0

我已经看到 XDebug 在 PHP 7 下引发了分段错误,这一直发生在我和许多其他人身上。所以我得到了phpdbg使用 PHP 7 而不是使用 XDebug 运行的解决方案。

我的问题是我应该如何配置travis.yml以根据我正在测试的 PHP 版本执行其中一个。

这是我当前的 PHP 7 配置文件,也可以在这里找到

language: php

php:
  - "5.6"
  - "7.0"

install:
  - composer self-update

before_script:
  - phpenv config-rm xdebug.ini
  - mv .env.travis .env
  - mv travis.phpunit.xml phpunit.xml
  - mysql -e 'create database test_timegrid;'
  - composer install --dev --no-interaction
  - php artisan config:clear
  - php artisan migrate
  - php artisan db:seed
  - php artisan geoip:update
  - php artisan config:cache

script:
  - phpdbg -qrr vendor/bin/phpunit --coverage-clover build/logs/clover.xml

after_success:
  - ./travis-codeclimate-report.sh

使用这些设置,我无法为 PHP 5.6 运行测试,并且当使用 XDebug 时,PHP7 的测试失败,所以我有一种互斥问题。

对此有任何提示吗?

这是Travis 的构建历史PHP 5.6 的当前项目文件

4

1 回答 1

0

由于在这种情况下似乎有正在进行的工作,我决定继续使用 XDebug,直到我可以完全迁移到 PHPDebug 并将其用于 PHP7+ 和 PHP5.6。

在这一点上,使用 XDebug + PHP7.1 的构建进展顺利,但 PHP7.0 引发了分段错误。但是,这对我来说还可以,现在。

构建日志:

https://travis-ci.org/timegridio/timegrid/builds/173947875

于 2016-11-07T16:31:59.447 回答