Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
最近の関心事 / My recent interest
muryoimpl
December 21, 2019
Programming
0
30
最近の関心事 / My recent interest
Kanazawa.rb meetup #88 の LT。テスティングフレームワークを読んで作ってみようかな、という話。
muryoimpl
December 21, 2019
Tweet
Share
More Decks by muryoimpl
See All by muryoimpl
/kzlt コマンドとは
muryoimpl
0
250
meetup.kzrb.org の更新を考える 事前激闘編
muryoimpl
0
700
meetup.kzrb.org の更新を 考える ゆるふわ編
muryoimpl
0
700
最近のデスク周りの diff / kzrb meetup#108-2
muryoimpl
0
13
ショートカットキーのショートカットキー / shortcut keys of shortcut keys
muryoimpl
0
50
私のキーボード遍歴 / My keyboard history
muryoimpl
0
39
続・開発環境晒す会 ~ MacOS 編 ~ / kzrb_meetup#108
muryoimpl
0
1.5k
開発環境&shell芸晒す会 / kzrb_meetup#107
muryoimpl
0
1.7k
テキストエディタを知る / Getting to Know a Text Editor
muryoimpl
0
55
Other Decks in Programming
See All in Programming
Amazon QuickSightのアップデート -re:Invent 2022の復習&2022年ハイライト-
shogo452
0
260
OSSから学んだPR Descriptionの書き方
fugakkbn
4
140
ipa-medit: Memory search and patch tool for IPA without Jailbreaking/ipa-medit-bh2022-europe
tkmru
0
130
AWSにおける標的型Bot対策
hacomono
0
450
ちょうぜつ改め21世紀ふつうのソフトウェア設計
tanakahisateru
7
6.6k
2023年にクル(かもしれない)通信ミドルウェア技術(仮)
s_hosoai
0
220
はじめての「R」
masaha03
0
110
Gradle build: The time is now
nonews
1
500
なぜRubyコミュニティにコミットするのか?
luccafort
0
340
OIDC仕様に準拠した Makuake ID連携基盤構築の裏側
ymtdzzz
0
610
10年以上続くプロダクトの フロントエンド刷新プロジェクトのふりかえり
yotahada3
2
360
Micro Frontends with Module Federation @MicroFrontend Summit 2023
manfredsteyer
PRO
0
660
Featured
See All Featured
Designing for humans not robots
tammielis
245
24k
Fantastic passwords and where to find them - at NoRuKo
philnash
32
1.9k
jQuery: Nuts, Bolts and Bling
dougneiner
57
6.6k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
31
20k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
236
1.1M
The Illustrated Children's Guide to Kubernetes
chrisshort
22
43k
How GitHub (no longer) Works
holman
298
140k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
109
16k
Gamification - CAS2011
davidbonilla
75
4.1k
Intergalactic Javascript Robots from Outer Space
tanoku
261
26k
Building a Scalable Design System with Sketch
lauravandoore
451
31k
Scaling GitHub
holman
453
140k
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
もくもく会までに動くものを作るぞ! ◦ もしこなかったら…そういうことです… • 自分のライブラリで自分のライブラリのテス (オッ誰か来たようだ