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
受託開発会社でテスト自動化をやってミタ
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
こだ
March 03, 2021
Programming
0
520
受託開発会社でテスト自動化をやってミタ
Autify Meetup ~Autify導入・運用実践者にそのノウハウを聞いてみる編~
開催日時 : 2021年1月28日 (木) 16:30 - 18:00
の登壇にて使用した資料になります
こだ
March 03, 2021
Tweet
Share
Other Decks in Programming
See All in Programming
LLM Observabilityによる 対話型音声AIアプリケーションの安定運用
gekko0114
2
440
今から始めるClaude Code超入門
448jp
8
9.1k
例外処理とどう使い分ける?Result型を使ったエラー設計 #burikaigi
kajitack
16
6.1k
CSC307 Lecture 03
javiergs
PRO
1
490
開発者から情シスまで - 多様なユーザー層に届けるAPI提供戦略 / Postman API Night Okinawa 2026 Winter
tasshi
0
210
それ、本当に安全? ファイルアップロードで見落としがちなセキュリティリスクと対策
penpeen
7
4k
24時間止められないシステムを守る-医療ITにおけるランサムウェア対策の実際
koukimiura
1
130
AI Agent の開発と運用を支える Durable Execution #AgentsInProd
izumin5210
7
2.3k
AIと一緒にレガシーに向き合ってみた
nyafunta9858
0
260
生成AIを活用したソフトウェア開発ライフサイクル変革の現在値
hiroyukimori
PRO
0
110
AIで開発はどれくらい加速したのか?AIエージェントによるコード生成を、現場の評価と研究開発の評価の両面からdeep diveしてみる
daisuketakeda
1
2.5k
CSC307 Lecture 05
javiergs
PRO
0
500
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.3k
The agentic SEO stack - context over prompts
schlessera
0
650
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.1k
How to build a perfect <img>
jonoalderson
1
4.9k
First, design no harm
axbom
PRO
2
1.1k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.4k
The browser strikes back
jonoalderson
0
420
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
310
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.1k
Claude Code のすすめ
schroneko
67
210k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
Transcript
受託開発会社で テスト自動化をやってミタ 〜 ⼀⼈ 始 QA体制構築 ⾃動化編〜 株式会社タンバリン クラウドインテグレーション部 QAエンジニア
早川 侑⾥
:VSJ)BZBLBXB ,PEB גࣜձࣾλϯόϦϯ ΫϥυΠϯςάϨʔγϣϯ෦ 2"ΤϯδχΞ നඦ߹ঁࢠେֶଔۀޙɺҿ৯ɾӦۀ৬Λܦͯɺגࣜձࣾ4)*'5ʹͯ ςετΤϯδχΞͱͳΔɻ ୈࡾऀݕূΛ̎ࣾܦݧ͠ɺ&$αΠτɾ"QQͷςετΛத৺ʹɺ ෯͍αʔϏεʹܞΘΓɺݱͷΞΧϯτϚωʔδϟͱͯ͠ ۀʹैࣄɻ
ݱࡏɺגࣜձࣾλϯόϦϯͷਓͷ2"ΤϯδχΞͱͯ͠ डҊ݅ͷ2"ۀɾձࣾͷ2"ମ੍ͷߏஙɾςετνʔϜͷνʔϜ ϏϧσΟϯάΛ୲ɻ झຯήʔϜͱಈըฤूɻ໊͋ͩͷ༝དྷϙέϞϯͷίμοΫʹࣅ ͍ͯΔ͜ͱ͔Β͖ͭ·ͨ͠ɻ
ձࣾ֓ཁ あたらしいこと、カタチにしていく ΫϥυΛ׆༻ͨ͠ϞόΠϧΞϓϦ&ίϚʔε 8FCαʔϏεͷ։ൃΛத৺ʹΫϥΠΞϯτͷ ʮσδλϧγϑτʯΛαϙʔτɻ ࢲୡح৺Λثʹɺ͋ͨΒ͍͜͠ͱ͕େ͖ͳؒͱ ʮੈքΛม͑ΔΞΠσΞʯΛܗʹ͢Δ ςΫϊϩδετूஂͰ͢ɻ νʔϜ։ൃΛओྲྀʹ͠ɺ 4BMFTGPSDFΛͬͨ&$αΠτͷߏஙΛडୗ։ൃͱͯ͠ߦͳͬ
͍ͯ·͢ɻ 4BMFTGPSDFೝఆίϯαϧςΟϯάύʔτφʔ 4JMWFS1BSUOFS
ࠓճͷ͓ ͜Εɾɾɾ ݄ डୗ։ൃͷ2"ͱͯ͠ ೖࣾͨࣗ͠ಈςετॳ৺ऀͷૣ͕ ձࣾʹࣗಈςετΛಋೖ͢Δ·Ͱͷ͓ ͱ࣮ࡍʹӡ༻ͯ͠ΈͯͲ͏͔ͩͬͨͷ͓Ͱ͋Δ
"VUJGZಋೖഎܠ ೖࣾͯؒ͠ͳࣾ͘ʹݺΕΔૣ &$αΠτͷ৽ن։ൃͷ ςετΛࣗಈԽͤͯ͞ खಈςετʹ͔͔ΔΛ ݮ͍ͨ͠ ʢ༁ɿ&&ςετΛࣗಈԽ͠ ͍ͨʣ
"VUJGZಋೖഎܠ ૣͷεϖοΫ • 2"ΤϯδχΞྺ • ࣗಈԽܦݧ΄΅ͳ͠ • ίʔυॻ͚ͳ͍ コードが書けない⾃分に⾃動化は無理だ・・・ と諦めていたテストエンジニア⼈⽣
डୗ։ൃձࣾͰςετࣗಈԽ ͬͯͰ͖Δͷʁ
डୗ։ൃձࣾͰςετࣗಈԽͰ͖Δͷʁ • ࣗಈԽͬͯظతʹΈͯԿӡ༻͢Δ͔Βίετݮʹ ͭͳ͕Δͷͱ͍͏ೝ͕ࣝ͋ͬͨ • ಋೖ·Ͱͷڥߏங४උʹίετ͕͔͔ΔΠϝʔδ ৽نҊ݅ೖΕସΘΓ͕ଟ͍डୗ։ൃͰͷ ࣗಈԽίετύϑΥʔϚϯε͕ѱ͍ͷͰʁʁʁ
ࣗಈԽʹ͍͍ͯΔςετΛߟ͑ͯΈͨ ࣗಈςετͷछྨ̏छྨ •୯ମςετ ˠϓϩάϥϚʔͷσόοά͚ςετ •౷߹ςετ ˠ୯ମςετͰ௨ͬͨϞδϡʔϧΛΈ߹ΘͤΔςετ •6*ςετ ˠ࣮ࡍʹར༻͢ΔγεςϜͷϢʔβʔϑϩʔʹԊͬͨςετ
ࣗಈԽʹ͍͍ͯΔςετΛߟ͑ͯΈͨ ࠓճͷࣗಈԽ ཁ6*ςετ •ػೳςετ • ίϯϙʔωϯτγεςϜͷػೳ༷ʹج͍࣮ͮͯࢪ͢Δςετ •ʢमਖ਼ʣ֬ೝςετ • मਖ਼֬ೝ͕͍ྃͯ͠Δͷ͔֬ೝ͢Δςετ •ճؼςετ
• ͕ܽؕ৽ͨʹೖΓࠐΜͩΓɺൃݴͨ͠Γ͠ͳ͍͜ͱΛ֬ೝ͢ΔͨΊ͢Ͱ ʹςετࡁΈͷϓϩάϥϜʹର࣮ͯ͠ࢪ͢Δςετ తʹର͢Δߦಈ͕࣮ࡍʹཁٻΛຬ͍ͨͯ͠Δ͔Λ֬ೝ͢Δʢը໘ϕʔεʣ
ࣗಈԽʹ͍͍ͯΔςετΛߟ͑ͯΈͨ • ࣗಈςετͰ༷มߋͳͲ͕͋ΔͱγφϦΦΛݟ ͢ඞཁ͕͋Δ • όάΛݕग़͢Δͷखಈςετͷํ͕ૣ͍ • ࣗಈςετ͕ࣦഊͨ࣌͠ʹݪҼڀ໌ʹ͕͔͔࣌ؒΔ ͭ·ΓόάΛݟ͚ͭΔతͷςετΑΓ όά͕ͳ͍͜ͱ֬ೝ͢ΔΛతʹ͍ͯ͠Δςε
τͷํ͕͍͍ͯΔ
·ͣϊʔίʔυͰ ճؼςετ͔Β ࣗಈςετΛಋೖͯ͠ΈΑ͏ʂ ͱ͍͏͜ͱͰ"VUJGZʹ͍ΔΓ߹͍ʹ ಋೖΛ૬ஊ͍͍ͤͯͨͩͨ͞
ͬͯΈͨ͜ͱ • ӡ༻อकϑΣʔζʹೖͬͨҊ݅Ͱ ϦϦʔεલͱϦϦʔεޙʹճؼςετΛ࣮ࢪ ˠ̎िؒʹ̍ճϦϦʔε͕ൃੜ͢ΔͷͰલͱޙʹ֬ೝςετΛ࣮ࢪ • ৽نߏஙҊ݅ͷ࠷ऴஈ֊Ͱͷ ϦϦʔεఆςετͰࣗಈԽΛಋೖ • $ISPNFͰಈ࡞୲อͨ͠ͷΛଟͰ֬ೝ
ˠಛʹ*&Ͱͷಈ࡞֬ೝ͕ґཔͰདྷΔ͜ͱ͕ଟ͍
࣮ࡍʹӡ༻ͯ͠ϛλ ̎िؒʹ̍ ϦϦʔεલޙʹςετΛ࣮ࢪ͢Δ͜ͱͰ ϦϦʔεఆࡐྉʹͳΔ ΫϦςΟΧϧύεΛ௨͍ͬͯΔͨΊॏେͳ ͕ى͖ͳ͘ͳͬͨ
࣮ࡍʹӡ༻ͯ͠ϛλ ࣮ࢪͨ͠ڥ͝ͱʹ݁Ռ͕ग़ΔͷͰ ௨ৗͷࣗಈςετΑΓ Λݕग़͍͢͠
࣮ࡍʹӡ༻ͯ͠ϛλ ςετڥͱͯ͠ *&&EHFඋ͞Ε͍ͯΔͷͰ ձࣾࢧڅͷ1$͕.BDͰ 8JOEPXTڥͰςετՄೳʂ ϦϞʔτϫʔΫͰςετՄೳʂ
"VUJGZʢςετࣗಈԽʣಋೖͯ͠ Α͔ͬͨ͜ͱ • ϦϦʔεલޙʹ࣮ࢪ͢Δ͜ͱͰ1+ͱͯ͠ͷ࣭ͷ҆৺ײ্͕͕ͬͨ • ςετॳ৺ऀඇΤϯδχΞͰѻ͍͘͢ಋೖ͘͢͠આ໌ ४උ͕ఆΑΓ͔ͬͨ • ̍ڥݟΔ͚ͩͰਫ਼Ұഋͩͬͨ͜ͱ͕ଟͰݟΕΔΑ͏ʹͳͬͨ •
ϦϞʔτͰग़͕ࣾݫ͍͠ͱ͖ʹଟΛ"VUJGZͰΔͱҠಈ࣌ؒݮʂ • ΞαʔγϣϯػೳΛ͏ͱදࣔ֬ೝΓ͍͢ʂ • ςετνʔϜ͕खಈͰΔ͕ݮͬͨ • ʙ͔͔ͬͯͨ࡞ۀ͕ʙͰऴΘΔΑ͏ʹͳͬͨ
"VUJGZʢςετࣗಈԽʣಋೖͯ͠ େมͩͬͨ͜ͱ • ςετ͕શͯύε͞ΕΔΑ͏ʹͳΔͨΊʹԿ͔τϥΠΞϯυ ΤϥʔΛ܁Γฦͨ͠ • SF$"15$)"ΛڬΜͩ߹ͳͲࣗಈԽͰ͖ͳ͍߹͋Δ • ଞͷࣗಈԽπʔϧΛಋೖׂ͠୲ΛͰ͖ΔΑ͏ʹͨ͠ •
Ҋ͕݅ऴྃ͢Δͱߏஙͨ͠ςετΛճ͢͜ͱ͕ͳ͘ͳΔ • ͜͜डୗ։ൃͰͷࣗಈԽͷ՝ • όά͕͋ͬͨͱ͖ʹݪҼੳखॱ֬ೝʹ࣌ؒΛཁ͢Δ • खಈςετͷ߹खॱόάΛϦΞϧλΠϜͰ֬ೝͰ͖Δ
ݕূ݁Ռ डୗձࣾͰςετࣗಈԽͰ खಈςετͷίετݮ͕Ͱ͖Δ
ࠓޙऔΓΈ͍ͨ͜ͱ • ސ٬ଆͱ݁ՌΛ࿈ܞͰ͖ΔΈͮ͘Γ • ݁Ռͷ࿈ܞೲͱͯ͠Ͳ͏"VUJGZΛར༻͍͔ͯ͘͠ • ฐࣾͰಋೖ࣮Λ૿ͯࣗ͠ಈԽͷྠΛ͛Δ • ճؼςετҎ֎Ͱͷࣗಈςετʢ"VUJGZʣͱͷ͖߹͍ ํΛݕ౼
• গਓͰΫΦϦςΟ͕ߴ͍ͷΛੜΈग़ͤΔΈ
࠷ޙʹ ίʔυ͕ॻ͚ͳ͍डୗ։ൃͰͦͦࣗಈԽʹ͍ͯͳ͍ڥͰ "VUJGZͱ͍͏πʔϧʹग़ձ͍ɺ ͣͭ͢͜͠Ͱ͋Γ·͕͢ςετͷࣗಈԽΛ͡Ί खಈςετͷΛݮ͢Δ͜ͱʹޭ͠·ͨ͠ɻ खಈςετઈରʹແ͘ͳΓ·ͤΜ͕ɺ ࣗಈςετΛಋೖ͢Δ͜ͱͰಉ͡Ͱखಈςετͷׂͷ෯Λ͛ͨΓ 2"ݟΕΔੈքΛ͛Δ͜ͱ͕Ͱ͖Δͱ࣮ײ͠·ͨ͠ɻ ςετΤϯδχΞͷํಉ͡ίʔυ͕ॻ͚ͳ͍2"ΤϯδχΞʹࠂ͙ ʮࣗಈԽΖ͏ͱࢥ͑Ͱ͖ΔͧʂఘΊΜͳʂʯ
͝੩ௌ ͋Γ͕ͱ͏͍͟͝·ͨ͠