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.1k
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
58
スナックミーの開発はワクワクだらけ! / 2024-04-05
tamago3keran
0
150
アウトプットのハードルを下げた! / 2024-03-25
tamago3keran
0
370
ドメイン駆動設計 勉強会 〜 ドメインサービス編 〜 / 2024-03-05
tamago3keran
0
73
ドメイン駆動設計 勉強会 〜 エンティティ編 〜 / 2024-02-20
tamago3keran
0
79
ドメイン駆動設計 勉強会 〜 値オブジェクト編 〜 / 2024-02-06
tamago3keran
1
1.4k
スカウト返信率を倍にするためにやったこと / 2024-01-29
tamago3keran
2
970
Rails 経験者が FastAPI 本を読んで感じたこと / 2023-11-28
tamago3keran
0
1.3k
アウトプットのモチベーションはみんな違ってみんな良い! / 2023-10-06
tamago3keran
0
1.2k
Other Decks in Programming
See All in Programming
GitHubで育つ コラボレーション文化 : ニフティでのインナーソース挑戦事例 - 2024-12-16 GitHub Universe 2024 Recap in ZOZO
niftycorp
PRO
0
110
Fibonacci Function Gallery - Part 1
philipschwarz
PRO
0
220
KMP와 kotlinx.rpc로 서버와 클라이언트 동기화
kwakeuijin
0
180
Итераторы в Go 1.23: зачем они нужны, как использовать, и насколько они быстрые?
lamodatech
0
930
わたしの星のままで一番星になる ~ 出産を機にSIerからEC事業会社に転職した話 ~
kimura_m_29
0
190
103 Early Hints
sugi_0000
1
260
歴史と現在から考えるスケーラブルなソフトウェア開発のプラクティス
i10416
0
130
tidymodelsによるtidyな生存時間解析 / Japan.R2024
dropout009
1
810
今年やったこと最近やったこと2024
saito5656
0
100
ゆるやかにgolangci-lintのルールを強くする / Kyoto.go #56
utgwkk
2
440
アクターシステムに頼らずEvent Sourcingする方法について
j5ik2o
4
350
コンテナをたくさん詰め込んだシステムとランタイムの変化
makihiro
1
140
Featured
See All Featured
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
45
2.2k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
What's in a price? How to price your products and services
michaelherold
243
12k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
127
18k
Code Review Best Practice
trishagee
65
17k
Optimizing for Happiness
mojombo
376
70k
How STYLIGHT went responsive
nonsquared
96
5.2k
Learning to Love Humans: Emotional Interface Design
aarron
274
40k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5k
Rails Girls Zürich Keynote
gr2m
94
13k
How to train your dragon (web standard)
notwaldorf
88
5.7k
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/ スナックミーでは、「おやつと、世界を面白 く」していく、そんな活動を仕事として取り 組みたいエンジニアを募集しています。