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
830
ノーコードE2Eテストで実現する高速開発
nozomiito
0
610
MagicPodで実現するE2Eテスト自動化
nozomiito
0
2.9k
MagicPod開発におけるテスト自動化とCI
nozomiito
0
710
最近のMagicPodまとめ
nozomiito
0
570
テスト自動化スタートアップがエバンジェリストを募集するワケ
nozomiito
0
270
MagicPodが取り組むテスト自動化最前線
nozomiito
0
440
ロケーターを学んでテスト自動化上級者を目指そう
nozomiito
1
6.6k
テスト自動化で起業した10年とテスト自動化普及の歴史を振り返る
nozomiito
4
2.2k
Other Decks in Technology
See All in Technology
Symfony in 2025: Scaling to 0
fabpot
2
190
銀行でDevOpsを進める理由と実践例 / 20250317 Masaki Iwama
shift_evolve
1
110
ソフトウェア開発におけるインターフェイスという考え方 / PHPerKaigi 2025
k1low
9
3.9k
Proxmox VE超入門 〜 無料で作れるご自宅仮想化プラットフォームブックマークする
devops_vtj
0
120
SpannerとAurora DSQLの同時実行制御の違いに想いを馳せる
masakikato5
0
570
どっちの API SHOW?SharePoint 開発における SharePoint REST API Microsoft Graph API の違い / Which API show? Differences between Microsoft Graph API and SharePoint REST API
karamem0
0
110
スケールアップ企業のQA組織のバリューを最大限に引き出すための取り組み
tarappo
4
930
Engineering Managementのグローバルトレンド #emoasis / Engineering Management Global Trend
kyonmm
PRO
6
990
移行できそうでやりきれなかった 10年超えのシステムを葬るための戦略 / phper-kaigi-2025-ryu
carta_engineering
0
690
AIエージェントキャッチアップと論文リサーチ
os1ma
6
1.2k
コード品質向上で得られる効果と実践的取り組み
ham0215
2
200
日本MySQLユーザ会ができるまで / making MyNA
tmtms
1
360
Featured
See All Featured
Code Review Best Practice
trishagee
67
18k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
25k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
A better future with KSS
kneath
238
17k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
227
22k
Testing 201, or: Great Expectations
jmmastey
42
7.4k
Side Projects
sachag
452
42k
We Have a Design System, Now What?
morganepeng
51
7.5k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
102
18k
A Philosophy of Restraint
colly
203
16k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7.1k
BBQ
matthewcrist
88
9.5k
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/
͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