Help us understand the problem. What is going on with this article?

PHPフレームワークphalconのテストをWerckerで自動化してみる

More than 5 years have passed since last update.

概要

そろそろ案件が落ち着いてきて、テストを書き始めたのでCIを導入しようと思ったのと、会社の同僚さんがWercker良いよって話をしてたので使ってみました。

環境について

私の案件はPhalconというPHPのフレームワークを利用しています。
また、gitについてはBitbucketを利用しています。

導入するまで

導入するまでについてです。

  • wercker.comでアカウントを作成
    • githubアカウントかメールアドレスの登録
  • githubかbitbucketを選択画面がでるので、bitbucketを選択
  • リポジトリを選択

実際に利用してみる

テスト用にブランチを作成し、以下のようなwercker.ymlを作成してpushします。

wercker.yml
box: duythien/phalcon@1.2.6
build:
  steps:
    - script:
        name: install dependencies
        code: composer install
    - script:
        name: PHPUnit integration tests
        code: phpunit --tap -c tests/phpunit.xml
  after-steps:
    - wantedly/pretty-slack-notify:
        webhook_url: $SLACK_WEBHOOK_URL
        team: <YOUR_TEAM>
        channel: <YOUR_CHANNEL>
  • boxについてはphalconを利用したいので、duythien/phalconを使うようにしました。
  • いくつかcomposerに依存しているものがあるので、composer installするようにしました。
  • PHPUnitはtests配下にファイルを置いているので、tests/phpunit.xmlを指定しました。
  • 終了後はSlackに通知したかったので、wantedly/pretty-slack-notifyを使いました。
    • $SLACK_WEBHOOK_URLについては、werckerの設定画面から設定することが出来ます。

使ってみた感想

  • あまりにもphalcon向けの資料がないので、何度も何度もpushしてfailedを出しまくった。
  • phalconではなく通常のフレームワークであればそこまでハマらなかったような気がします。
  • テストが通ると気持ちが良いものですね。
  • デプロイの方についてはまだ試してないので、デプロイについても試してみたいです。

参考にしたサイト

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away