More Related Content Similar to Eggplant Functional - Lesson 10 (Japanese slides) Similar to Eggplant Functional - Lesson 10 (Japanese slides) (20) Eggplant Functional - Lesson 10 (Japanese slides)3. Benefits of Implementing a Framework
• Eggplant Functionalのフレームワークを使用すると、次のことが可能になる。
• 構造化ワークフローでスクリプトを作成
• スクリプトと画像を簡単にメンテナンス
• テストスクリプトをより迅速に開発
• 複数のテストシナリオでcore capabilities 及び functionsを使用
• Eggplant Functionalでテストするためのベストプラクティスを実装
• 複数の環境を処理するためにImage Collectionsを使用するよりも、スクリプトの実行速度を向上させる
© Copyright 2019 Eggplant
4. Planning the Environment
• ユーザーが使用しているデバイスとプラットフォームを検討する。
• どのオペレーティングシステムでテストする必要があるか?
• OSは収益を提供しますか?
• オペレーティングシステムのバージョン
• iOSユーザーは新しいバージョンにすばやくアップグレード
• Androidユーザーは新しいバージョンの入手に時間がかかる。
• Windowsユーザーはめったにアップグレードしない。
© Copyright 2019 Eggplant
5. Framework Best Practices
• Suite構造のベストプラクティス
• 特定のデバイスまたはプラットフォームのイメージとスクリプトを別のSuiteに保存する。
• わかりやすく説明的な命名規則を決定する。
• 同じデバイスまたはプラットフォーム内のバリエーションにのみImage Collectionsを使用する。.
• 短く焦点を絞ったハンドラー(つまり、スクリプト、コマンド、関数)を作成し、ユーザージャーニーを作成し、
それらを参照する。.
• OCRベストプラクティス
• OCR 検索には ScreenPart 検索用の長方形を使用します。
• DPI設定を効果的に使用する。
• ビジネスプロセスのベストプラクティス
• すべてを文書化する:命名規則、作成された関数のリストとその機能、スイート構造図など。
• コードレビューを定期的に実行して、チームの全員がフレームワークのルールを遵守していることを確認する。
© Copyright 2019 Eggplant
9. the InitialSuites Global Property
• InitialSuitesグローバルプロパティは、現在のスクリプトによって呼び出されるスクリプトまたはイメージリ
ソースを検索する最初のSuiteを決定する。
• このプロパティを使用し、Eggplant Functionalが特定のデバイスまたはプラットフォームを探すSuite
を設定する。
© Copyright 2019 Eggplant
11. Same Image and Script Names
各デバイスまたはプラットフォームスイートで、イメージとスクリプトに同じ名前を付ける必要がある。 この方法は、
プラットフォームを参照しない方法でテストを設計でき、フレームワークが使用するデバイスまたはプラットフォーム
イメージを処理することを意味する。
© Copyright 2019 Eggplant
12. When to Use Image Collections
Image Collectionsは、1つのプラットフォームに複数のイメージバージョンがある場
合にのみ使用すること。
© Copyright 2019 Eggplant
13. Use Handlers to Modularize Tests
短いハンドラー(つまり、スクリプト、コマンド、関数)を作成し、ユーザージャーニーを作成するときにそれ
らを参照する。 この方法により、資産の効率と再利用が向上する。
© Copyright 2019 Eggplant
14. OCR and ScreenPart
• テキストを操作するときにOCRのSearch rectanglesを使用し、デバイスやプラットフォーム
に互換性のあるスクリプトを作成し、すべてのプラットフォームの画像をキャプチャしないように
する。
• Search rectanglesは、検索を高速化し、信頼性を向上させるのに役立つ。
• リモート画面解像度を使用して、Search rectanglesをSUTに自動的に適合させる。
• ScreenPartという関数を作成する。 この関数のコードの説明はここにある。:
http://docs.testplant.com/ePF/using/epf-screenpart.htm
© Copyright 2019 Eggplant
16. Using DPI Settings
• SUT PPI(ピクセル/インチ)を使用し、さまざまなモバイルデバイスまたは4K解像度のデスクトップ画面に
OCR DPIを設定する。
• デフォルトのDPIは72で、これはほとんどのデスクトップSUTの標準である。
• DPIを変更すると、OCR検索に役立つ。
• モバイルデバイス用のDPIのリストはここにある。: http://dpi.lv/
© Copyright 2019 Eggplant
17. Document Everything
• Document everythingとは:
命名規約、作成された関数のリストとその機能、そしてフレームワークのルール、ベストプラクティス、他のツールとの統合
とその使い方、など
• すべてのコンポーネントの詳細を示すSuite構造の図を含む。
• このドキュメントは、チームの全員が必要に応じて参照できる場所に配置する必要がある。
• ドキュメントの所有者はチームのメンバーである必要がある。チームのメンバーは、ドキュメントを最新の状態に保ち、
チームのすべてのメンバーが使用できるようする。
© Copyright 2019 Eggplant
18. Perform Regular Code Reviews
• フレームワークのルールがチーム全体で遵守されていることを確認するために、定期的なコードレビューを実行するこ
とが重要である。
• レビューを行う最善の方法は、GitやSubversion(SVN)などのSCMシステムを使用することである。これにより、
コードのさまざまなバージョンを簡単に管理できる。
• チームのメンバーは、GitまたはSVNを介してコミットされたものがすべて適切なコードであり、フレームワークのルール
に従っていることを確認するために割り当てられる必要がある。
© Copyright 2019 Eggplant
19. 演習: Frameworks
演習:
1. Frwk_Exと命名するSuiteを作成する。
2. ScreenPartと命名するSuiteを作成する。本機能のコードは以下にある。
http://docs.testplant.com/ePF/using/epf-screenpart.htm
3. Frwk_Ex_SUT1 and Frwk_Ex_SUT2と命名する2つのHelper Suiteを作成する。
4. TutorialSUTに接続する。
5. 灰色の履歴アイコンをキャプチャし、Frwk_Ex_SUT1に履歴として保存する。
6. 履歴アイコンをクリックし、Frwk_Ex_SUT2の青いバージョンを履歴としてキャプチャする。
7. In Frwk_Ex_SUT1で、testcase1というスクリプトを作成する。:
long nameの"/"で区切られた最後の3つの項目をログに記録する && "Is running“
tap (text:"Favorites", searchrectangle: ScreenPart(BottomLeftQuadrant))
put readtext(screenpart(HorizontalMiddle))
© Copyright 2019 Eggplant
20. 演習: Frameworks, cont.
8. In Frwk_Ex_SUT1で、testcase3というスクリプトを作成する。:
long nameの"/"で区切られた最後の3つの項目をログに記録する && "Is running“
tap "History"
tap (text:"Contacts",searchrectangle:ScreenPart(BottomHalf))
9. In Frwk_Ex_SUT2,で testcase2というスクリプトを作成する。:
long nameの"/"で区切られた最後の3つの項目をログに記録する && "Is running“
tap (text:"History", searchrectangle:ScreenPart(BottomRightQuadrant))
put readtext(screenpart(HorizontalMiddle))。
10. In Frwk_Ex_SUT2で, testcase3というスクリプトを作成する。:
long nameの"/"で区切られた最後の3つの項目をログに記録する && "Is running“
tap "History"
tap (text:"Downloads",searchrectangle:ScreenPart(BottomHalf))。
© Copyright 2019 Eggplant
21. 演習: Frameworks, cont.
11. In Frwk_Exで、マスタースクリプトを作成する。 :
long nameの"/"で区切られた最後の3つの項目をログに記録する && "Is running“
show remotescreen
testcase1
testcase2
Put the directory of suiteinfo().path into SuiteUsed
set the initialsuites to (SuiteUsed & "Frwk_Ex_SUT2")
testcase3
set the initialsuites to (SuiteUsed & "Frwk_Ex_SUT1")
Testcase3
© Copyright 2019 Eggplant
Editor's Notes For instance Financial Times decided to remove Android from automated testing as 98% of revenue came from iOS with 3-5 different devices while 2% revenue from Android with > 15 different devices
Within 2 weeks most iOS users have upgraded to latest version of iOS
For android to get to same level of adoption they need 6-9 months
Easy flat structure with content in plain text files and .png files
Mobile is based on having core functionality with OS specific suites and Device suites
Desktop is based on having application specific suites
Testcases are created as user journeys