JSもついに最初の言語として推奨できるようになったぞ!
というBusterJSの紹介

自己紹介

はじめて覚えるのに適した言語は何か?

昔からよく語られる話題ですが、最近だとJSも入ってくるようになりましたね

ただ、本当にJSは「はじめて覚えるのに適した言語」なのでしょうか?

「はじめて覚えるのに適した言語」の条件

「はじめて覚えるのに適した言語」の条件

「はじめて覚えるのに適した言語」の条件

「はじめて覚えるのに適した言語」の条件

「はじめて覚えるのに適した言語」の条件

「はじめて覚えるのに適した言語」の条件

「はじめて覚えるのに適した言語」の条件

「その言語で完結してる」

JSは完結しているのか?

確かにJSの完結性は高くなった

しかし、「テスト」

今までJSのテストには他の言語のサポートが必要だった

(もちろんこれ以外にも方法はあるし、JSで完結する方法もあるけど、結局このへんに行き着く)

今までJSのテストには他の言語のサポートが必要だった

テスト「まで」はいいけど、テストに行き着いたら他言語の概念、仕組みを学ぶ必要がある

これから学ぶ人に「いい方法を使うには別の言語を使う必要があります」なんて言うのか?

PHPを普段使ってて、Dを溺愛してる場合はどうすればいい?

BusterJS

TDDJS本、SinonJS書いた人が作ってる、Swarm系JavaScriptテストフレームワーク

node.js製で設定ファイル、extensionもJSで書ける

つまりJSが書ければテストフレームワークの拡張もできる

これでついにJSも最初の言語として推奨できるようになったぞ!という話

おしまい

時間があれもう一つ

SinonさんマジSinonでテストが捗る話

自分的JSテスト関連技術の分類

最近は中間部分が熱いですが、個人的に一番重要だと思うのは一番下の部分

Sinon.js

Spy, Stub, FakeTimer, FakeServer

「とりあえずざっくりテスト」をやるのに超重要

「全体が無名関数に囲まれてて、ユーザイベントで発動して、サーバから値取ったあとに、JSのアニメーションでCSSを変更する」

みたいなコードを「とりあえずざっくり」テストできるようにしてくれる

しかもテストをかなりDRYに書ける

詳しくは本家のスライドをどうぞ

おわり