89
Help us understand the problem. What are the problem?

posted at

updated at

ド素人のための Travis CI の使い方 (公式ガイドより)

Travis CI for Complete Beginners - Travis CI より

動作確認用のレポジトリをForkする

https://github.com/plaindocs/travis-broken-example で Fork ボタンを押すだけ

( * Forkは好きなレポジトリを自分のレポジトリとして、まるまるコピー出来る機能)

ForkしたレポジトリをCloneする

手元に持ってくる

$ git clone git@github.com:YOUR_USER_NAME/travis-broken-example.git
$ cd travis-broken-example

Travisの設定ファイルを見てみる

何やらいろいろ書かれているが、複数の php バージョンでテストしようとしてるのが分かる。
hhvm というのも php 環境のひとつらしい。

.travis.yml
language: php # テスト言語
php:
- 5.5 # 環境その1
- 5.4 # 環境その2
- hhvm # 環境その3
script: phpunit Test.php # この処理がCIとして走る

テストスクリプトを確認

あえて失敗するテストが書かれている。

1+1=1 を期待しているテストなので、失敗するのが正しい状態。

Test.php
<?php
class Test extends PHPUnit_Framework_TestCase
{
	public function testOnePlusOne() {
		$this->assertEquals(1+1,1);
  	}
}
?>

Travis CI に登録する

https://travis-ci.org/ より。

Travis でレポジトリを有効化する

image.png

ブランチが表示されない場合

「Sync account」を試す。

image.png

適当なコミットを作ってプッシュする

$ git add -A
$ git commit -m 'Testing Travis CI'
$ git push

テストが回り始める

複数のPHP環境で、それぞれテストが動くのが分かる。

image.png

やがてテストが落ちる

これも期待通りの動作。

image.png

テストファイルを修正する

1+1=2 にする。

( 1+1 って 2 ですよね? 皆さん! )

Test.php
<?php

class Test extends PHPUnit_Framework_TestCase
{
	public function testOnePlusOne() {
-		$this->assertEquals(1+1,1);
+		$this->assertEquals(1+1,2);
  	}
}

?>

git push する

新しいテストが回り、今度は成功する

image.png

やったぜ!

バッジを付けてみる

ちょっと分かりにくいが、Travis CI に表示されている「バッジボタン」を押すと埋め込みコードを取得できる。

画面に見えてるこいつ => image.png

形式は Markdownを選ぶ。

これを Github のREADMEなどに貼り付ければ良い。
(お試しにIssueやWikiに貼っても良いと思う)

image.png

Github の README に埋め込みコードを追加

image.png

表示例

このバッジでCIが通っているか、落ちているかを確認できるようになる。

image.png

チャットメンバー募集

何か質問、悩み事、相談などあればLINEオープンチャットもご利用ください。

Twitter

Register as a new user and use Qiita more conveniently

  1. You can follow users and tags
  2. you can stock useful information
  3. You can make editorial suggestions for articles
What you can do with signing up
89
Help us understand the problem. What are the problem?