Slide 20
Slide 20 text
© Kakaku.com Inc. All Rights Reserved.
ウェブ画面の
一般的な仕様テンプレート
下記3つを分けて管理できるように自動テストシステムのモジュールを整理
ウェブ画面一般的な操作ロジックは全画面で共有のものなので、
モジュールとして切り出すことで画面(要素)数に対してスケール
"都道府県入力欄": '//input[@name="pref"]'
"送信ボタン": '//button[text()="送信する"]'
"削除ボタン": '//button[text()="削除する"]'
静的な仕様
動的な仕様
プ ロ ダ ク ト の
編集ページMap
検索ページMap
1つのページオブジェクトを複数のFeatureで共有
When(
"{string}"の"{string}"に"{string}"を入力する,
(pageName, uiParts, testData) => {
input( Page[pageName][uiParts], testData )
}
)
"店舗名入力欄": '//input[@name="rst_name"]'
"検索ボタン": '//button[text()="検索する"]'
"編集ボタン": '//li[1]//button[text()]'
Scenario: 店舗を削除する
Given "検索ページ"の"店舗名入力欄"に"店舗001"を入力する
And "検索ページ"の"検索ボタン"をクリックする
And "検索ページ"の"編集ボタン"をクリックする
When "編集ページ"の"削除ボタン"をクリックする
Scenario: 店舗を編集する
Given "検索ページ"の"店舗名入力欄"に"店舗001"を入力する
And "検索ページ"の"検索ボタン"をクリックする
And "検索ページ"の"編集ボタン"をクリックする
When "編集ページ"の"都道府県入力欄"に"神奈川県"を入力する
And "編集ページ"の"送信ボタン"をクリックする
When(
"{string}"の"{string}"をクリックする,
(pageName, uiParts) => {
click( Page[pageName][uiParts] )
}
)
1つのStepを
複数のページオブジェクトで共有
①テスト手順、②画面固有要素、③ウェブ画面一般的な操作ロジック
画面数に対してスケールするようにテストの自動テストのモジュールを整理
20
②画面固有要素(ページオブジェクト)
③ウェブ画面一般的な
操作ロジック(Step)
①テスト手順(Feature)