参加記録 Jenkins ユーザ・カンファレンス 2015 東京

Jenkins ユーザ・カンファレンス 2015 東京に参加しました。
Togetterまとめ

発表まとめ

アンケート結果

  • 参加申し込み時のアンケート結果
  • 多くの人のjobの数が1〜数個程度
  • Jenkins無くても生きていける人が30%ぐらい
  • 思ったよりもみんなJenkinsを使い込んでいない印象
  • アンケート結果は後日公開

Jenkinsプロジェクトの現状とワークフロー

  • DotCiが良さそう
  • Workflow Pluginすごい
    • Build Flow Pluginをいっそう強化した版
    • ビルドが失敗しても途中から再開とかも出来る
    • 乗り換えよう
    • ただ、DSLを覚えたりと学習コストが高くなるので秘伝のタレ化の危険が

JenkinsとSeleniumの活用事例:試験自動化のプロジェクトへの導入

  • アジャイル開発だとイテレーション毎に試験項目は増えていくが、開発後半になるほど試験に割ける時間は減る
    • あるあるすぎる
    • 試験自動化で試験項目の消化にかかるコストを下げる
  • スクリーンショットを撮って画像比較して変更検知
    • 静的な画面なら効果的っぽい
    • アニメーションする場合は撮るタイミングによりそうなので、目で比較かなぁ…
  • テストケースの保守大変そう
    • ちょっと変わっただけで使えなくなるし

Jenkinsを使ったコンシューマゲームでのデプロイとテスト

  • http://www.slideshare.net/swiftnest/jenkins-43394510
  • 圧縮して6GB、11万ファイルのプロジェクト
    • 2プラットフォーム2言語にビルド
    • これで中規模ぐらいと凄い世界が…
      • FFとかどんだけなんだろう…
  • フルビルドに14時間かかる
    • リソースの事前処理に時間がかかる
      • リソース内での分岐処理が遅いため、全条件分のリソースを作る
    • データを実機上でビルドする必要がある
      • 携帯機は貧弱なので差分ビルドでも4時間かかったりする
      • プラットフォームで互換性なし
        • PS3はビッグエンディアン
        • VITAはリトルエンディアン
    • ファイルをパックするのでキャッシュが効かない
      • ファイルアクセス回数を減らすため必須
      • 全データを実機でパックするため6時間ぐらい
  • 頑張って並列化して5〜9時間ぐらいまで減らす
    • データの処理を4台で並列化
      • 一台4時間ぐらいに短縮
  • テスト
    • テストフレームワークなど無い
    • スモークテスト
      • 特定ミッションに入れるかどうかをテスト
        • 引数で専用のミッションを始められるように
          • 一定時間たったら終了させる
          • 正常終了しなかったらエラー
        • 起動からスタート、終了までがちゃんと動くか
        • リソースに問題ないか
      • エフェクト再生チェック
        • 一定時間内に終わるか
      • データが変換可能か
    • モンキーテスト
      • 開始からエンディングまでの通しプレイAI
        • 良い感じに攻撃する
          • 適当にボタン連打
        • 適当に移動
        • 何回もゲームオーバーになったら無敵&攻撃力100倍
      • メニュー操作テスト
        • 普通のUIテストっぽい
      • 長時間テスト特有のバグ発見に繋がる
        • リソースの解放漏れ
          • 携帯機はスリープできるので普通は電源を切らない
    • 問題点
      • 作成やメンテナンスにコストがかかる
        • ゆとりがある時期にどれだけ作れるか勝負
      • チェックに時間かかる
        • 一日じゃ終わらない
      • 手動テストの置き換えにはならない
        • テストのパターンが固定化されるため、外れた部分のバグは検知不可
        • 人の手のかかるテストを減らす効果

おばかXFDコンテスト

  • 人は慣れる生き物
    • 何度も通知してるとそのうち無視するようになる
      • エラーメールを迷惑フォルダに入れたり
      • パトランプの上に被せたり
    • XFDによる通知で、慣れに逆らう

LT大会

  • Jenkinsを使った継続的Webセキュリティテスト
    • 継続的にセキュリティテストを実施するVAddyの話
    • ちゃんと専門家が監修しているという噂がTLに流れた
  • Jenkinsおじさん、お堅いメガバンクに就職
    • 金融系企業でJenkinsが使われているだと(´・_・`)!!
    • ちゃんと聞きたかったけど、時間が足りなくて終了…
  • Jenkinsおじさんと楽しい連携ツールたち
    • Deploygate、Slack、Gitlabの連携話 – だいたい似たようなことしてる
  • ゲーム業界の人がJenkinsさん3Dモデルで遊んでみた
    • Jenkinsの3Dモデルで遊んでる
  • CI”じゃない方”のJenkins

まとめ

  • Jenkins単体の話はなくって、Jenkinsと○○連携してこう使ってますが多かった
    • Jenkinsを使うのは普通な世界になってる気がする
  • ちょこっとだけ設定を変えたJobが乱立するのはどこも同じっぽい
    • Workflow Pluginでそのあたりを吸収できそう
  • 会場設備が凄く良い
    • ネット快適、教室は電源とLAN完備
    • 法政大学凄すぎる
  • Tシャツがフリー配布されてた