SlideShare ist ein Scribd-Unternehmen logo
1 von 29
Downloaden Sie, um offline zu lesen
SEPLANNING.CO
STAR : SOFTWARE TEST AUTOMATION RESEARCH
GROUP.JP
SHINATESU : SHINAGAWA TESTING TEAM
JASST’14 TOHOKU
SATSUKI URAYAMA : MAY PRESENTS
AUTOMATOR 2
M A NAGEME NT D AY S
浦山 さつき
(株)エスイープランニング テストエンジニア
テスト自動化研究会(STAR) コミッター
しなてす
岩手県盛岡市出身
[最近の嬉しかったこと]
東京で「プチよ市」が開催されること
[最近の悲しかったこと]
「へっちょこだんご」が通じなかったこと
&会場に「よ市」が通じなかったこと
M
はじめに
予稿集について
 本発表の参考資料あり、発表時のスライドと内容が異なります
 テスト自動化チームの人数は新規開発時のものであり、保守の段階
の自動化チームは最終的に2人まで減りました
キャプチャ&リプレイツールを使用して画面を操作する
テストの実行を自動化していました
本資料は当日の会場の声を受けて、一部に修正を加えて
いますm(_ _)m
M
MAINTENA
NCE
保守
48%
10%
16%
8%
18%
近々自動化しようと検討し
ている
自動化しようとしたが障壁
があったため断念している
自動化したテストに問題が
出ている
自動化したテストが上手く
いっている
自動化しようとは現時点で
考えていない
TEST
Automation?
傾向
JaSST’14 Tohoku 参加者アンケートより
会場内で自動化し
たことのある人の
うち、約65%の人
が自動化後に問題
を抱えている
Q.テストを自動化していますか?
保守性
• 修正のしやすさに関するソフトウェア製品の能力
(JIS X 0129:2003)
解析性
変更性
安定性
試験性
保守性標準適合性
これを満たすような自動テストってどんなもの?
自身が経験した事例の中から
5年間保守し続けた自動テストを紹介
M
CASE
STUDY
事例
テスト対象システムのライフサイクル
①199X年
新規開発
⑤サービス終了
②設計
影響調査
③修正の実施
④テスト
⑥201X年
システム刷新
サービス追加要件
リリース
3か月毎
自動テストのライフサイクル
①2005年
新規開発
⑤不要な
テストの除外
②影響調査
③修正の実施
④試行
⑥2011年
テスト自動化
システム刷新
サービス追加要件
テスト実施
及び
リリース判定
3か月毎
レベル
受入れテスト
システムテスト
統合テスト
単体テスト
タイプ
機能テスト
ユースケース
テスト
回帰テスト
etc…
システムテスト
回帰テスト
レベル
受入れテスト
システムテスト
統合テスト
単体テスト
タイプ
機能テスト
ユースケース
テスト
回帰テスト
etc…修正できる
期間が短い
テスト対象に
バグが入り込みやすい修正する
期間がとれる
テスト対象の
バグが発生し
にくい
システムテスト
回帰テスト保守工数
UP
保守工数
UP
自動化のバグ?
テスト対象のバグ?
切り分けが必要
自動化したテストの
テストがしやすい
1.Aさんが新規契約。支払は口座振替。
プラン1、プラン2、割引1、割引2を適用。
2.Aさんのプラン1を廃止する変更登録。
3.Bさんが新規契約。プラン1と割引1を適用。使用料はAさんが一括で支払
う。
4.Aさんの支払いをクレジットカード払いに変更登録。
5.Aさんの契約を解除する。
回帰テストの一例
A
B
プラン1
プラン2
割引1
割引2
口振
プラン1
割引1
CR
A一括請求書
1.Aさんが新規契約。支払は口座振替。
プラン1、プラン2、割引1、割引2を適用。
2.Aさんのプラン1を廃止する変更登録。
3.Bさんが新規契約。プラン1と割引1を適用。使用料はAさんが一括で支払
う。
4.Aさんの支払いをクレジットカード払いに変更登録。
5.Aさんの契約を解除する。
回帰テストの一例
種別 顧客 支払 プラン1 プラン2 割引1 割引2
新規 A 口振 付 付 付 付
変更 A 廃 廃
新規 B 一括(親A) 付 付
変更 A CR 廃 付 廃 付
解約 A
種別 新規契約
変更
利用停止
解約
変更取消
操作内容の細分化
支払方法を設定する
プランを外す
割引を付ける
割引を外す
プランを付ける
新規契約
変更
変更取消
利用停止
解約
登録種別を選択する
種別 新規契約
変更
利用停止
解約
変更取消
完成したテスト自動化フレームワーク
操作順 操作画面 値
1 ユーザーID入力 ABC
2 検索
Class サービス設定画面
Function ユーザー名(Name)
TextBox(“UserName”).Type Name
Function ログイン
Button(“Login”).Click
Class 検索画面
Function ユーザーID入力(id)
TextBox(“UserId”).type id
Function 検索
Button(“Serch”).Click
パラメタ
なにを順番どこに どうする
スクリプトスクリプトスクリプト
操作順の変更操作対象の変更 設定値の変更
パラメタ
なにを順番どこに どうする
スクリプトスクリプトスクリプト
完成したテスト自動化フレームワーク
変更箇所が
見つけやすい
自動テストの保守作業
②影響調査
③修正の実施
④試行
サービス追加要件
テスト実施
及び
リリース判定
3か月毎
②影響調査 - 1
既存のテスト内容に影
響する要件がないか調
査する。
機能仕様書や画面仕様
書を以下の観点で調査
する。
 オペレーションの追加や
