$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
最近の関心事 / My recent interest
Search
muryoimpl
December 21, 2019
Programming
0
110
最近の関心事 / My recent interest
Kanazawa.rb meetup #88 の LT。テスティングフレームワークを読んで作ってみようかな、という話。
muryoimpl
December 21, 2019
Tweet
Share
More Decks by muryoimpl
See All by muryoimpl
Rubyで鍛える仕組み化プロヂュース力
muryoimpl
0
160
人魚とたわむれる
muryoimpl
0
29
Kanzawa.rbのLT大会を支える技術の裏側を変更する Ruby on Rails + Litestream 編
muryoimpl
0
1.3k
Kanazawa.rb LT大会用/kzlt コマンドの説明 2024/01版
muryoimpl
0
3k
kzltコマンドの新たなソリューションについて
muryoimpl
0
2.9k
俺とTODOアプリ~Linearの変~
muryoimpl
0
2.6k
POSIX文字クラスでの躓き
muryoimpl
0
2.3k
/kzlt コマンドとは
muryoimpl
0
970
meetup.kzrb.org の更新を考える 事前激闘編
muryoimpl
0
1.6k
Other Decks in Programming
See All in Programming
【卒業研究】会話ログ分析によるユーザーごとの関心に応じた話題提案手法
momok47
0
100
ELYZA_Findy AI Engineering Summit登壇資料_AIコーディング時代に「ちゃんと」やること_toB LLMプロダクト開発舞台裏_20251216
elyza
2
590
チームをチームにするEM
hitode909
0
370
AI前提で考えるiOSアプリのモダナイズ設計
yuukiw00w
0
180
0→1 フロントエンド開発 Tips🚀 #レバテックMeetup
bengo4com
0
350
Context is King? 〜Verifiability時代とコンテキスト設計 / Beyond "Context is King"
rkaga
10
1.4k
AIコーディングエージェント(NotebookLM)
kondai24
0
220
認証・認可の基本を学ぼう前編
kouyuume
0
270
AI時代を生き抜く 新卒エンジニアの生きる道
coconala_engineer
1
410
Tinkerbellから学ぶ、Podで DHCPをリッスンする手法
tomokon
0
140
Python札幌 LT資料
t3tra
6
1k
まだ間に合う!Claude Code元年をふりかえる
nogu66
5
890
Featured
See All Featured
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
120
Statistics for Hackers
jakevdp
799
230k
Navigating Weather and Climate Data
rabernat
0
51
GitHub's CSS Performance
jonrohan
1032
470k
How to Think Like a Performance Engineer
csswizardry
28
2.4k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.6k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.1k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.8k
So, you think you're a good person
axbom
PRO
0
1.8k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.3k
Discover your Explorer Soul
emna__ayadi
2
1k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Transcript
最近ひねりだした関心事 Kanazawa.rb meetup#88 2019/12/21 muryoimpl
それは今週の月曜日のことである。 そういえば最近仕事以外で Ruby でな んか書いてないなぁ… なんか書こうかな… さて…何を書こうかなぁ…
そうだ! テスティングフレームワークを書こう!
なぜにテスティングフレームワーク?
私もわかりません! なんとなく思い浮かんだんです…
後付けで考えてみた • 何かを置き換えよう!とかそんな壮大なことは考えていなくて、仕組みの理解とか、 実現方法とか知りたい。 • 機能追加のイメージがしやすくて、かつ、身近なもの、かつ、小さいもの ◦ 小さくないと、”かたち” になる前に飽きるんですよ …
(過去の屍を見ながら ) • いきなり RSpec, minitest, test-unit とか読み始めるのはハードル高いなぁ。なんか こうチュートリアル的なものないかな? ◦ ググった結果、なんかありそうだぞ〜 それで見つけたのがこれ ↓
https://ksylvest.com/posts/2018-08-01/building-a-testing-framework-similar-to-rspec-in-ruby
RSpec に似た Testing Framework を Ruby で書く • Specifier という名の
gem を作っていく初期の段階をコードと共に紹介されているも の • blog 上では、context, describe, it, expect(obj).to, equal を使って検証できるよう になるまでを扱っている。cli で実行もできる。 • これくらいから始めるのはよさげ • https://github.com/ksylvest/specifier では更に育てられていて、機能が追加され ている (let, color出力 etc) • これは写経してみたけど、さっくり書けるし、わかりやすかった
RSpec に似たものをみてみたのであれば次は… • xUnit 形式の Testing framework のチュートリアル的なものがあればやってみた い。=> ちょっとググったけど見つからない
• そういえば『テスト駆動開発』の二章が、Python だけど、まさに xUnit の実装を順を 追ってつくっていくもの => これをまず読んで考えよう • その後に minitest を追っていくつもり • RubyUnit http://suke.my.coocan.jp/ruby/rubyunit/index.html というものも見つけ たのだけど、minitest もそんなにコード量が多くないので、minitest を読むつもり
宿題 - 時間がなければ割愛 - • minitest のコードを読むぞ! • 次回の Kanazawa.rb
もくもく会までに動くものを作るぞ! ◦ もしこなかったら…そういうことです… • 自分のライブラリで自分のライブラリのテス (オッ誰か来たようだ