makopi23のブログ

makopi23が日々の生活で感じたことを気ままに綴るブログです。

「システムテスト自動化カンファレンス2014」に参加しました

2014/12/14(日) 「システムテスト自動化カンファレンス2014」に参加してきました。

connpass
http://connpass.com/event/9618/

Togetter
http://togetter.com/li/757649

場所は六本木のヤフー株式会社さんです。
参加者は200人くらいでしょうか。キャンセル待ちも70人くらい出たようです。
あいかわらず参加申し込み開始後にすぐに枠が埋まるほどの人気イベントですね~
たしか11/15のJJUG CCCの基調講演中に申し込みが開始されて、私は講演聞きながらすぐ申し込んだ記憶があります。
おかげで私の申し込み順位は一桁台~。

ちなみに私、去年も参加してそんときブログ書きました。

「システムテスト自動化カンファレンス2013」に参加しました
http://makopi23.blog.fc2.com/blog-entry-126.html

去年は講演を聴講するだけでなくSeleniumのハンズオンにも参加して、とっても勉強になりました。
そして今年も参加したわけなんですが、去年同様、本当に学びが多かったのが実感です。
社内でもテスト自動化に関するWGに参加してるので、このイベントネタはとてもストライクなのですよ。

というわけでいつもどおり、自分の復習用にブログにメモを書くことにする。
といっても当日とったメモを書き起こすだけ。
後ろに行くほど手抜きw


■ 開会+注意事項 /松木 晋祐氏

申し込み時に取ったテスト自動化に関するアンケート結果を提示していたのがすごく興味深かったです。
参加者+補欠者で、300人くらいの母数があったようで、とても有用なデータだと思います。
メモからいくつか抜粋してみる。
  • テスト自動化の経験が無い人が約50%。
    • 「繰りかえし開発でない」人が47%くらいなので、それが原因の一因ではないか。
  • 繰り返し開発をやっているのはコンシューマ分野の人が多い。
  • テスト自動化が上手くいってるか、という問に、「多くの深刻な問題がある」と回答した人が60%。
  • 問題の内訳は以下。
    • 工数、教育、人材のリソース不足が30%くらい。
    • 知識、スキル不足が47%。
    • 組織やマネージャのサポート不足が10%。
  • 自動化に取り組もうとしているけど時間がない、という人が多いのかもしれない。
  • 特にモバイルは環境構築する敷居が高い。
  • 重要度の高いテストの自動がができていない、簡単なテストだけしか自動化できていない、という意見が多い。
    • 重要なテストをきちんと定義できているか?を考えないといけない。


アンケート結果は後日公開されるらしいので、もう一度じっくり見てみたいですね。

★ 12/21追記
アンケート結果が公開されたようです。
https://sites.google.com/site/testautomationresearch/info/stac2014_survey


■ オープニング:1時間で分かるSTA /鈴木 一裕氏
1時間で分かるSTA (Software Test Automation) #stac2014 from Kazuhiro Suzuki


近々発売される「テスト自動化標準ガイド」について監訳や全体まとめを担当したとのことで、この本についていろいろ紹介がありました。

システムテスト自動化 標準ガイド (CodeZine BOOKS)システムテスト自動化 標準ガイド (CodeZine BOOKS)
(2014/12/16)
Mark Fewster、Dorothy Graham 他

商品詳細を見る


こんな本が近々出るなんで、知らなかった・・・
ちなみにこの日は翔泳社さんブースもあったんですが、この講演後に完売したそうですw
あと2章のタイトル「キャプチャーリプレイはテスト自動化ではない」ですが、言い切りましたね~
他には、「ロバストな比較」と「センシティブな比較」はあるあるなんですが、名前付けして定義してる点が興味深かったです。
講演にユーモアも交え、上手く書籍の構成とポイントを紹介しているなぁ、と感じました。
ぜひ読んでみたいと思いました。(この講演の冒頭でも出てきましたが、「積ん読」にならないようにしないと・・・)


■ テスト自動化のパターンと実践 /.reviewrc
関西の3名の方による発表です。関西特有のテンションで、聞いててとても楽しいです。

■ 前川さん
テスト自動化のパターンと実践 from Hiroshi Maekawa


