Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AI自動テストツールMagic Podでテストをもっと簡単に
Search
Nozomi Ito
September 30, 2020
Technology
1
700
AI自動テストツールMagic Podで テストをもっと簡単に
BPStudy#157〜システムテスト自動化を始めよう(
https://bpstudy.connpass.com/event/188216/
) の発表スライドです。
Nozomi Ito
September 30, 2020
Tweet
Share
More Decks by Nozomi Ito
See All by Nozomi Ito
ノーコードに学ぶE2Eテスト自動化ベストプラクティス
nozomiito
0
840
ノーコードE2Eテストで実現する高速開発
nozomiito
0
620
MagicPodで実現するE2Eテスト自動化
nozomiito
0
3k
MagicPod開発におけるテスト自動化とCI
nozomiito
0
720
最近のMagicPodまとめ
nozomiito
0
580
テスト自動化スタートアップがエバンジェリストを募集するワケ
nozomiito
0
270
MagicPodが取り組むテスト自動化最前線
nozomiito
0
450
ロケーターを学んでテスト自動化上級者を目指そう
nozomiito
1
6.7k
テスト自動化で起業した10年とテスト自動化普及の歴史を振り返る
nozomiito
4
2.2k
Other Decks in Technology
See All in Technology
AWSの新機能検証をやる時こそ、Amazon Qでプロンプトエンジニアリングを駆使しよう
duelist2020jp
1
160
[2025年4月版] Databricks Academy ラボ環境 利用開始手順 / Databricks Academy Labs Onboarding
databricksjapan
0
130
“パスワードレス認証への道" ユーザー認証の変遷とパスキーの関係
ritou
1
570
フロントエンドも盛り上げたい!フロントエンドCBとAmplifyの軌跡
mkdev10
2
270
Porting PicoRuby to Another Microcontroller: ESP32
yuuu
4
410
AI Agentを「期待通り」に動かすために:設計アプローチの模索と現在地
kworkdev
PRO
2
440
生成AIによるCloud Native基盤構築の可能性と実践的ガードレールの敷設について
nwiizo
6
550
4/17/25 - CIJUG - Java Meets AI: Build LLM-Powered Apps with LangChain4j (part 2)
edeandrea
PRO
0
100
OSSコントリビュートをphp-srcメンテナの立場から語る / OSS Contribute
sakitakamachi
0
1.4k
AWSで作るセキュアな認証基盤with OAuth mTLS / Secure Authentication Infrastructure with OAuth mTLS on AWS
kaminashi
0
150
PicoRabbit: a Tiny Presentation Device Powered by Ruby
harukasan
PRO
2
200
改めて学ぶ Trait の使い方 / phpcon odawara 2025
meihei3
1
660
Featured
See All Featured
Music & Morning Musume
bryan
47
6.5k
The Pragmatic Product Professional
lauravandoore
33
6.5k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.6k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
How STYLIGHT went responsive
nonsquared
99
5.5k
Product Roadmaps are Hard
iamctodd
PRO
52
11k
Speed Design
sergeychernyshev
29
900
GraphQLとの向き合い方2022年版
quramy
46
14k
A Tale of Four Properties
chriscoyier
158
23k
Testing 201, or: Great Expectations
jmmastey
42
7.5k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.3k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
104
19k
Transcript
"*ࣗಈςετπʔϧ.BHJD1PEͰ ςετΛͬͱ؆୯ʹ גࣜձࣾ53*%&/5 ҏ౻
"CPVUNF • ҏ౻ *UP/P[PNJ • גࣜձࣾ53*%&/5දऔక • ʮຊ4FMFOJVNϢʔβʔίϛϡχςΟʯӡӦ •
ஶॻ
.BHJD1PEͷ֓ཁ σϞ "*ͷ׆༻ ػೳհ ΞδΣϯμ
.BHJD1PEͷ֓ཁ σϞ "*ͷ׆༻ ػೳհ
.BHJD1PEͱ • "*ٕज़Λ׆༻ͨ͠γεςϜςετ 6*ςετ ࣗಈԽΫϥυ αʔϏε • 8FCαΠτͱϞόΠϧΞϓϦͷςετʹରԠ • ແྉ൛͋Γ
• 5XJUUFS͍ͬͯ·͢ !53*%&/5*OD .BHJD1PEͷ֓ཁ
γεςϜςετࣗಈԽͷ՝ .BHJD1PEͷ֓ཁ 環境構築が 難しい スクリプトを 書くのが難しい 作成したテストが うまく動かない 他の⼈が作ったテストの 理解が難しい
UIが変わるとテストが 動かなくなる
.BHJD1PEʹΑΔιϦϡʔγϣϯ .BHJD1PEͷ֓ཁ 環境構築が 難しい スクリプトを 書くのが難しい 作成したテストが うまく動かない 他の⼈が作ったテストの 理解が難しい
UIが変わるとテストが 動かなくなる クラウドで 簡単環境構築 画⾯要素を選んで テスト作成 エキスパートによる 安定化の努⼒ AIがスクリプトを ⾃動修復 画像 + AIによる 分かりやすい説明⽂
ରԠڥ ςετσʔλอଘઌ .BHJD1PEͷ֓ཁ クラウド Magic Pod クラウド ローカル 外部クラウド (※)
モバイルアプリ(ネイティブ) ◦ ◦ ◦ モバイルアプリ(WebView) ◦ ◦ ◦ Webサイト(デスクトップ) 今後対応 ◦ ◦ Webサイト(モバイルエミュレート) 今後対応 ◦ ◦ Webサイト(モバイル実機) 今後対応 今後対応 今後対応 ςετ࣮ߦڥ ˞#SPXFS4UBDL)FBE4QJO3FNPUF5FTU,JU4BVDF-BCT
.BHJD1PEͷ֓ཁ σϞ "*ͷ׆༻ ػೳհ
ϞόΠϧΞϓϦςετ .BHJD1PEΫϥυ σϞ ςετฤूը໘ .BHJD1PE Ϋϥυ
σϞ ϞόΠϧΞϓϦςετ .BHJD1PEΫϥυ σϞ https://www.youtube.com/watch/IrK3g-0_Ypc
8FCαΠτςετ ϩʔΧϧ σϞ ςετฤूը໘ .BHJD1PE%FTLUPQ ςετରαΠτ
8FCαΠτςετ ϩʔΧϧ σϞ σϞ https://www.youtube.com/watch/ReFpfzpieEk
.BHJD1PEͷ֓ཁ σϞ "*ͷ׆༻ ػೳհ
"*Λ͍ͬͯΔͱ͜Ζ r ͦͷ 環境構築が 難しい スクリプトを 書くのが難しい 作成したテストが うまく動かない 他の⼈が作ったテストの
理解が難しい UIが変わるとテストが 動かなくなる クラウドで 簡単環境構築 画⾯要素を選んで テスト作成 エキスパートによる 安定化の努⼒ AIがスクリプトを ⾃動修復 画像 + AIによる 分かりやすい説明⽂ "*ͷ׆༻
͔Γ͍͢આ໌จ "*ͷ׆༻ r ͔Γ͍͢આ໌จ 要素説明⽂: AIロジックで計算 ⾃由に書き換え可能 システム(Appium)ロケータ: 要素ツリーから計算 テスト実⾏時はこちらを利⽤
ཁૉઆ໌จͷܭࢉʹ͍ͬͯΔใ "*ͷ׆༻ r ͔Γ͍͢આ໌จ • 6*πϦʔใଐੑɺςΩετɺλά໊ɺʑ • ཁૉͲ͏͠ͷҐஔؔ
ཁૉઆ໌จͷܭࢉʹ͍ͬͯΔใ "*ͷ׆༻ r ͔Γ͍͢આ໌จ • 0$3 ը૾͔Βͷจࣈೝࣝ • σΟʔϓϥʔχϯά ʹΑΔମछྨೝࣝ
"*Λ͍ͬͯΔͱ͜Ζ r ͦͷ 環境構築が 難しい スクリプトを 書くのが難しい 作成したテストが うまく動かない 他の⼈が作ったテストの
理解が難しい UIが変わるとテストが 動かなくなる クラウドで 簡単環境構築 画⾯要素を選んで テスト作成 エキスパートによる 安定化の努⼒ AIがスクリプトを ⾃動修復 画像 + AIによる 分かりやすい説明⽂ "*ͷ׆༻
ࣗಈम෮ ηϧϑώʔϦϯά ͱ "*ͷ׆༻ r ςετεΫϦϓτࣗಈम෮ • ςετରͷը໘ߏ͕มΘͬͯཁૉ͕ݟ͔ͭΒͳ͘ͳͬͨ ߹ʹɺ"*͕ը໘ʹ߹ΘͤͯεΫϦϓτଆΛࣗಈमਖ਼ •
ࣅͨίϯηϓτɺ251ͷ࣌ΑΓݟΒΕΔ ͨͿΜ https://www.finddevguides.com/s/qtp/qtp_smart_identification
.BHJD 1PEͷࣗಈम෮ σϞ "*ͷ׆༻ r ςετεΫϦϓτࣗಈम෮ HVFTUOBNF ʹΛηοτ CVUUPO<UFYU
b࣍`>ΛΫϦοΫ ϖʔδ͕मਖ਼͞Εͨʂ JEHVFTUOBNF JEHVFTU@OBNF ςετεΫϦϓτ ࣮ߦ͢ΔͱͲ͏ͳΔ
"*ͷ׆༻ r ςετεΫϦϓτࣗಈम෮ .BHJD1PEͷࣗಈम෮ σϞ https://www.youtube.com/watch/WcQ9lBatJpg
• ςετ࡞࣌ ϩέʔλͱ)5.-શମΛอ࣋ • ςετࣦഊ࣌ ςετ࡞࣌ͱ࣮ߦ࣌ͷ)5.-Λൺֱͯ͠ɺྨࣅ ͕ߴ͍ཁૉ͕͋Εར༻ ࣗಈम෮ͷΈ "*ͷ׆༻ r
ςετεΫϦϓτࣗಈम෮
ࣗಈम෮ͷΈ "*ͷ׆༻ r ςετεΫϦϓτࣗಈम෮ テスト作成時ロケータ テスト実⾏時HTML テスト作成時HTML 修復後の新ロケータ
• ཁૉͷ֤छଐੑɺҐஔɺଞͷཁૉͱͷࢠؔɺʑ • 0$3݁Ռ • σΟʔϓϥʔχϯάʹΑΔମछྨೝࣝ • ػցֶशʹΑΔॏΈ͚ͷௐಛʹ͍ͯ͠ͳ͍ - ը໘मਖ਼લޙͷϖʔδαϯϓϧ͕গͳ͗͢ΔͨΊ
ྨࣅൺֱͷج४ "*ͷ׆༻ r ςετεΫϦϓτࣗಈम෮
• ΤϥʔΛݟͯɺʮ͜ΜͳΜ"*͕ͳΜͱ͔͠ΖΑʂʯͱࢥͬͨ࣌ͷ ͨΊʹɺվળϦΫΤετϘλϯΛ༻ҙ • ࠓޙܧଓվળ͍͖ͯ͠·͢ʂ "*ͷܧଓతվળ "*ͷ׆༻ r ςετεΫϦϓτࣗಈम෮
.BHJD1PEͷ֓ཁ σϞ "*ͷ׆༻ ػೳհ
ػೳհ • "*Ҏ֎ʹ.BHJD1PEʹػೳ͕ͨ͘͞Μ • ֤छػೳΛۦ͚Ͱ͝հ
ػೳհ ϞόΠϧ
ΫϥυγϛϡϨʔλ ϞόΠϧ ػೳհ • ϩʔΧϧڥΑΓ҆ఆɾߴ • ࣮ػ͡Όͳ͍ͷͰ͍҆
Ϋϥυ࣮ػ ϞόΠϧ • #SPXTFS4UBDL 4BVDF-BCT 3FNPUF5FTU,JU )FBE4QJO ͱ࿈ܞՄೳ ֎෦αʔϏεͷܖ͕ඞཁ •
աڈػछ͔Β࠷৽ػछ·Ͱ๛ͳἧ͑ ػೳհ SauceLabs Remote TestKit
Ϋϩεςετ ϞόΠϧ • ৭ʑͳόʔδϣϯػछͷΈ߹ΘͤͰฒྻྻ࣮ߦ ػೳհ
֤छૢ࡞ ϞόΠϧ • ͞·͟·ͳίϚϯυΛ༻ҙ • ϚχΞοΫͳͷ৭ʑ ػೳհ
ը૾Ξοϓϩʔυ ϞόΠϧ • ʹςετ༻ͷը૾ΛՃ ػೳհ
ϐοΧʔૢ࡞ ϞόΠϧ • εϫΠϓํΛࣗಈਪఆ ػೳհ
8FC7JFXαϙʔτ ϞόΠϧ • $PSEPWBΞϓϦ .POBDBΞϓϦʹରԠ ػೳհ
ػೳհ 8FC
֤छϒϥβૢ࡞ 8FC • ͞·͟·ͳίϚϯυΛ༻ҙ ػೳհ
Ϋϩεϒϥβ 8FC ػೳհ • ֤छϒϥβʹରԠ
֎෦Ϋϥυ࿈ܞ • #SPXTFS4UBDL 4BVDF-BCT ͱ࿈ܞՄೳ ֎෦αʔϏεͷܖ ͕ඞཁ • ༷ʑͳϒϥβόʔδϣϯɾ04Ͱར༻Մೳ ػೳհ
SauceLabs BrowserStack
*&҆ఆԽରԠ 8FC ػೳհ • ҆ఆ͠ͳ͍*&Λ҆ఆͤ͞Δʑͷྗ https://www.slideshare.net/hirokotamagawa/20200516-seleniummeetupwinappdriver
ϑΝΠϧμϯϩʔυΞοϓϩʔυ 8FC ػೳհ
Ξϥʔτ༰ը໘Ωϟϓνϟ 8FC ػೳհ • ҙ֎ͱ࣮ݱ͕͍͠ػೳ
ػೳհ શൠ
νΣοΫ ػೳհ • ༷ʑͳ݅ͰظνΣοΫ
݅ذ ػೳհ • ʮμΠΞϩά͕ग़ͨͱ͖͚ͩλοϓ͢ΔʯͳͲͷ༻్ʹ
ڞ༗εςοϓ ػೳհ • ܁Γฦ͠ར༻͢Δॲཧڞ௨Խ
σʔλۦಈςετ ػೳհ • ύϥϝʔλΛม͑ͯɺಉ͡ςετΛԿ࣮ߦ
ϖʔδը૾ΛෳςετͰڞ༗ ػೳհ • 6*ϨϙδτϦɺ6*ϚοϓͷΑ͏ʹ͑Δ
ϩέʔλมߋ ػೳհ • ༷ʑͳީิ͔Β͖ͳͷΛબՄೳ
ม ػೳհ • ը໘্ͷͳͲΛอଘͯ͠ޙଓॲཧʹར༻Մೳ
ڞ༗ม ػೳհ • શςετͰڞ༗͞ΕΔύϥϝʔλ
γʔΫϨοτม ػೳհ • ϩάʹग़ͨ͘͠ͳ͍ϚεΩϯά
ม ػೳհ • ʮ໌ͷΛೖྗʯͳͲͷ༻్ʹ
γεςϜม ػೳհ • ಛఆͷϒϥβ04Ͱ͚ͩߦ͍͍ͨॲཧʹ
)551ϦΫΤετૹ৴ ػೳհ • %#ͷνΣοΫσʔλΫϦΞͳͲʹ
&NBJMͷςετ ػೳհ • ʮ)551ϦΫΤετૹ৴ʯͱʮਖ਼نදݱϚονʯͷΈ߹Θͤ - (NBJMʹૹ৴͞Εͨ༰ͷνΣοΫ - (NBJMʹૹ৴͞ΕͨϦϯΫΛΫϦοΫ • IUUQTXXXUSJEFOURBDPNNBHJDQPEFNBJMUFTUJOH
ςετέʔεϥϕϧ ػೳհ • ςετʹϥϕϧΛ༩Մೳ • ϥϕϧΛࢦఆ PSআ֎ ͯ͠ςετҰׅ࣮ߦՄೳ
εέδϡʔϧ࣮ߦ ػೳհ • ຊ൪ڥͷࢹͳͲʹ
$*࿈ܞ $JSDMF$* +FOLJOT ͳͲ ػೳհ • 8FC"1*ίϚϯυϥΠϯ࣮ߦͷػೳͰ࿈ܞՄೳ
$*࿈ܞ #JUSJTF ϞόΠϧ ػೳհ • #JUSJTF 4UFQͰ(6*ઃఆՄೳ
ίϝϯτ ػೳհ
ίϐʔɾషΓ͚ ػೳհ
ฤूΛݩʹ͢ɾΓ͢ ػೳհ
෦ςετ࣮ߦ ػೳհ
ςετ݁Ռը໘Ωϟϓνϟμϯϩʔυ ػೳհ • ΤϏσϯεऔಘը૾ൺֱʹ
ը૾ࠩൺֱϨϙʔτ ػೳհ • ը໘ΩϟϓνϟμϯϩʔυͱSFHDMJͷΈ߹ΘͤͰ࣮ݱ • IUUQTCMPHUSJEFOURBDPNSFHDMJNBHJDQPEFF
ϝϯόʔݖݶཧ ػೳհ • ϓϩδΣΫτ୯ҐͰͷݖݶઃఆ͕Մೳ
ଓݩ*1੍ݶ ػೳհ • ΤϯλʔϓϥΠζϓϥϯͷػೳ
ӳޠར༻Մೳ ػೳհ • ւ֎ͰΘΕ͍ͯ·͢
8FBSFIJSJOH ͍͞͝ʹ ςΫϊϩδʔͷྗͰςετͷੈքΛม͍͑ͨ ΤϯδχΞͷํΛืूத https://www.trident-qa.com/recruit/
͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