やって分かった自動テスト
-
Upload
hirokazu-tokuno -
Category
Engineering
-
view
535 -
download
0
description
Transcript of やって分かった自動テスト
やって分かった自動テスト
自己紹介● 德納 弘和 (とくのう ひろかず)● 某社の工場のITシステム部門● 39才にして IT部門へ移動して4年目
– 遅れを取り戻すべく日夜勉強中● 少し覚えた言語
– VBA, SQL, JavaScript, Java, Perl, Shell...● コードを極力書かないのがお気に入り
– Pentaho ETL, Oracle APEX, Mojolicious
2013年の学びと挑戦● ユニケージ開発手法● Perl, Mojolicious● Jenkins● 自動テスト jUnit, Mockito, shUnit2● Twitter Bootstrap, Google Maps APIなど● 勉強会の楽しさ!
– エフスタ!– オープンデータカフェ会津– JAWS-UG会津
● CODE for AIZU参加
2014年の学びと挑戦● LODチャレンジ応募● Hack for Town in Aizu参加● Meteor(Node.js, MongoDB) on Nitrous.IO● GitHubデビュ〜● Amazon DynamoDB● DevLOVE大阪デビュ〜
はじめに
ここに述べられている見解は
執筆者個人の責任で発表するものであり、
所属する組織としての見解を
示すものではありません。
テストって
テストの作業データを用意
処理
結果を確認
結果を記録
条件を変更
頭を使わない単純作業
全然楽しく無い
テストの本質● 入力と出力の確認
入力 出力処理
テストの本質● 大きなシステムも入力と出力処理の固まり
入力
出力
処理 処理 処理
処理 処理 処理
処理 処理 処理 処理
インストールしないでJenkins
やった事 その1
● Shellで自動テスト● 定義ファイルを動的に変更
Windows PC
開発用DB
shUnit2 定義
Linux Server
やった事 その2
Selenium Grid
● この辺を使ってJavaでWebアプリをテスト
Selenium Grid
Windows PC
バージョン管理システム
Hub
Selenium Grid
Tomcat
Node Node
何処をテストする?
Database
Data Access Object
Service/Logic
(Web) Controller
Presentation (JSP)
Model
Controller
View
テストは簡単バグは少ない
テストは難しいバグは中程度
テストは簡単バグは多い
O/R Mapper
● Database~Serviceの一括テストが効果的か?
テストは簡単バグは多い
Projectによって大きく変わります
何処をテストする?
Database
Data Access Object
Service/Logic
(Web) Controller
Presentation (JSP)
Model
Controller
View
テストは簡単バグは少ない
テストは難しいバグは中程度
テストは簡単バグは多い
O/R Mapper
● Database~Serviceの一括テストが効果的か?
テストは簡単バグは多い
Projectによって大きく変わります
良い点● Excelの自動変換や見間違いによるバグの見逃しが無くなった
● 早い時期にテスト– バグが早く見つかる
● 早く終わるのでテストの実行回数が増える– バグが見つかりやすい
● テスト条件を増やすコストが低い– 条件を変えてのテストが増やしやすい
● 急いでいてもCoverageを下げない● テスト条件が明確
課題● 導入/教育コストが高い● 追加コーディングが必要● テスト修正コストが追加● レビューの為の書類との二重管理● Webのテストは遅い
自動化し過ぎない
まとめ● 繰り返して使う場合だけ自動化● 繰り返しても手の方が早いなら自動化しない● テスト専用のデータを用意する● 頻繁にテストする
安い物流が小売店を変えた様に安いテストが開発を変える
ご清聴ありがとうございました