Your SlideShare is downloading. ×
自動化パタンランゲージ
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

自動化パタンランゲージ

4,562
views

Published on

Asian Automation Alliance の発表資料です。 …

Asian Automation Alliance の発表資料です。
http://kokucheese.com/event/index/160374/

Published in: Engineering

0 Comments
16 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
4,562
On Slideshare
0
From Embeds
0
Number of Embeds
12
Actions
Shares
0
Downloads
16
Comments
0
Likes
16
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. テスト自動化の パタンランゲージ 関西検証コレクション(#検これ) 前川 博志(@Posaune)
  • 2. 自己紹介 •まえかわ ひろし a.k.a @Posaune •#京アジャ •#検これ •なんにでも興味を持つ雑食系エンジニア • 器用貧乏っていうな •MS MVP for Visual Studio ALM • Visual Studioで作ってJenkinsでビルド するというALM
  • 3. 発表諸元 •テスト自動化パタンランゲージの狙い •上空5000メートルからの眺め •地上からの眺め •むすび 2014/6/28 Asian Automation Aliance
  • 4. テスト自動化 パタンランゲージの狙い 2014/6/28 Asian Automation Aliance
  • 5. テスト自動化取組みの現状 (#検これ 調べ) •まだまだ導入初期 •(少なくとも関西では) •討死事例も多い気がする •しかもなんか似たような事例多い •結局「組織が対応できてない」みたいな 飲み会のグチみたいな話で終わりがち 2014/6/28 Asian Automation Aliance
  • 6. なんだか残念な感じ 2014/6/28 Asian Automation Aliance
  • 7. ・・・というわけで •テスト自動化に取り組んでいる人たちの 経験をアクセスしやすい形で公開しよう •現状の問題がなぜ発生しているのかを 理解し、それを解決しうる策を提供する •関連する問題を明示し、周囲に潜む問題 への気づきを与える パターンランゲージのフォーマットがよさげ!
  • 8. パタンランゲージの 構成要素 •コンテキスト •問題の背景となっている事情 •問題 •フォース •問題を発生させる要因となる外部からの力 •解決 •問題の解決策 •結果 •解決策を取った後に見込まれる結果 2014/6/28 Asian Automation Aliance
  • 9. 自動化パタンランゲージの 一例 ~ダッシュボード~ 2014/6/28 Asian Automation Aliance •文脈: [3分クッキング]により自動化 そのものを取り入れることはできた。 •問題:テスト結果を適切に分析し、 活用することができていない。 •フォース:多くの情報を解釈するには 担当者のリソースが必要。 •解決:目的をもった結果レポートを出力 するようにする。 •結果:メトリクスを[テスト仕分け]など 自動化システムの改良に活用できる。
  • 10. それでは、実際にパタンラン ゲージを見てみましょう 2014/6/28 Asian Automation Aliance
  • 11. 上空5000メートル からの眺め 2014/6/28 Asian Automation Aliance
  • 12. どどん!! 2014/6/28 Asian Automation Aliance 導入のパターン 初期実装のパターン 普及・もしくは 終焉 グッドパターン アンチパターン
  • 13. ・・・ これだけじゃわかりませんよね。 2014/6/28 Asian Automation Aliance
  • 14. 地上からの眺め とあるオートメータの記録風に
  • 15. 三浦さん(仮名)は 悩んでいた・・・
  • 16. 三浦さんの悩み •なんでエンジニアが、こんなだれでもで きるような作業をやらんといかんのや… •そもそもちょっと手順が違うだけでほと んど同じ作業の繰り返しやないか… •こんなもん、ミスなくやれっちゅーほう が難しいて… •あぁ、だからダブルチェックすんのか…
  • 17. あー!! もうやってられん!!! 誰か、なんとかしてくれー!! 2014/6/28 Asian Automation Aliance
  • 18. まずは問題意識から ~求む!英雄~ •自動化の必要性を、きちんと意識する、 というパターン •これ無しに自動化するとヒドイ目に会う 可能性が高い •すべての起点にあたるパターン
  • 19. 2014/6/28 Asian Automation Aliance
  • 20. そんなとき、三浦さんの前に あるものが… •ん?なんやこれ? “SisutemuTesutoJikkou.bat”? ちょっと実行してみよか・・・ •うおお!なんかシステム勝手に立ち上 がっていろんな判定はじめよったぞ? •なんかレポートも出とる! 2014/6/28 Asian Automation Aliance
  • 21. こ・・・ これはお宝やないか!? 2014/6/28 Asian Automation Aliance
  • 22. 過去の遺産の発掘 ~インディージョーンズ~ •先人が残した自動化の資産を発掘し、 うまく活用するパターン •オーパーツと化しているので、扱いに注 意しないと・・・
  • 23. 2014/6/28 Asian Automation Aliance
  • 24. そしてお宝を発見した 三浦さんは・・・ •うおー、これも、これも、つかえるや ないか!! •自分でも、なんとか追加していけそうや ぞ、例えばここをこう変えれば、別のも テストできそうや! •よし、このバッチをコピペして、テスト を大量生産や~!! 2014/6/28 Asian Automation Aliance
  • 25. うおー!! テンション上がってきたで~!! 2014/6/28 Asian Automation Aliance
  • 26. そろそろやばいぞ ~自動化ハイ~ •自動化することそのものが目的になり、 突っ走ってしまっているパターン •ここから建て増し旅館を建築する例が 多い
  • 27. 2014/6/28 Asian Automation Aliance
  • 28. さて、時は少し流れ… •よっしゃ、かなりのテストを自動化 できてきたで~… •「三浦さん、このテストとあのテスト、 また落ちてるんですけど」 •あぁ、それはそういうもんなんや、タイ ミングで時々動かへんねん、ほっとき •「は~い(もうこのテストはまじめに結 果みなくてよさそうだな・・・)」 2014/6/28 Asian Automation Aliance
  • 29. 「ま、最後にちょろっと 念為でテスト通せばいいか…」 2014/6/28 Asian Automation Aliance
  • 30. もはやテストじゃない ~験担ぎ~ •自動テストがただの儀式になって しまっているアンチパターン。例えば… •複雑すぎてFragileなテストなので時々失敗し てしまう •自動テストのメンテナンスが職人作業になり落 ちても誰も触れない
  • 31. もう少し時は流れ・・・ •「おい、三浦君、最近しょうもない不具合 が多いよ?どうなってるの?」 •え?あれ?そのテストはちゃんと自動で… •「いやあのテストはほとんど走らせてませ んよ、最後に一度通せばOKかなって」 •えええ!?あかんやん!そんなん! •「だってうまくいくかどうかわからんテス トとかやってられませんよ」 2014/6/28 Asian Automation Aliance
  • 32. 『やっぱ、人間の手と目で 確認しないとダメだね 』 2014/6/28 Asian Automation Aliance
  • 33. 自動化の終焉 ~原住民蜂起~ •自動化による効果を感じてもらえず、 取り組みにいったんピリオドが打たれる アンチパターン •さようなら・・・みうらさん・・・
  • 34. 2014/6/28 Asian Automation Aliance
  • 35. 失意の三浦さん・・・ •なんでや、なんで元通りになってしまっ たんや・・・ •思えば、テンション上がって勝手に突っ 走ったのはまずかったんやな。。。 •もっと、システム全体を見て、効果的な 自動化をするべきやった。。。 •次こそは、次こそは・・・ 2014/6/28 Asian Automation Aliance
  • 36. 2014/6/28 Asian Automation Aliance
  • 37. 2014/6/28 Asian Automation Aliance
  • 38. 失敗を糧にすべし ~強くてニューゲーム~ •自動化失敗の原因を冷静に分析し、 次の取り組みに活かすパターン •次は本物の「英雄」になれるかも!?
  • 39. 生まれ変わった 三浦さんは… •よっしゃ、ガンガン自動化したるで~… いや、あかんあかん! •実装を進める前に、まずシステム全体を 見とかんとな! •その上で、どこが「自動化が効く」とこ ろなのか判断しよ! 2014/6/28 Asian Automation Aliance
  • 40. 全体像を描く & まずは“効く“ところから 2014/6/28 Asian Automation Aliance •自動化ハイをぐっとこらえ・・・
  • 41. 生まれ変わった 三浦さんは・・・ •テストがちょっと不安定になってきとる な… •うお!?このコードはあかんやろ、修正 しとかなあかんな・・・ •あと、要らんテストも多いな。これも 仕分けしとかな。 2014/6/28 Asian Automation Aliance
  • 42. ヤブ医者とブラックジャック & テスト仕分け •アンチパターンへのカウンターを打ち… 2014/6/28 Asian Automation Aliance
  • 43. 生まれ変わった 三浦さんは・・・ •人がやるテスト、大分減ってきたな。。。 •んじゃあテスターさんにはもっと探索的な テストをやってもらお! •うお!思ってもみなかった不具合でたで! さすがプロやな~ •テストは大分自動化したで。もうどんなテ ストでも5分ででける! •…けど、結局環境構築大変やんな・・・ •これも自動化せなな!ん?Chefってのがあ るんか? 2014/6/28 Asian Automation Aliance
  • 44. もっと、人間らしく & テストだけとか勿体無い 2014/6/28 Asian Automation Aliance •「文明の曙」へ向けて、三浦さんの 自動化の旅は続く・・・
  • 45. むすび 2014/6/28 Asian Automation Aliance
  • 46. 自動化パタンランゲージ •自動化だけなら長い歴史がある •失敗をもとに良いソリューションができてき ている •ソフトの自動化ははじまったばかり •三浦さん(仮名)のように、一度討死す るのもいいかもしれないけれど・・・ •パターンをベースに良いソリューション をショートカットできるのでは! 2014/6/28 Asian Automation Aliance
  • 47. パタン言語は Githubにて公開中!! •https://github.com/KenColle/Automa tionPatternLanguage •Issue / Pull Request 大歓迎! •ぜひ皆さんの自働化体験談をパターンに しましょう!
  • 48. 文明の曙を目指して、 Enjoy Automation !! 2014/6/28 Asian Automation Aliance
  • 49. 未 完 自 動 化 坂 を よ …

×