testing php extension on travis ci

12
Testing PHP extension on Travis CI hnw 第4回闇PHP勉強会 (2013/03/02) 発表資料 1333日日曜日

Upload: yoshio-hanawa

Post on 31-May-2015

2.256 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Testing PHP extension on Travis CI

Testing PHP extensionon Travis CI

hnw第4回闇PHP勉強会 (2013/03/02) 発表資料

13年3月3日日曜日

Page 2: Testing PHP extension on Travis CI

自己紹介

@hnw

カレーとバグが大好物

好きな境界値:2^53+1(doubleで表現できない最小の自然数)

最近はHaskellでProject Euler解いてます

13年3月3日日曜日

Page 3: Testing PHP extension on Travis CI

今日おはなしすること

PHP extension作った!

もちろんCIしたいですよね

でも自分で環境作るとかダルいし

そこでTravis CIですよ

テストの書き方も少しだけ紹介します

13年3月3日日曜日

Page 4: Testing PHP extension on Travis CI

Travis CIとは

GitHubと連携しているCIサービス

CI=勝手にテスト回す仕組み

各種プログラミング言語に対応

git pushするだけでPHP5.2から5.5でテストが走る

普通はPHPプログラムのテストに使います

13年3月3日日曜日

Page 5: Testing PHP extension on Travis CI

ExtensionもCIできる!Travis CIではテストコマンドを自由に記述できる

「phpize && ./configure && make test」

13年3月3日日曜日

Page 6: Testing PHP extension on Travis CI

make testのオプションNO_INTERACTION=1

テスト結果をメールするかどうか聞かない

Travis CIでテストするときは必須

TESTS=--show-all

テストの経過を標準出力に全て表示

環境のログイン権限がないので、情報は多い方がいい

13年3月3日日曜日

Page 7: Testing PHP extension on Travis CI

Travis CIの不満な点

ZTSなPHPが無い

--enable-debugつきのPHPが無い

FPMなPHPが無い

まあ仕方ないよね…(́・ω・`)

13年3月3日日曜日

Page 8: Testing PHP extension on Travis CI

テストの書き方

make testの仕組みに乗っかります

tests/*.phptがテスト対象

でも*.phptってあんまり書いたことないですよね

13年3月3日日曜日

Page 9: Testing PHP extension on Travis CI

*.phptの記法

ext/*/tests/*.phptを参考にすればいいと思うよ!

便利なブロックを少し紹介

SKIPIF:テストをスキップする条件をPHPで書ける

INI:このテストだけで有効なiniの内容を書ける

ENV:このテストだけで有効な環境変数を書ける

13年3月3日日曜日

Page 10: Testing PHP extension on Travis CI

*.phptの例13年3月3日日曜日

Page 11: Testing PHP extension on Travis CI

まとめ

Travis CIでPHP Extensionのテストもできるよ!

Extensionのテストは*.phptを書くだけだよ!

テスト書いとくと安心感が違うよ!

13年3月3日日曜日

Page 12: Testing PHP extension on Travis CI

ご静聴ありがとうございました

13年3月3日日曜日