ディープラーニングとappiumでモバイルテスト自動化
TRANSCRIPT
ディープラーニングとAppiumでモバイルテスト自動化
2016.12.18第4回Seleniumユーザーコミュニティ勉強会
伊藤望 (TRIDENT)
About Mep 伊藤 望
p 株式会社TRIDENT代表取締役
n テスト自動化の支援を行うベンチャー
n www.trident-qa.com (技術ブログあり)
p 執筆
About Me「Sahagin」p WebDriver/Appium/Gebのレポートツール(OSS)
p ダウンロード数
About Me「SeleniumBootCamp」p Seleniumについて、1日で基礎から学ぶ講座(有料)
Appium xディープラーニング
自動テストのつらいところ- SeleniumIDEの場合 -p 操作記録で簡単にスクリプト作成
p つらいところ
n テスト内容がよくわからない
n メンテナンスがつらい
自動テストのつらいところ- AppiumInspectorの場合 -p 操作記録と要素調査
p つらいところ
n いろいろ使いにくい
自動テストのつらいところ- WebDriver/Appiumの場合 -p コードを書いて、なんでも自由自在
p つらいところ
n コード書くのが大変
n 単調なプログラミング作業…
ディープラーニング
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
高精度な物体認識 自動運転でも活躍
Appium xディープラーニング
p ディープラーニングの画像認識を、コンポーネント認識に利用
p 「誰でも」「すばやく」読みやすいスクリプトを作成できるように
そして生まれたのが
MagicPot
コンセプト動画https://www.youtube.com/watch?v=UEQrIsndFpc
デモ
Yahoo!乗換案内 Jenkins
+
デモスクリプト
出発「東京」
到着「新大阪」
出発時刻「12/31 12:00」
検索結果の1行目は「12:00」発の電車
デモスクリプト「出発地」
を指定する画面
「時刻」を指定する画面
タップ
「到着地」を指定する画面タップ
タップ
デモhttps://www.youtube.com/watch?v=bdF2k-1miD4
実装 -テストを作成する-
①画像解析(ディープラーニング)
②選んでテスト作成
実装 -テストを実行する-
③unittestのコードに変換
④コマンドラインから実行 ④CIで実行
実装 -テストを実行する-
⑤実行時に再度画像解析
⑥対応するAppium要素を取得
UIATextField[1]
⑦Appiumで実行
実装 -テストを実行する-
⑤実行時に再度画像解析
⑥対応するAppium要素を取得
UIATextField[1]
⑦Appiumで実行
「名前」入力エリア UIATextField[1]
の対応はキャッシュし、2回目からは高速に動作
システム構成
CIツール
クラウド環境
Webサーバ
スクリプトDB
ユーザ環境
Magic Potクライアント
端末
①開始
②スクリプト取得
③テスト実行
よくありそうなQ&AQ:クラウドサービスなの?ライブラリなの?
A:クラウド +クライアントライブラリの組み合わせです
Q:有料なの?無料なの?
A:無料版と有料版両方を提供する予定です
Q:いつから使えるの?
A:クローズドβ開始まであと少し!
今後もまだまだバージョンアップ!
p Webでも使えないの?
p プログラム書かないと辛い時はどうするの?
p UIが変わった時のメンテナンス性ってどうなの?
p AIが誤認識した時はどうするの?
ちゃんと考えてますので、乞うご期待!
お知らせ①
pβユーザー先行登録受付中
お知らせ②
p 近々改名します!
p 「MagicPot」=>「MagicPod」
ありがとうございました!