ディープラーニングとappiumでモバイルテスト自動化

26
ディープラーニングとAppiumモバイルテスト自動化 2016.12.18 4Seleniumユーザーコミュニティ勉強会 伊藤望 (TRIDENT)

Upload: nozomi-ito

Post on 16-Apr-2017

941 views

Category:

Internet


0 download

TRANSCRIPT

Page 1: ディープラーニングとAppiumでモバイルテスト自動化

ディープラーニングとAppiumでモバイルテスト自動化

2016.12.18第4回Seleniumユーザーコミュニティ勉強会

伊藤望 (TRIDENT)

Page 2: ディープラーニングとAppiumでモバイルテスト自動化

About Mep 伊藤 望

p 株式会社TRIDENT代表取締役

n テスト自動化の支援を行うベンチャー

n www.trident-qa.com (技術ブログあり)

p 執筆

Page 3: ディープラーニングとAppiumでモバイルテスト自動化

About Me「Sahagin」p WebDriver/Appium/Gebのレポートツール(OSS)

p ダウンロード数

Page 4: ディープラーニングとAppiumでモバイルテスト自動化

About Me「SeleniumBootCamp」p Seleniumについて、1日で基礎から学ぶ講座(有料)

Page 5: ディープラーニングとAppiumでモバイルテスト自動化

Appium xディープラーニング

Page 6: ディープラーニングとAppiumでモバイルテスト自動化

自動テストのつらいところ- SeleniumIDEの場合 -p 操作記録で簡単にスクリプト作成

p つらいところ

n テスト内容がよくわからない

n メンテナンスがつらい

Page 7: ディープラーニングとAppiumでモバイルテスト自動化

自動テストのつらいところ- AppiumInspectorの場合 -p 操作記録と要素調査

p つらいところ

n いろいろ使いにくい

Page 8: ディープラーニングとAppiumでモバイルテスト自動化

自動テストのつらいところ- WebDriver/Appiumの場合 -p コードを書いて、なんでも自由自在

p つらいところ

n コード書くのが大変

n 単調なプログラミング作業…

Page 9: ディープラーニングとAppiumでモバイルテスト自動化

ディープラーニング

p 今話題の人工知能(AI)技術

https://papers.nips.cc/paper/4824-imagenet-classification-with-deep-convolutional-neural-networks.pdf

http://jacobsschool.ucsd.edu/news/news_releases/release.sfe?id=1883

高精度な物体認識 自動運転でも活躍

Page 10: ディープラーニングとAppiumでモバイルテスト自動化

Appium xディープラーニング

p ディープラーニングの画像認識を、コンポーネント認識に利用

p 「誰でも」「すばやく」読みやすいスクリプトを作成できるように

Page 11: ディープラーニングとAppiumでモバイルテスト自動化

そして生まれたのが

MagicPot

Page 12: ディープラーニングとAppiumでモバイルテスト自動化

コンセプト動画https://www.youtube.com/watch?v=UEQrIsndFpc

Page 13: ディープラーニングとAppiumでモバイルテスト自動化

デモ

Yahoo!乗換案内 Jenkins

+

Page 14: ディープラーニングとAppiumでモバイルテスト自動化

デモスクリプト

出発「東京」

到着「新大阪」

出発時刻「12/31 12:00」

検索結果の1行目は「12:00」発の電車

Page 15: ディープラーニングとAppiumでモバイルテスト自動化

デモスクリプト「出発地」

を指定する画面

「時刻」を指定する画面

タップ

「到着地」を指定する画面タップ

タップ

Page 16: ディープラーニングとAppiumでモバイルテスト自動化

デモhttps://www.youtube.com/watch?v=bdF2k-1miD4

Page 17: ディープラーニングとAppiumでモバイルテスト自動化

実装 -テストを作成する-

①画像解析(ディープラーニング)

②選んでテスト作成

Page 18: ディープラーニングとAppiumでモバイルテスト自動化

実装 -テストを実行する-

③unittestのコードに変換

④コマンドラインから実行 ④CIで実行

Page 19: ディープラーニングとAppiumでモバイルテスト自動化

実装 -テストを実行する-

⑤実行時に再度画像解析

⑥対応するAppium要素を取得

UIATextField[1]

⑦Appiumで実行

Page 20: ディープラーニングとAppiumでモバイルテスト自動化

実装 -テストを実行する-

⑤実行時に再度画像解析

⑥対応するAppium要素を取得

UIATextField[1]

⑦Appiumで実行

「名前」入力エリア UIATextField[1]

の対応はキャッシュし、2回目からは高速に動作

Page 21: ディープラーニングとAppiumでモバイルテスト自動化

システム構成

CIツール

クラウド環境

Webサーバ

スクリプトDB

ユーザ環境

Magic Potクライアント

端末

①開始

②スクリプト取得

③テスト実行

Page 22: ディープラーニングとAppiumでモバイルテスト自動化

よくありそうなQ&AQ:クラウドサービスなの?ライブラリなの?

A:クラウド +クライアントライブラリの組み合わせです

Q:有料なの?無料なの?

A:無料版と有料版両方を提供する予定です

Q:いつから使えるの?

A:クローズドβ開始まであと少し!

Page 23: ディープラーニングとAppiumでモバイルテスト自動化

今後もまだまだバージョンアップ!

p Webでも使えないの?

p プログラム書かないと辛い時はどうするの?

p UIが変わった時のメンテナンス性ってどうなの?

p AIが誤認識した時はどうするの?

ちゃんと考えてますので、乞うご期待!

Page 24: ディープラーニングとAppiumでモバイルテスト自動化

お知らせ①

pβユーザー先行登録受付中

Page 25: ディープラーニングとAppiumでモバイルテスト自動化

お知らせ②

p 近々改名します!

p 「MagicPot」=>「MagicPod」

Page 26: ディープラーニングとAppiumでモバイルテスト自動化

ありがとうございました!