Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Gaugeによるe2eテスト
Search
takayuki-hayashi
January 10, 2018
5
28k
Gaugeによるe2eテスト
システムテスト自動化カンファレンス2017-2
https://testautomationresearch.connpass.com/event/71564/
のLTで発表した時の資料です。
takayuki-hayashi
January 10, 2018
Tweet
Share
More Decks by takayuki-hayashi
See All by takayuki-hayashi
E2Eの過去・現在・未来 そしてE2Eにおいて重要なこと
takayukihayashi
1
470
いかにしてテスト文化を醸成させたか.pdf
takayukihayashi
3
1.5k
リーダー、マネージャーが存在しない開発組織のつくり方
takayukihayashi
1
28k
AngularDartでDart入門
takayukihayashi
1
930
E2Eテスト駆動開発実践記_-_Web用.pdf
takayukihayashi
2
3.4k
KubernetesとGaugeを活用したTDD開発事例
takayukihayashi
0
930
FlutterとAngularDartを DIとClean Architectureで いい感じにする
takayukihayashi
3
2.3k
Dartエコシステムの紹介
takayukihayashi
2
630
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
A Tale of Four Properties
chriscoyier
161
23k
Rails Girls Zürich Keynote
gr2m
95
14k
GraphQLとの向き合い方2022年版
quramy
49
14k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.6k
Writing Fast Ruby
sferik
629
62k
Balancing Empowerment & Direction
lara
5
700
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Building a Modern Day E-commerce SEO Strategy
aleyda
44
7.8k
A Modern Web Designer's Workflow
chriscoyier
697
190k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Making the Leap to Tech Lead
cromwellryan
135
9.6k
Transcript
Gaugeによるe2eテスト 林 尚之
自己紹介 • 林 尚之 twitter:@t_hyssh ◦ 所属:株式会社ユーザベース ▪ プログラマー &
SPEEDA開発責任者 ◦ XP(エクストリーム・プログラミング)、TDD、DDD
SPEEDAでは 「UAT(E2E)がほぼ唯一のドキュメントでありテストと して実行可能である」 という考えで開発を行っています
SPEEDA開発の流れ 対象ストーリーのピックアップ ストーリーに対するE2Eテスト (仕様、UAT)を記述 ユニットテストの記述 (XUnit系中心) 実装 ユニットテストをパス UATをパス 対象ストーリーをDone
全ての流れでエンジニアが関わる。 UAT作成 時にテストエンジニア、ドメインエキスパートとプ ログラマーがペアプロ
SPEEDA開発の流れ 対象ストーリーのピックアップ ストーリーに対するE2Eテスト (仕様、UAT)を記述 ユニットテストの記述 (XUnit系中心) 実装 ユニットテストをパス UATをパス 対象ストーリーをDone
テストエンジニア、ドメインエキスパート、プ ログラマー全てが関わる所なので下記が重 要 • ドキュメントとしての表現力 • プログラミングとしての表現力 • メンテナンス性、拡張性
今年前半までの取り組み(Scala + Specs2) • ヒアドキュメントと、各行に対して処理 を埋め込む事が可能 • ただし非プログラマーが見るには抵抗 がある。 •
テスト結果をHTMLとして出力可能だ がデフォルトだと表現が貧弱
悪くないし、Scala好きだけどドメインエキスパート、 テストエンジニアの事を考えるともっとドキュメントとし ての表現力が高いe2e環境が欲しい・・・
そんな時に、社内LTにてQAエンジニアがGaugeを 紹介。。。
LT後に興奮するSPEEDAエンジニア達。 Gaugeは正に求めていた物でした。
Gauge • https://getgauge.io/ • ThoughtWorksが開発(OSS GPL3.0) • Markdown形式で記述可能 • Markdownのドキュメント(spec)にはプログラムのソースが一切介在しな
い • リッチなレポートを出力可能 • 様々な言語でテストを記述することが可能(Java、C#、Ruby) ◦ SPEEDA開発ではKotlinで記述 • IDE機能が強力
Gauge ・対応するStep(次スライドにて 説明)が存在しない場合はコン パイルエラーにしてくれる。 ・コード補完も効く!
Gauge (Kotlin側) *アノテーションが Markdown(spec)側と対応 する。 実際はここにselenium等の処理を記述し てアサーションする (今回は省略・・・)
Gauge(出力レポート) 簡易な検索ボックス もある。
今の所いい感じで使えてます。 e2eのフレームワークを探しているのであれば一度 試して見る価値はあるかと。
ご清聴ありがとうございました。