テスト自動化をパターン・ランゲージを使って表現する取り組みの紹介で、以下で公開中だそうな。

テスト自動化パターン言語プロジェクト
https://github.com/KenColle/AutomationPatternLanguage

この発想はユニークで、実用性もありそうですね。「ピンを生やす」って命名とか、センスあるなと思います。
これは共通認識を醸成するのに使えそうだな~と思いました。


■石川さん
「皮を剥く」というテクいやつ(テクニカルなパターン)についての紹介です。
Stac2014 石川 from Tatsuya Ishikawa


「皮を剥く」というパターンを実現するために、FriendlyというWindows用の皮むき器を開発したとのこと。斬新なアプリです。
内部仕様とテストの間にアプリケーションドライバという層を設け、技術的な部分を隠蔽するという考えも参考になります。

■ 三浦さん
エモい三浦さん(笑)による発表です。
「自動家(オートメータ)をつくる」-システムテスト自動化カンファレンス2014 「.reviewrc」枠発表- from Miura Kazuhito


三浦さんは去年のXP祭り関西でもLTをされてたように記憶してますが、あの時同様、今回もエモかったw
いつもすごく楽しそうにしてるなーと思うのと同時に、この情熱は素晴らしいと思うのです。
すごく積極的な姿勢が滲み出ていますよね。

「自動化」をもじって、「自動家」というロールをパターン名とした発想もユニークです。
あと、 災いを『未然に防いだ勇者』は数百あれど、英雄となれたのは『発生後に対処した者』ただ一人である という言葉は重いですね・・・


■ STA 第2部:GUI自動テストの保守性を高めるには /伊藤 望氏
GUI自動テストの保守性を高めるには from Nozomi Ito


Seleniumが発表のメインになってました。テーマは保守性。
去年のテスト自動化カンファレンスでSeleniumのハンズオンに参加したんですが、すげー参考になったなぁ。
以下メモ。
---
  • Seleniumuで記録したスクリプトをそのまま使うのはやめたほうがいい。
    • Seleniumでプログラム書く方が個人的には推奨。
  • できるだけテストを失敗させない。
  • Seleniumで制御するとき、何番目のdiv、とかで指定するのはやめたほうが良い。
  • 最初に環境テストをやって、こけたらやめる。テストをそのまま続けると、後続のテストが赤ばっかりで埋もれる。
    • 赤が当たり前になると、どうせまたバグじゃないんだろ、とテスト失敗原因調査が後回しになる。
  • ページオブジェクトデザインパターン
    • 1つのページに対し1つのページオブジェクトクラスとする。
    • divの何番目とかの言葉がスクリプトに出てこなくなる。
    • 画面のUI構成に依存しないようになる。
  • 画面がロードされるのを待つとき、指定時間待つよりは、ある要素が表示されるまで待つようにする。



■ STA 第2部:状態遷移テストにおけるテスト設計と実行の自動化 /きょん氏
#STAC2014 状態遷移を活用した自動テストのテスト戦略とデプロイメントパイプライン from Kyon Mm


テスト方面でいろいろ発信されているきょん氏。
発表の中で「拝承」が何度か出てきましたが、私、その拝承に勤めてるんです。。。
以下メモ。
---
  • 効果のあるテストを自動化しないと意味がない。
  • ValueStreamMap
    • 無駄な時間を見える化する
    • テスト自動化はバリューストリームを短くする手段の1つしかない
  • 受け入れステージで、この機能使ったら次にこの機能使って~、みたいな最低限のパスを通るスモークテストを、巡回セールスマン問題で解いて生成する。
  • 画面を1個ずつすべて定義して、その画面をすべて通る機能の使い方を自動生成で出させた。


■ STA 第2部 : ビルドプロセスとCI /長谷川 孝二氏
ビルドプロセスとCI #STAC2014 from Koji Hasegawa

  • 「ハンマーを持つ人には、すべてが釘に見える」
    • ツールを使ってると、ツールに振り回される。
  • Jenkinsの学習は「カエル本+ググる力」。


■ 社内スマホアプリのビルド配信ツールによる自動化事例 /赤根 稔朗氏(Yahoo! JAPAN)