変更があるか
 必ず確認しなければなら
ないサービスや付与しな
ければならないサービス
の追加や変更があるか
②影響調査
③修正の実施
④試行
サービス追加要件
テスト実施
及び
リリース判定
1か月
②影響調査 - 2
影響箇所と規模を見積
もる。
スクリプトは、追加さ
れるオブジェクトの種
類や数により工数を見
積もる。
パラメタ調査ツールを
使用し、既存パラメタ
に変更対象の箇所がど
れくらいあるか調査す
る。
②影響調査
③修正の実施
④試行
サービス追加要件
テスト実施
及び
リリース判定
1か月
③修正の実施 ‐ 1
スクリプトを修正する
新しいボタンや画面が
追加された場合、スク
リプトを追加する。
パラメタを修正する
一括置換ツールを使用
し、変更箇所を一括で
置き換える。
②影響調査
③修正の実施
④試行
サービス追加要件
テスト実施
及び
リリース判定
1か月
④試行 ‐ 1
環境を構築する
環境作成ツールを使用
し、テスト環境を用意
する。
修正に誤りや漏れがな
いか確認する。
修正したテストを抜粋
し、試験管理ツールを
使用して実行をコント
ロールする。
②影響調査
③修正の実施
④試行
サービス追加要件
テスト実施
及び
リリース判定
2週間
④試行 ‐ 2
結果取得ツールを使用
し、OK/NGを一覧で取
得する。
NGの場合、自動化の
バグかテスト対象のバ
グかを切り分けるた
め、ログを確認する。
自動化のバグがなくな
れば完了。
②影響調査
③修正の実施
④試行
サービス追加要件
テスト実施
及び
リリース判定
2週間
②影響調査
③修正の実施
④試行
サービス追加要件
テスト実施
及び
リリース判定
パラメタ調査ツール
試験管理ツール
環境作成ツール
一括置換ツール
結果取得ツール
変更による間違いが
起きにくい
SUMMARY
まとめ
変更による間違いが
起きにくい
変更箇所が
見つけやすい
自動化したテストの
テストがしやすい
試験性
解析性
安定性
自動化のスコープを
定める
自動テストを
構造化する
ツールを活用する
生み出した自動テストが
長生きできる仕組みを作ろう
M
I’LL BE BACK
 JIS X 0129:2003
 JIS X 0161:2008
 ISO/IEC 9126-1
 『ソフトウェア工学のすすめ』玉置彰宏
http://www.tamakiseoffice.jp/software_engineering/Chap_3
3.pdf
 TABOK(Test Automation Body Of Knowledge)
 Terminator Real NFI
http://www.dafont.com/terminator-real-nfi.font
PRESENTED BY
SATSUKI URAYAMA

Weitere ähnliche Inhalte

Was ist angesagt?

価値あるシステムテスト自動化の実現By friendly
価値あるシステムテスト自動化の実現By friendly価値あるシステムテスト自動化の実現By friendly
価値あるシステムテスト自動化の実現By friendly
Tatsuya Ishikawa
 

