Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
GitHub Actions is Fun ʹͳ͍ͬͯͬͨ 2024/06/28 Shinjuku.rb#93 ͖ͳͷհLTେձ @hatsu_38
Slide 2
Slide 2 text
ࣗݾհ • ͭ͞Μ(@hatsu_38) • Ruby 5 • GitHub Actionsָ͍͠ • SHE Inc. • ອը📚
Slide 3
Slide 3 text
ٕज़ελοΫ • API,GraphQLαʔόʔ: Ruby on Rails - RSpec • AdminͷUI(/adminϑΥϧμ): TypeScript/Next.js - RSpec(Capybara)ͱJest • Ϣʔβʔը໘ͷUI(/frontend-nextϑΥϧμ): TypeScript/Next.js - RSpec(Capybara)ͱ Jest • CI: GitHub Actions
Slide 4
Slide 4 text
Flaky Test ͳ͍ͨ͘͠Μ͚ͩͲ…
Slide 5
Slide 5 text
CI্Ͱ͔͠ൃੜ͠ͳ͍Flakyͱૺ۰
Slide 6
Slide 6 text
Artifactsʹ͋Δ Fail࣌ͷεΫγϣΛDLͯ֬͠ೝ
Slide 7
Slide 7 text
εΫγϣݟͯΘ͔ΒΜ🤯
Slide 8
Slide 8 text
ͦͦ֬ೝ͕໘😵💫 Artifactsʹ͋Δ Fail࣌ͷεΫγϣΛDLͯ֬͠ೝ…
Slide 9
Slide 9 text
͔ͯCI͍🥱
Slide 10
Slide 10 text
GitHub ActionsΖ͏
Slide 11
Slide 11 text
Allure Report • ςετ݁ՌΛྑ͍ײ͡ʹϨϙʔτ͢Δͭ • ςετͷ • ΧόϨοδ • ςετ࣌ؒ • ςετ݁Ռཤྺ • εΫγϣͱ͔ඥ͚ΒΕΔ
Slide 12
Slide 12 text
Allure Report • bundle exec rspec —format AllureRspecFormatter • ςετͷใΛjsonʹग़ྗ • allure generate allure_results/* -o tmp/allure_report • ςετ݁ՌΛHTMLʹม • ϓϧϦΫΤετຖʹςετ݁ՌͷHTMLΛVercelʹσϓϩΠ • ςετࣦഊ࣌ʹVercelͷURLΛBot͕ίϝϯτͰڭ͑ͯ͘ΕΔ
Slide 13
Slide 13 text
PRຖʹςετ݁ՌΛVercelʹσϓϩΠ
Slide 14
Slide 14 text
ςετࣦഊ࣌ʹVercelͷURLΛBot͕ίϝϯτ
Slide 15
Slide 15 text
ͦͦ֬ೝ͕໘😵💫 Artifactsʹ͋Δ Fail࣌ͷεΫγϣΛDLͯ֬͠ೝ
Slide 16
Slide 16 text
Bot͕ڭ͑ͯ͘ΕΔURLΛ֬ೝ✨
Slide 17
Slide 17 text
εΫγϣݟͯΘ͔ΒΜ🤯
Slide 18
Slide 18 text
capybara-playwright-driver • playwrightͱ͍͏ςετϑϨʔϜϫʔΫΛcapybara͔Β͑Δ • εΫγϣ͚ͩ͡Όͳ͘ςετ࣌ͷಈը͕ݟΒΕΔ • ։ൃऀπʔϧʹࡌͬͯΔΑ͏ͳωοτϫʔΫͱ͔ݟΒΕΔ • Allure Report্ͰݟΒΕΔ
Slide 19
Slide 19 text
rails 7.1 support playwright driver
Slide 20
Slide 20 text
ಈը͕ݟΒΕΔ
Slide 21
Slide 21 text
ωοτϫʔΫτϨʔε͕ݟΒΕΔ
Slide 22
Slide 22 text
εΫγϣݟͯΘ͔ΒΜ🤯
Slide 23
Slide 23 text
ಈըͱωοτϫʔΫτϨʔε Λݟͯղܾ✨
Slide 24
Slide 24 text
No content
Slide 25
Slide 25 text
next build͕͍ • Ϣʔβʔը໘: next buildʹ10 → e2eςετ10(20ฒྻ) • Adminը໘: next buildʹ5 → e2eςετ5(15ฒྻ)
Slide 26
Slide 26 text
next build࣌ؒΛݮΒͦ͏
Slide 27
Slide 27 text
next buildʹ Ωϟογϡ͕ΘΕ͍ͯͳ͍
Slide 28
Slide 28 text
next buildʹΩϟογϡ͕ΘΕ͍ͯͳ͍ • .next/cacheΛGitHub ActionsͷΩϟογϡʹอଘͯ͠Build࣌ʹར༻ • APIͷมߋͷΈͰϑϩϯτʹมߋͳ͍߹ɺBuild͠ͳ͍͍ͯ͘ • buildͰੜ͞ΕΔ.next/ΛCache͔ΒRestoreͯ͠࠶ར༻
Slide 29
Slide 29 text
݁Ռ #VJME࣌ؒ -JLFT "ENJO ZBSOMPDLʹมߋ͋Δ߹ NT N ZBSOMPDLʹมߋͳ͠ ϑϩϯτʹมߋ͋Γ NT NT มߋແ͠ T T
Slide 30
Slide 30 text
#VJME࣌ؒ -JLFT "ENJO ZBSOMPDLʹมߋ͋Δ߹ NT N ZBSOMPDLʹมߋͳ͠ ϑϩϯτʹมߋ͋Γ NT NT มߋແ͠ T T ݁Ռ 1/2 1/18 1/2 1/17
Slide 31
Slide 31 text
No content
Slide 32
Slide 32 text
Ωϟογϡར༻ͯ࣌ؒ͠Λ1/2ʹ✨
Slide 33
Slide 33 text
GitHub Actions ָ͍͠