Yahooで独自のビルド配信ツールを開発して自動化した事例。
スライド、公開されるかな・・・・?


■ Test Automation Patterns 2014 冬コレ!/松木 晋祐氏


テスト自動化パターンの紹介です。こんな概念あるんですね。参考になります。


■テストセレクタ
  • 個々最近、ファイルにタグをつける概念が出てきた。
  • 昔はフォルダでしか分けれなかった。
  • 1つのテストに複数のタグを付けておく。
  • あるテストをやりたいときは、そのタグ付きのテストやろう、みたいにできる。
  • フォルダ管理よりタグ管理のほうが柔軟なテストができる。

■効くところをテストする
  • もっとも基本的なユースケースを自動化してずっとテストを実行し続けて、ラムドムが線形に伸びていないことを確認する

■ページオブジェクト
  • ページオブジェクトをnewしてからアクセスする
  • テストしたいコードと、対象を認識するコードを分離する。

■テスト自動化に関わる人たち
  • ロールを定義して、テストに対する過度な期待をコントロールする。
  • テストエンジニアとテスト自動化エンジニアは別。

■クロスカバレッジコーディネータ
  • 組織を俯瞰(カバレッジ)して、全体最適でツールの配置を考える人
  • テストコードを書く人だけじゃなくて、いろんなロールがあること認識してもらうの重要。
  • テスト自動化にかかる60%が、テスト自動化の設計。スクリプティングは10%で少ない。

■ファジング ファザー
  • 不正系、異常系のテストは値を無限に作れる。
  • テストデータを生成して食わして結果を見て、を繰り返す。
  • クラッシュした時に、どのテストデータでクラッシュしたのかわかるようにすることが大事。

■前の版と比較する
  • なにかと合ってるか合ってないか、だけ判断できる。
  • 一度正しいと確定した結果は、次それと比較して同じなら正しいと判定する。
  • テストが増えると、分析時間も伸びる。これはよろしくない。スケールしない。
  • 結果を分析するシステムも一緒に考えないとうまくいかない。

■可変遅延
  • 待ちが必要な場合,待ち時間は可変にする。
  • 非同期UIのテストは、どんどん重要になっている
  • twitterは非同期でツイートをとってTLに表示する。ネットワークによって状況が変わる。
  • 2秒以内にこのUIがアップしてくること、みたいなテストをやる。
  • 非同期テストにはパフォーマンステストが入ってくる。

■DJR
  • テストフレームワークを作る人に参考にしてもらう

■Red Magician(赤魔導師)
  • テスト設計も自動化もできる人

★感想:
去年も素晴らしかったが、今年も大変有意義なセッションが揃っていて、すげー勉強になった。
あと、スタッフさんのサポートが手厚くて素晴らしい。
2Fの受付とかエレベータ当番とか、発表が聞けないにもかかわらず、手厚くサポートしていただいて本当に感謝。


求む英雄。

関係者の皆様、ありがとうございました。
スポンサーサイト

認定スクラムマスター研修(CSM)を振り返る

2014/11/5(水)~11/7(金)に認定スクラムマスター研修(CSM)を受けてきました。

2014/11/05-07 認定スクラムマスター研修 in 東京 〜基礎から応用へ〜

受講してから今日でちょうど1ヶ月が経つんですが、研修最終日に自分に約束した通り、今このブログ書いてます。
というのもCSM研修の最終日の最後、受講者でペアを作ってBuddy(相棒)を決める、という儀式があるんです。
んで1週間後と1か月後にBuddy(相棒)と連絡を取り合い、自分が宣言したアクションを確認し合うというルールになっているのです。
今日はちょうど、その1か月後の日なんですよね~。
そんなわけで今頃書いているのである。(まぁちょうどいい復習にもなるし)


■1.受講の経緯
私、自社のアジャイル開発の標準を決めたり、ガイド作ったり、適用推進したりする部署にいます。
そんなわけで、この研修、前々から興味あったんですよね~。
あと、アジャイル系のコミュニティの影響も大きかったです。アジャイルサムライ横浜道場とか。

んで、なんとか会社のお金で受講させてもらえるよう、上長にも何回かお願いしていたのですが、部署の予算の都合上、なかなかOKが出ない状況でした。(20~30万円かかるもんね・・・)