Was ist angesagt? (20)

20150418 システムテスト自動化 第二章
20150418 システムテスト自動化 第二章20150418 システムテスト自動化 第二章
20150418 システムテスト自動化 第二章
 
ディープラーニングとAppiumでテストを自動化
ディープラーニングとAppiumでテストを自動化ディープラーニングとAppiumでテストを自動化
ディープラーニングとAppiumでテストを自動化
 
機械学習を活用したテスト自動化システムの設計
機械学習を活用したテスト自動化システムの設計機械学習を活用したテスト自動化システムの設計
機械学習を活用したテスト自動化システムの設計
 
Stac2013 開会挨拶
Stac2013 開会挨拶Stac2013 開会挨拶
Stac2013 開会挨拶
 
Stac2014 石川
Stac2014 石川Stac2014 石川
Stac2014 石川
 
もしAppiumとディープラーニングを組み合わせたら
もしAppiumとディープラーニングを組み合わせたらもしAppiumとディープラーニングを組み合わせたら
もしAppiumとディープラーニングを組み合わせたら
 
完全版:「UI自動テストツールとAI」〜AIを使った自動テストの「今」と「未来」〜
完全版:「UI自動テストツールとAI」〜AIを使った自動テストの「今」と「未来」〜完全版:「UI自動テストツールとAI」〜AIを使った自動テストの「今」と「未来」〜
完全版:「UI自動テストツールとAI」〜AIを使った自動テストの「今」と「未来」〜
 
実践で学ぶ、効率的な自動テストスクリプトのメンテナンス
実践で学ぶ、効率的な自動テストスクリプトのメンテナンス実践で学ぶ、効率的な自動テストスクリプトのメンテナンス
実践で学ぶ、効率的な自動テストスクリプトのメンテナンス
 
SeleniumE2Eテストフレームワークを使用したテスト自動化事例 #Seleniumjp
SeleniumE2Eテストフレームワークを使用したテスト自動化事例 #SeleniumjpSeleniumE2Eテストフレームワークを使用したテスト自動化事例 #Seleniumjp
SeleniumE2Eテストフレームワークを使用したテスト自動化事例 #Seleniumjp
 
スマートフォンアプリの テスト自動化をはじめよう
スマートフォンアプリの テスト自動化をはじめようスマートフォンアプリの テスト自動化をはじめよう
スマートフォンアプリの テスト自動化をはじめよう
 
WebサイトもモバイルアプリもMagic Podで自動化
WebサイトもモバイルアプリもMagic Podで自動化WebサイトもモバイルアプリもMagic Podで自動化
WebサイトもモバイルアプリもMagic Podで自動化
 
自動化パタンランゲージ
自動化パタンランゲージ自動化パタンランゲージ
自動化パタンランゲージ
 
Stack2017 自動化困難な状況での活動方法
Stack2017 自動化困難な状況での活動方法Stack2017 自動化困難な状況での活動方法
Stack2017 自動化困難な状況での活動方法
 
Automation test.ssf alpha
Automation test.ssf alphaAutomation test.ssf alpha
Automation test.ssf alpha
 
SeleniumConf16 UK参加報告
SeleniumConf16 UK参加報告SeleniumConf16 UK参加報告
SeleniumConf16 UK参加報告
 
Ai for software testing
Ai for software testingAi for software testing
Ai for software testing
 
価値あるシステムテスト自動化の実現By friendly
価値あるシステムテスト自動化の実現By friendly価値あるシステムテスト自動化の実現By friendly
価値あるシステムテスト自動化の実現By friendly
 
【SQiP2014】システム操作インターフェイス最適化によるテスト自動化ROI向上
【SQiP2014】システム操作インターフェイス最適化によるテスト自動化ROI向上【SQiP2014】システム操作インターフェイス最適化によるテスト自動化ROI向上
【SQiP2014】システム操作インターフェイス最適化によるテスト自動化ROI向上
 
手動テストからの移行大作戦
手動テストからの移行大作戦手動テストからの移行大作戦
手動テストからの移行大作戦
 
