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
最近の関心事 / My recent interest
Search
muryoimpl
December 21, 2019
Programming
0
83
最近の関心事 / My recent interest
Kanazawa.rb meetup #88 の LT。テスティングフレームワークを読んで作ってみようかな、という話。
muryoimpl
December 21, 2019
Tweet
Share
More Decks by muryoimpl
See All by muryoimpl
Kanzawa.rbのLT大会を支える技術の裏側を変更する Ruby on Rails + Litestream 編
muryoimpl
0
540
Kanazawa.rb LT大会用/kzlt コマンドの説明 2024/01版
muryoimpl
0
2.6k
kzltコマンドの新たなソリューションについて
muryoimpl
0
2.6k
俺とTODOアプリ~Linearの変~
muryoimpl
0
2.2k
POSIX文字クラスでの躓き
muryoimpl
0
2.1k
/kzlt コマンドとは
muryoimpl
0
900
meetup.kzrb.org の更新を考える 事前激闘編
muryoimpl
0
1.5k
meetup.kzrb.org の更新を 考える ゆるふわ編
muryoimpl
0
1.5k
最近のデスク周りの diff / kzrb meetup#108-2
muryoimpl
0
24
Other Decks in Programming
See All in Programming
PHPでお金を扱う時、終わりのない 謎の1円調査の旅にでなくて済む方法
nakka
4
1.4k
ノーコードツールの裏側につきまとう「20分岐」との戦い
oguemon
0
200
Develop Faster With FrankenPHP
dunglas
2
3.1k
複数ドメインに散らばってしまった画像…! 運用中のPHPアプリに後からCDNを導入する…!
suguruooki
0
450
これだけは知っておきたいクラス設計の基礎知識 version 2
masuda220
PRO
23
5.1k
新卒から4年間、20年もののWebサービスと 向き合って学んだソフトウェア考古学
oguri
8
7.1k
アプリを起動せずにアプリを開発して品質と生産性を上げる
ishkawa
0
2.3k
パスキーのすべて / 20250324 iddance Lesson.5
kuralab
0
140
ReactFlow への移行で実現するユーザー体験と開発体験の向上
j9141997
0
150
AIコードエディタの基盤となるLLMのFlutter性能評価
alquist4121
0
190
SLI/SLOの設定を進めるその前に アラート品質の改善に取り組んだ話
tanden
2
790
Kamal 2 – Get Out of the Cloud
aleksandrov
1
150
Featured
See All Featured
Code Reviewing Like a Champion
maltzj
522
39k
Writing Fast Ruby
sferik
628
61k
Building an army of robots
kneath
304
45k
The Cult of Friendly URLs
andyhume
78
6.3k
Practical Orchestrator
shlominoach
186
10k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.6k
Automating Front-end Workflow
addyosmani
1369
200k
Fontdeck: Realign not Redesign
paulrobertlloyd
83
5.5k
Designing for humans not robots
tammielis
251
25k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
102
19k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
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
もくもく会までに動くものを作るぞ! ◦ もしこなかったら…そういうことです… • 自分のライブラリで自分のライブラリのテス (オッ誰か来たようだ