そんなある日、某銀行さんを担当するプロジェクトのSEからウチに声がかかって、打ち合わせをすることになりました。
そこでそのSEから、「アジャイル開発の適用支援をお願いしたい。スクラムマスターとしてしばらくPJに入って欲しい」という話が出たのです。
「この状況、ヤバくね・・?」と驚愕しつつ、このピンチをCSM研修受講の説得に繋げるチャンス!と捉え、上長を再説得することにしたのです。
私がこの研修を受講することでどれだけ会社に寄与できるかをアピールするために、A4用紙1枚で説得資料を作成して、部長に説明したりもしました。そしてその結果・・・


遂に成就!なんとか受講まで辿り着きました~


■2.認定スクラムマスター研修(CSM)の内容

■2-1. 日程
受講したのは2014/11/5(水)~11/7(金)の3日間でした。
2014/11/05-07 認定スクラムマスター研修 in 東京 〜基礎から応用へ〜

今回の参加者は14名でした。
SCM研修は2日間のコースと3日間のコースの2パターンありますが、私は絶対、3日間コースをオススメします。
というのも、2日間であの研修の濃さは出せないと思ったからです。
3日間コースのほうが高価ですが、もし会社が費用を負担してくれるなら、迷わず3日間コースを受講すべし!

■2-2. 講師
講師は唯一の日本人の認定スクラムトレーナー(CST)である 江端一将氏(ebacky)です。
江端さんは以前、アジャイルサムライ横浜道場の特別編にも講師として来てくださったことがあります。
そんとき私が書いたブログはこちら。

横浜道場 特別編 「Challenge our Product Development's Assumption Change! ~ adapt PDAC to PDCA ~」に参加しました

江端さんの実力はこのワークショップでも実感していたので、今回のCSM研修もとても楽しみでした。

■2-3.研修内容
3日間、9時から19時くらいまで、ひたすらScrumについてチームで考え、ディスカッションし、OUTPUTします。
その中からいくつかピックアップしてみる。

(1) Working Agreement
近々、Scrumにも正式にルールとして入ってくる可能性があると言われている、現在ホットな話題の成果物です。
20141105_scm4.jpg
チームのルールを明文化するイメージですね。
今回の研修では、参加者全員で最初にまず作成し、3日間の中で適宜見直していく運用としました。
Working Agreementを作成する時の注意事項として以下があるようです。
  • アクションに繋がらないスローガンのようなものはダメ。(例:相手を尊重する、等)
  • ルールは具体的に、判断できるようなものを目指す。計測できることが望ましい。
  • ルールを決めるためのルール、ルールを変更するためのルールを決めることが大事。


(2) Scrumの概要
「Scrumとは何か?」を一文で表現し、「Scrumのルール」(約20個)をOUTPUTする課題をチームでやりました。
20141105_scm1.jpg

Scrumには19個のルールがあるとのこと。

■ Scrumの3本の柱
【01】 1.検証
【02】 2.適応
【03】 3.透明性

■Scrumのルールの3本柱
【04】 1.役割(プロダクトオーナー、スクラムマスター、開発チーム)
【05】 2.セレモニー
【06】 3.アーティファクト

■5つのセレモニー
【07】 1.スプリントプランニング
【08】 2.スプリントレトロスペクティブ
【09】 3.プロダクトバックログリファインメント
【10】 4.デイリースクラム
【11】 5.スプリントレビュー

■3つのアーティファクト
【12】 1.プロダクトバックログ
【13】 2.スプリントバックログ
【14】 3.Impediment List (障害リスト)

■その他のルール
【15】 1.スプリントストップ
【16】 2.スプリント
【17】 3.プロダクト
【18】 4.Acceptance Criteria (受け入れ基準)
【19】 5.Done


(3) Scrumの3つの役割(プロダクトオーナー、スクラムマスター、開発チーム)の探求
19個のルールのうち、「役割」にフォーカスして、チームで纏めていきました。
20141105_scm2.jpg


(4) 5つのセレモニーの探求
5つのセレモニーについて探求していきます。↓は「スプリントプランニング」の一例。
20141105_scm3.jpg

