如何对PHP REST API进行单元测试?

时间:2018-01-30 15:48:59

标签: php rest api unit-testing travis-ci

我的意思是我知道我可以写PHPUnit次测试 但如何模拟Web服务器/ mysql服务器

我也想测试MySQL /数据库代码 Best最适合Travis CI。

1 个答案:

答案 0 :(得分:1)

我喜欢在验收测试中使用代码,但无论如何,travis设置几乎都是一样的。安装selenium服务器!

language: php

php:
  - 5.6
  - 7.0
  - 7.1
  - hhvm

matrix:
  allow_failures:
    - php: hhvm

addons:
  hosts:
    - FAKEHOSTNAMEHERE

sudo: false


install:
  - wget http://selenium-release.storage.googleapis.com/2.42/selenium-server-standalone-2.42.2.jar
  - composer install


before_script:
  - export DISPLAY=:99.0
  - sh -e /etc/init.d/xvfb start
  - sleep 5
  - java -jar selenium-server-standalone-2.42.2.jar -port 4444 &
  - "mysql -e 'create database codeception_test;'"
  - nohup php -S FAKEHOSTNAMEHERE:8000 public/index.php &
script:
  - php vendor/bin/codecept run  --coverage-xml --env travis
after_script:
  - phpunit --coverage-clover=coverage.clover
  - wget https://scrutinizer-ci.com/ocular.phar
  - php ocular.phar code-coverage:upload --format=php-clover tests/_output/coverage.xml

只需将FAKEHOSTNAMEHERE替换为您需要的任何内容。