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
GitHub Copilot で効率よくユニットテストが書ける / 2023-04-14
Search
Takuma Yamamoto
April 14, 2023
Programming
0
1.2k
GitHub Copilot で効率よくユニットテストが書ける / 2023-04-14
https://zenn.dev/tamago3keran/articles/81d47ab813259f
Takuma Yamamoto
April 14, 2023
Tweet
Share
More Decks by Takuma Yamamoto
See All by Takuma Yamamoto
ドメイン駆動設計 勉強会 〜 リポジトリ編 〜 / 2024-04-23
tamago3keran
0
100
スナックミーの開発はワクワクだらけ! / 2024-04-05
tamago3keran
0
180
アウトプットのハードルを下げた! / 2024-03-25
tamago3keran
0
400
ドメイン駆動設計 勉強会 〜 ドメインサービス編 〜 / 2024-03-05
tamago3keran
0
110
ドメイン駆動設計 勉強会 〜 エンティティ編 〜 / 2024-02-20
tamago3keran
0
120
ドメイン駆動設計 勉強会 〜 値オブジェクト編 〜 / 2024-02-06
tamago3keran
1
1.8k
スカウト返信率を倍にするためにやったこと / 2024-01-29
tamago3keran
3
1.1k
Rails 経験者が FastAPI 本を読んで感じたこと / 2023-11-28
tamago3keran
0
1.8k
アウトプットのモチベーションはみんな違ってみんな良い! / 2023-10-06
tamago3keran
0
1.4k
Other Decks in Programming
See All in Programming
開発生産性を上げるための生成AI活用術
starfish719
3
1.1k
iOSエンジニア向けの英語学習アプリを作る!
yukawashouhei
0
190
私達はmodernize packageに夢を見るか feat. go/analysis, go/ast / Go Conference 2025
kaorumuta
2
570
タスクの特性や不確実性に応じた最適な作業スタイルの選択(ペアプロ・モブプロ・ソロプロ)と実践 / Optimal Work Style Selection: Pair, Mob, or Solo Programming.
honyanya
3
180
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
370
Serena MCPのすすめ
wadakatu
4
1k
Railsだからできる 例外業務に禍根を残さない 設定設計パターン
ei_ei_eiichi
0
920
私はどうやって技術力を上げたのか
yusukebe
43
19k
Claude Agent SDK を使ってみよう
hyshu
0
880
Introduce Hono CLI
yusukebe
5
2.1k
Swift Concurrency - 状態監視の罠
objectiveaudio
2
530
Things You Thought You Didn’t Need To Care About That Have a Big Impact On Your Job
hollycummins
0
230
Featured
See All Featured
Building a Modern Day E-commerce SEO Strategy
aleyda
44
7.8k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3k
What's in a price? How to price your products and services
michaelherold
246
12k
Mobile First: as difficult as doing things right
swwweet
224
10k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Typedesign – Prime Four
hannesfritz
42
2.8k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Six Lessons from altMBA
skipperchong
29
4k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
22k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
870
Embracing the Ebb and Flow
colly
88
4.8k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Transcript
Takuma Yamamoto GitHub Copilot で 効率よくユニットテストが書ける
BIOGRAPHY あなたは誰ですか? 技術スタック SNS 趣味 • バックエンド: Ruby on Rails
• フロントエンド: React • アプリ: React Native Takuma Yamamoto Work at snaq.me From Miyazaki • https://github.com/tamago3keran • https://twitter.com/yamataku3831 • https://qiita.com/tamago3keran • https://zenn.dev/tamago3keran • おやつ • サウナ • アニメ ...
TODAY’s TOPIC GitHub Copilot で効率よくユニットテストが書けることを紹介
TODAY’s GOAL GitHub Copilot 導入のきっかけに 導入事例を知る 導入へのきっかけ GitHub Copilot の導入によって、ど
ういったメリットを享受できるか、 デモも合わせて紹介します。 ご自身で開発しているプロダクトに 導入してみようかなと、考えるきっ かけになれば嬉しいです。
そもそも GitHub Copilot とは何ですか? What is GitHub Copilot?
INTRODUCTION AI による開発サポートツール Your AI pair programmer GitHub Copilot uses
the OpenAI Codex to suggest code and entire functions in real-time, right from your editor. 引用元: https://github.com/features/copilot GitHub Copilot とは、 OpenAI が開発した人工 知能モデル「OpenAI Codex」を使用し、コー ドや機能をサジェストしてくれる "あなたのAI ペアプログラマー" です。
GitHub Copilot はどのようにして使用しますか? How to use GitHub Copilot?
公式ドキュメントに沿って、自身のアカウントにて GitHub Copilot を有効にします。 (公式ドキュメント: https://docs.github.com/en/copilot/quickstart ) 有料のサービスではありますが、2023年4月現在60日間のフリートライアルがあります。 GETTING STARTED
自身のアカウントで GitHub Copilot を有効にする 引用元:https://github.com/features/copilot
公式ドキュメントに沿って、プラグインをエディタに導入します。 (公式ドキュメント: https://docs.github.com/ja/copilot/getting-started-with-github-copilot) 2023年4月現在、以下のエディタに対応したプラグインが提供されています。 GETTING STARTED エディタにプラグインを導入する 引用元:https://github.com/features/copilot
GitHub Copilot を使ったテスト実装のデモ Demonstration
DEMONSTRATION - Ruby GitHub Copilot の力を借りる前にちょっとだけ準備 user_test.rb user.rb まずはコメントでどういったテストを書きたいのか記載します。 そして、参考になるテストコードをちょっとだけ書いておきます。
DEMONSTRATION - Ruby GitHub Copilot に少しずつサジェストしてもらう neovim ではインサートモードに入って、少し待つとコードがサジェストされます。 タブを押すとサジェストされたコードが反映されます。
DEMONSTRATION - Ruby GitHub Copilot に他の候補も表示してもらう また GitHub Copilot は複数の候補を持っている場合があります。
パネルを開くと、候補が複数表示され、適切なものを選択するとそれがコードに反映されます。
DEMONSTRATION - JavaScript GitHub Copilot の力を借りる前にちょっとだけ準備 generation_text.test.js generation_text.js まずはコメントでどういったテストを書きたいのか記載します。 そして、参考になるテストコードをちょっとだけ書いておきます。
DEMONSTRATION - JavaScript GitHub Copilot に少しずつサジェストしてもらう こちらもインサートモードに入って、コードがサジェストされるのを少し待ちます。 タブを押してサジェストされたコードを反映しましょう。
DEMONSTRATION - JavaScript GitHub Copilot に他の候補も表示してもらう パネルを開いてみましたが、今回はひとつしか表示されませんでした。 候補を選択して Enter を押すと、一気に複数行のコードが反映されます。
終わりに... Impression
• 公式で紹介されている通り、 "Your AI pair programmer" であることを実感。 • 「全てのコードを代わりに書いてくれる」というわけではない。 •
とても優秀な相棒が一緒に開発してくれている感。 • GitHub Copilot X が出るなど、今後も進化していくツールであるはず。 • アップデートをキャッチアップして、よりスピーディーな開発を目指したい。 IMPRESSION GitHub Copilot を使ってみて...
エンジニア募集中です! Recruitment
RECRUITMENT We are Hiring! スナックミー 採用 https://team.snaqme.com/ スナックミーでは、「おやつと、世界を面白 く」していく、そんな活動を仕事として取り 組みたいエンジニアを募集しています。