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
780
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-05
tamago3keran
0
62
アウトプットのハードルを下げた! / 2024-03-25
tamago3keran
0
250
ドメイン駆動設計 勉強会 〜 ドメインサービス編 〜 / 2024-03-05
tamago3keran
0
30
ドメイン駆動設計 勉強会 〜 エンティティ編 〜 / 2024-02-20
tamago3keran
0
40
ドメイン駆動設計 勉強会 〜 値オブジェクト編 〜 / 2024-02-06
tamago3keran
1
530
スカウト返信率を倍にするためにやったこと / 2024-01-29
tamago3keran
2
760
Rails 経験者が FastAPI 本を読んで感じたこと / 2023-11-28
tamago3keran
0
540
アウトプットのモチベーションはみんな違ってみんな良い! / 2023-10-06
tamago3keran
0
860
PC が変わっても使い慣れた Neovim で すぐに開発を始める仕組み / 2023-07-25
tamago3keran
1
900
Other Decks in Programming
See All in Programming
二郎系ラーメンのコールで学ぶ AST 解析
memory1994
PRO
7
1.6k
コーンフレークから始める モデリング会話入門
ogurotakayuki
0
280
0→1と1→10の狭間で Javaという技術選定を振り返る/Reflecting on the Decision to Choose Java Between Scaling from 0 to 1 and 1 to 10
jaguar_imo
2
360
両面どころかインフラもTSでできるよ ~ 全方位TypeScriptによるプロダクト開発 ~
myfinder
9
3.2k
1BRC--Nerd Sniping the Java Community
gunnarmorling
0
300
"config" ってなんだ? / What is "config"?
okashoi
0
210
ADRを一年運用してみた/adr_after_a_year
hanhan1978
7
2.2k
OpenTelemetry のサービスという概念について
azukiazusa1
2
1.1k
TYPO3 v13 – The road to LTS: What's new and new APIs
luisasofie_xoxo
0
180
コードレビューで学ぶ!Kotlinオブジェクト指向デザインパターン
akkie76
2
170
品質とスピードを両立: TypeScriptの柔軟な型システムをバックエンドで活用する
kosui
8
2.2k
try! Swift Tokyo 初参加報告LT
hinakko2
0
190
Featured
See All Featured
No one is an island. Learnings from fostering a developers community.
thoeni
14
2.1k
Docker and Python
trallard
33
2.7k
The Pragmatic Product Professional
lauravandoore
24
5.8k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
240
1.2M
Designing for humans not robots
tammielis
247
25k
Raft: Consensus for Rubyists
vanstee
132
6.2k
Designing with Data
zakiwarfel
95
4.8k
Creatively Recalculating Your Daily Design Routine
revolveconf
209
11k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
321
20k
Optimizing for Happiness
mojombo
370
69k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
9
8.3k
Build your cross-platform service in a week with App Engine
jlugia
225
17k
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/ スナックミーでは、「おやつと、世界を面白 く」していく、そんな活動を仕事として取り 組みたいエンジニアを募集しています。