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
シナリオに依存しないテストの基盤作ってます / We're developing an inf...
Search
Kuniwak
PRO
October 02, 2019
Programming
570
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
シナリオに依存しないテストの基盤作ってます / We're developing an infrastracture for tests not depending schenarios
https://testnight.connpass.com/event/145238/
一度非公開にしていましたが、再公開しました。
Kuniwak
PRO
October 02, 2019
More Decks by Kuniwak
See All by Kuniwak
AIベース静的検査器の偽陽性率を抑える工夫3選
orgachem
PRO
8
2.8k
仕様漏れ実装漏れをなくすトレーサビリティAI基盤のご紹介
orgachem
PRO
16
11k
要求定義・仕様記述・設計・検証の手引き - 理論から学ぶ明確で統一された成果物定義
orgachem
PRO
40
23k
DeNA での思い出 / Memories at DeNA
orgachem
PRO
8
3.7k
それ CLI フレームワークがなくてもできるよ / Building CLI Tools Without Frameworks
orgachem
PRO
18
4.8k
状態遷移図を書こう / Sequence Chart vs State Diagram
orgachem
PRO
4
800
テストケースの名前はどうつけるべきか?
orgachem
PRO
2
960
欠陥を早期に発見するための Software Engineer in Test とその重要性 / What is Software Engineer in Test and How they works
orgachem
PRO
22
5k
住宅を WebXR で評価しよう / Evaluating My Home by WebXR
orgachem
PRO
0
250
Other Decks in Programming
See All in Programming
S3 を使うアプリケーションをローカル完結で動かすことに全力を注いでみた / Running S3 Apps Offline
contour_gara
0
500
AI時代に設計が 最大の生産性レバーになる 意図駆動開発とデータを消さない設計|Don't Delete Your Data or Your Intent — Design as the Deepest Lever in the AI Era
tomohisa
1
930
テーブルをDELETEした
yuzneri
0
140
今さら聞けない .NET CLI
htkym
0
190
全PRの83%がAIレビューだけでマージできるようになった開発組織はその後どうなったか
athug
1
1.7k
「人を評価する AI」の設計と実装
ryoyanara
0
210
<title><a id="</title>君はこのHTMLをパースできるか"></a></title> #雑LT_study
pizzacat83
0
150
生成AIで帳票OCRが「簡単に」作れる時代になった?
kon_shou
0
990
いまどきの Codex で開発する visionOS アプリの開発スタイルについて
karad
0
150
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
600
PHP初心者セッション2026 〜生成AIでは見えない裏側を知る:今だからLAMPを通して仕組みを学ぶ〜
kashioka
0
940
「寝てても仕事が進む」Claude Codeで組む第二の脳
tomoyafujita2016
0
330
Featured
See All Featured
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
890
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
250
Into the Great Unknown - MozCon
thekraken
41
2.7k
Unsuck your backbone
ammeep
672
58k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
430
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
210
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.2k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Scaling GitHub
holman
464
140k
GraphQLとの向き合い方2022年版
quramy
50
15k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
380
Darren the Foodie - Storyboard
khoart
PRO
3
3.6k
Transcript
γφϦΦʹґଘ͠ͳ͍ ςετͷج൫࡞ͬͯ·͢ $*$%5FTU/JHIU ,VOJXBL
ൃදͷྲྀΕ ԿΛ$*ʹࡌ͍ͤͨͷ͔ $*ʹࡌͤΔࡍͷ՝ EFWGBSNʢ·ͩະެ։ʣͷհ
ԿΛ$*ʹࡌ͍ͤͨͷ͔
࠷ۙͷΈ ϞόΠϧήʔϜͷόάΛͰ͖Δ͚ͩ खલͷϑΣʔζͰݟ͚͍ͭͨ ཁ͢Δʹ୯ମςετͱ͔Ͱ ݟ͚ͭΒΕΔͳΒͱͯخ͍͕͠ʜ
୯ମςετͭΒ͍ ήʔϜΤϯδϯ߹ͷ ίϯϙʔωϯτׂΛڧ੍͞Εɺ ҙຯͷ͋ΔཻͰͷׂΛ ͮ͠Β͍ʢΓํ͋Δ͕ʣ
୯ମςετͭΒ͍ ͭ·Γɺ୯ମςετॻ͚Δ͚Ͳ ԿΘ͔Βͳ͍͜ͱ͕ଟ͍
Ͱ݁߹ςετʁ ݁߹ςετ͋·ΓʹͭΒ͍ɿ w ͙͢յΕΔ w ͭͷςετέʔεͰ ௐΒΕΔܦ࿏͘͝Θ͔ͣ
Ͱ6*ςετʁ 6*ςετอक͕ͭΒ͍ɿ w γφϦΦ͙͢յΕΔ w ͦͦγφϦΦ͕ಈ͘·Ͱ ࢼߦαΠΫϧͯͭ͘Β͍
݁ʢʁʣ ήʔϜͷςετԿͬͯͭΒ͍
ͷཧ w ઃܭʹࠨӈ͞ΕΔͱݫ͍͠ w ݁߹Λ૿͢ͱյΕͯ͘͢ݫ͍͠ w ࢼߦαΠΫϧ͍ͱݫ͍͠
ͷཧ w ͜ΕΒΛશͯճආ͢Δͪΐ͏Ͳ͍͍ ςετ͕࣮͋Δʜ
ͷཧ w ୯ମςετͰҙຯΛ࣋ͨͤͮΒׂཻ͍ w ݁߹Ϩϕϧ্͛ΕճආՄೳ w ͲͷΑ͏ʹׂɾ݁߹͞Εͯ ݁߹ͯ͠͠·͑ςετͰ͖Δ
ͷཧ w ݁߹Λ૿͢ͱյΕͯͭ͘͢Β͍ w ಛఆͷೖग़ྗΛݕূ͢ΔͳΒ յΕΔͷճආͰ͖ͳ͍ w Ұൠతͳੑ࣭ͷݕূͳΒճආՄೳ
ͷཧ w ࢼߦαΠΫϧ͍ͱݫ͍͠ w खಈͰେྔʹ࡞Δͱ͖ w ೖग़ྗͷࣗಈੜͰ؇Մೳ
ͭ·Γʜ ԼͷςετͳΒήʔϜͰޮՌతɿ w ݁߹Ϩϕϧ͕ߴ͘ɺ w Ұൠతͳੑ࣭Λݕূ͠ɺ w ೖग़ྗࣗಈͰੜ͞ΕΔ
ͦΜͳςετ͋Δͷ͔ʁʁʁ ͋Γ·͢
6*ϨΠϠʔͷ ϞϯΩʔςετ 6*ૢ࡞ΛࣗಈͰແ࡞ҝʹ࣮ߦ͠ɺ ΫϥογϡύϑΥʔϚϯεΛ ൃݟ͢Δํ๏ʢΦʔτϓϨΠͷҰछʣ
#VUUPO" ͭʹߜΓࠐΉ ⁞ૢ࡞ՄೳͳͷΛબ ແ࡞ҝʹૢ࡞Λ࣮ߦ #VUUPO# #VUUPO$ #VUUPO% #VUUPO" #VUUPO# #VUUPO"
5BQ
զʑ͕$*ʹࡌ͍ͤͨͷ ήʔϜͰݱ࣮త͔ͭޮతͳ ςετͱͯ͠ɺ6*ϨΠϠʔͷ ϞϯΩʔςετΛࡌ͍ͤͨʂ
طଘπʔϧ "QQJVN"MU6OJUZ5FTUFS͕༗໊ ͜ΕΒ͑ͳ͍͜ͱͳ͍͕ɺ ૢ࡞Մೳͳͷͷબ͕खؒͩ͠ɺ πʔϧͷఆ֎ͷ༻్ͳͷͰةݥ
ͭʹߜΓࠐΉ ⁞ૢ࡞ՄೳͳͷΛબ ແ࡞ҝʹૢ࡞Λ࣮ߦ ͕͜͜طଘπʔϧͩͱͭΒ͍ #VUUPO" #VUUPO# #VUUPO$ #VUUPO" #VUUPO# #VUUPO"
5BQ
ΞϓϦʹຒΊࠐΉํࣜΛ࠾༻ ΞϓϦͷϏϧυ࣌ʹ͜ͷૢ࡞πʔϧΛ ຒΊࠐΉ͜ͱͰɺطଘπʔϧͷ໘ͳ ෦Λղܾ ΞϓϦΛىಈ͢Εςετ͞ΕΔ
$*ʹࡌͤΔࡍͷ՝
Ͳ͜ͰΞϓϦΛಈ͔͔͢ ࣮ࡍʹΞϓϦΛಈ͔͢ඞཁ͕͋ͬͯɺ ࣮ͨͩ͠ػͰ͋Δඞཁੑͦ͜·Ͱ ߴ͘ͳ͍ ͨ͘͞Μԣʹฒͯಈ͔͍ͨ͠͠ɺ γϛϡϨʔλ͑ΔͳΒ͕͍͍ͦͬͪ
γϛϡϨʔλΫϥυʜʁ J04"OESPJEͷ࣮ػσόΠεΛΫϥυͰ ࣮ߦ͢ΔαʔϏε͍͔ͭ͘ΒΕ͍ͯΔ ͔͠͠γϛϡϨʔλΛΫϥυͰ࣮ߦ͢Δ αʔϏεΘ͔ͣʹ͋Δ͕͍ͮΒ͍ʜ
ݱঢ়ͷํ কདྷతʹγϛϡϨʔλͰಈ͔͍͕ͨ͠ ࠓ·࣮ͩػ͔͠ͳ͍ͷͰɺ Ҡߦίετͷগͳ͍ঢ়ଶΛอͪͭͭɺ ૣΊʹऔΓΈ͍ͨ
ͦ͜ͰEFWGBSN ࣮ػͱγϛϡϨʔλͷΓସָ͕͑Ͱɺ σόΠεΫϥυ্ͰΞϓϦͷىಈঢ়گΛ ཧ͢Δπʔϧ ·ͩະެ։͚ͩͲকདྷతʹ044༧ఆ
EFWGBSNͷհ
EFWGBSNͰͰ͖Δ͜ͱ w ࢦఆͨ͠σόΠεΫϥυ04ػछ ΞϓϦҾͰΞϓϦΛىಈ w ΞϓϦ͕Ϋϥογϡͨ͠ΒίϚϯυΛ ҟৗऴྃɺࢦఆ࣌ؒੜଘͨ͠Βਖ਼ৗऴྃ
͑ɺͦΕ͚ͩʜ
ཧ༝͕ʜ͋Γ·͢ʜ
EFWGBSNͷࢥ ࣮ػɾγϛϡϨʔλɾσόΠεΫϥυΛ Θͣɺಉ͡ΠϯλʔϑΣʔεͰ ىಈɾऴྃ͢Δ͜ͱͷΈʹઐ೦͢Δ ಛఆͷ݅Ͱ͔͠αϙʔτͰ͖ͳ͍ػೳ αϙʔτ͠ͳ͍ʢػೳͷੵू߹ओٛʣ
$ devfarm run-ios --os-version 12.0 \ --device 'apple iphone xs'
\ --instance-group 'example' \ --platform 'aws-device-farm' \ --ipa 'path/to/app.ipa' \ --args-json '["-ARG1", "HELLO_DEVFARM"]' \ --lifetime-sec 900 & platform status aws-device-farm launching J04ΞϓϦΛͭىಈ
$ devfarm status --instance-group 'example' platform device os state note
aws-device-farm apple iphone xs ios ACTIVE ىಈ͍ͯ͠ΔΞϓϦͷ֬ೝ
$ devfarm halt --instance-group 'example' platform status aws-device-farm halting ΞϓϦͷڧ੍ऴྃ
instance_groups: <group>: # for Android - platform: <platform> # required
android: <version> # required device: <decice> # required apk: <filepath> # required app_id: <app_id> # required intent_extras: [] # optional lifetime_sec: 900 # required $ devfarm run-all planfile.yml ෳΞϓϦͷҰׅىಈ
EFWGBSNͱ ࣮ػͱγϛϡϨʔλͷΓସָ͕͑Ͱɺ σόΠεΫϥυ্ͰΞϓϦͷىಈঢ়گΛ ཧ͢Δπʔϧ ·ͩະެ։͚ͩͲকདྷతʹ044༧ఆ
·ͱΊ w ϞόΠϧήʔϜʹޮతͰ ݱ࣮తͳςετΛೖΕ͍ͨʂ w ݱࡏͷπʔϧΫϥυͷঢ়گͰ ಈ͔ͤͯɺকདྷΛݟӽͨ͠ πʔϧΛ࡞Γ·ͨ͠ w 044ԽͰ͖ͨΒͥͻ͓ࢼ͠Λ