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
730
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
970
ノーコードE2Eテストで実現する高速開発
nozomiito
0
690
MagicPodで実現するE2Eテスト自動化
nozomiito
0
3.6k
MagicPod開発におけるテスト自動化とCI
nozomiito
0
810
最近のMagicPodまとめ
nozomiito
0
630
テスト自動化スタートアップがエバンジェリストを募集するワケ
nozomiito
0
320
MagicPodが取り組むテスト自動化最前線
nozomiito
0
500
ロケーターを学んでテスト自動化上級者を目指そう
nozomiito
1
8.4k
テスト自動化で起業した10年とテスト自動化普及の歴史を振り返る
nozomiito
4
2.5k
Other Decks in Technology
See All in Technology
プロダクト負債と歩む持続可能なサービスを育てるための挑戦
sansantech
PRO
1
1.1k
組織の“見えない壁”を越えよ!エンタープライズシフトに必須な3つのPMの「在り方」変革 #pmconf2025
masakazu178
1
1k
Datadog LLM Observabilityで実現するLLMOps実践事例 / practical-llm-observability-with-datadog
k6s4i53rx
0
180
社内外から"使ってもらえる"データ基盤を支えるアーキテクチャの秘訣/登壇資料(飯塚 大地・高橋 一貴)
hacobu
PRO
0
7.9k
ECS組み込みのBlue/Greenデプロイを動かしてELB側の動きを観察してみる
yuki_ink
3
420
Bedrock のコスト監視設計
fohte
2
250
レガシーシステム刷新における TypeSpec スキーマ駆動開発のすゝめ
tsukuha
4
800
プラットフォームエンジニアリングとは何であり、なぜプラットフォームエンジニアリングなのか
doublemarket
0
170
ローカルLLM基礎知識 / local LLM basics 2025
kishida
25
9.9k
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
3
21k
個人から巡るAI疲れと組織としてできること - AI疲れをふっとばせ。エンジニアのAI疲れ治療法 ショートセッション -
kikuchikakeru
5
1.9k
Building AI Applications with Java, LLMs, and Spring AI
thomasvitale
1
260
Featured
See All Featured
A designer walks into a library…
pauljervisheath
210
24k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.8k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
What's in a price? How to price your products and services
michaelherold
246
12k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
118
20k
Balancing Empowerment & Direction
lara
5
760
Scaling GitHub
holman
464
140k
The Invisible Side of Design
smashingmag
302
51k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Typedesign – Prime Four
hannesfritz
42
2.9k
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/
͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