ってな感じで3日間、毎日19時くらいまで、ひたすらScrumについて考える時間を過ごしました。
上に上げたのは極々一部のみに過ぎず、他にもひたすらScrumについて考えを深めるワークショップが続きます。


■2-4.研修を振り返って
まずこの研修の素晴らしい点として、チームで考えディスカッションする時間、成果物を作成する時間、講師からの解説の時間、質疑応答の時間がキッチリ確保されており、徹底的に理解を深めていくスタンスとなっている点が挙げられます。
このクオリティを享受するためにも、もし受講を考えている方は2日間コースじゃなく3日間コースをオススメします。
江端さんも、2日間コースはかなり駆け足ぎみになってしまう、とおっしゃってましたし。

あと教材ですが、講師の江端さんはパワーポイントや紙の資料を一切使いません。
ホワイトボード、模造紙、付箋といったアナログなアイテムだけを使い、ひたすら頭を使って考える時間を提供してくれます。
おかげで、個人的に持ってったノート、3日間のメモで1冊丸々書き潰しました。
このノートは私が3日間で学んだことがギッシリ書き留められており、研修が終わってからも復習のために活用してます。


■2-5.研修後のイベント
この研修の神槌は、3日間のカリキュラムのみにあらず。

(1) Buddy制度
上でもチラッと書きましたが、最終日の一番最後にBuddy(相棒)を決め、2人で誓いの儀式を行います。
そして1週間後、1か月後に対するアクションを自分で決め、そのタイミングでBuddyに連絡を取り合うことになってます。
私はアクションの1つに、CSM研修のブログを書くことを挙げたので、1ヶ月が経過したちょうど今日、コレ書いてますw
(研修の中身をブログに書いていいかどうか江端さんに確認したところ、全然問題ないとのことでした)
ちなみに1週間目は、Buddyの方から私にメールが来て、私が返信する形となりました。今回はこっちから連絡したいな。

(2) CSM・CSPOの集い
3日目の研修終了後、受講者や講師の江端さんらも参加して、近くで飲み会をやりました。

第14回 CSM・CSPOの集い
http://kokucheese.com/event/cancel/230977/

この飲み会、今回の関係者だけでなく、過去のCSM研修の参加者とかも多数参加されます。
某氏曰く、Scrumについて本音を語りあうこの飲み会にこそ意義がある、とのことです。
というわけでもちろん参加して、終電近くまで皆さんと飲んで語って、楽しく過ごしました。
前回9月のCSM研修の方とかも、Buddyと一緒に参加されたりしてました。こーゆう関係が続くの、いいですね~

(3) 研修まとめ資料
研修で作成した模造紙などはすべて講師陣が写真を取り、研修後に復習できるよう、PDFに纏めて送ってくれます。
このPDF、全部で182ページもあって、サイズも100MB以上あります(笑)
あと写真だけじゃなく、この研修で学んだことが整理されたScrum説明資料になってます。
これは大変ありがたいですね~

あと、最終日に撮った集合写真なんかも送られてきます。
みんな笑顔で、とても良い記念写真になりました。

■2-6.認定スクラムマスター資格の取得
研修が終了してScrum Allianceに登録されると、オンライン認定試験の案内がメールで来ます。
この試験に合格すると、めでたくスクラムマスターとして認定されます。
問題数は35問で、すべて4択でした。
私はというと、35問中33問正解で、無事合格することができました。




★感想:
資格が取れるうんぬんはさておき、この研修自体の内容は大変素晴らしいものがある。
3日間、とても楽しく有意義な時間を過ごすことができました。
あと、スクラムマスターという資格もいちおう貰えたので、ちょと自信にもなりますね。
自分への覚悟を促す、という一面もあると思ってます。
(今後、某銀行PJにスクラムマスターとして放り込まれた時とかの覚悟・・・)

ただ、この資格を活かすも殺すも、これからの自分次第だと思ってます。
研修で学んだことを自分が腑に落ちるまで消化して、自分の言葉で説明したりアクションに移せることが重要。

講師の江端さんをはじめodd-e Japanの皆さん、参加者の皆さん、受講を認めてくれた上長陣、みなさまありがとーございました!

FC2Ad