テスト自動化のパタンランゲージ@Agilet Tour Osaka
テスト自動化のパタンランゲージ@Agilet Tour Osakaテスト自動化のパタンランゲージ@Agilet Tour Osaka
テスト自動化のパタンランゲージ@Agilet Tour Osaka
 

Andere mochten auch

JaSST'13Tohoku LT The Automator
JaSST'13Tohoku LT The AutomatorJaSST'13Tohoku LT The Automator
JaSST'13Tohoku LT The Automator
Satsuki Urayama
 
#STAC2014 システムテスト自動化ハンズオン
#STAC2014 システムテスト自動化ハンズオン#STAC2014 システムテスト自動化ハンズオン
#STAC2014 システムテスト自動化ハンズオン
kyon mm
 

Andere mochten auch (14)

JaSST'13Tohoku LT The Automator
JaSST'13Tohoku LT The AutomatorJaSST'13Tohoku LT The Automator
JaSST'13Tohoku LT The Automator
 
異業種でのテスト自動化の実際
異業種でのテスト自動化の実際異業種でのテスト自動化の実際
異業種でのテスト自動化の実際
 
自動テスト知識体系TABOKのご紹介
自動テスト知識体系TABOKのご紹介自動テスト知識体系TABOKのご紹介
自動テスト知識体系TABOKのご紹介
 
ノンプログラマのためのSelenium de DDTはじめの一歩
ノンプログラマのためのSelenium de DDTはじめの一歩ノンプログラマのためのSelenium de DDTはじめの一歩
ノンプログラマのためのSelenium de DDTはじめの一歩
 
20131201 テスト自動化カンファレンスLT「激しいUI変更との戦い」
20131201 テスト自動化カンファレンスLT「激しいUI変更との戦い」20131201 テスト自動化カンファレンスLT「激しいUI変更との戦い」
20131201 テスト自動化カンファレンスLT「激しいUI変更との戦い」
 
#STAC2014 システムテスト自動化ハンズオン
#STAC2014 システムテスト自動化ハンズオン#STAC2014 システムテスト自動化ハンズオン
#STAC2014 システムテスト自動化ハンズオン
 
#STAC2014 状態遷移を活用した自動テストのテスト戦略とデプロイメントパイプライン
#STAC2014 状態遷移を活用した自動テストのテスト戦略とデプロイメントパイプライン#STAC2014 状態遷移を活用した自動テストのテスト戦略とデプロイメントパイプライン
#STAC2014 状態遷移を活用した自動テストのテスト戦略とデプロイメントパイプライン
 
テスト自動化のこれまでとこれから
テスト自動化のこれまでとこれからテスト自動化のこれまでとこれから
テスト自動化のこれまでとこれから
 
「自動家(オートメータ)をつくる」-システムテスト自動化カンファレンス2014 「.reviewrc」枠発表-
「自動家(オートメータ)をつくる」-システムテスト自動化カンファレンス2014 「.reviewrc」枠発表-「自動家(オートメータ)をつくる」-システムテスト自動化カンファレンス2014 「.reviewrc」枠発表-
「自動家(オートメータ)をつくる」-システムテスト自動化カンファレンス2014 「.reviewrc」枠発表-
 
ビルドプロセスとCI #STAC2014
ビルドプロセスとCI #STAC2014ビルドプロセスとCI #STAC2014
ビルドプロセスとCI #STAC2014
 
事例から見るテスト自動化のポイント
事例から見るテスト自動化のポイント事例から見るテスト自動化のポイント
事例から見るテスト自動化のポイント
 
組み込み開発でのシステムテスト自動化の一つの考え方(STAC)
組み込み開発でのシステムテスト自動化の一つの考え方(STAC)組み込み開発でのシステムテスト自動化の一つの考え方(STAC)
組み込み開発でのシステムテスト自動化の一つの考え方(STAC)
 
GUI自動テストの保守性を高めるには
GUI自動テストの保守性を高めるにはGUI自動テストの保守性を高めるには
GUI自動テストの保守性を高めるには
 
モデルベースドテスト入門 -テスト詳細設計を自動化しよう- #stac2013
モデルベースドテスト入門 -テスト詳細設計を自動化しよう- #stac2013モデルベースドテスト入門 -テスト詳細設計を自動化しよう- #stac2013
モデルベースドテスト入門 -テスト詳細設計を自動化しよう- #stac2013
 

Jasst14東北 事例発表 share