Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
テスト用ライブラリ power-assert | PDF
[go: Go Back, main page]

SlideShare a Scribd company logo
テスト用ライブラリ
power-assert
和田 卓人 (a.k.a id:t-wada or @t_wada)
May 29, 2014 @ JSオジサン #2
和田 卓人
id: t-wada
@t_wada
github: twada
テスト書いてますか?
http://twitpic.com/dzgwk8
沢山あって難しそう...
http://www.slideshare.net/teppeis/javascript-testwhywhathow/33
覚えることも多そう...
https://twitter.com/mizchi/status/457533802244362241
33メソッド!?
http://azu.github.io/slide/sakurajs/power-assert.html#/3azu さん調べ
アサーションライブラリの
不毛な軍拡競争は
何かがおかしい...
そもそも
assert の情報量が多
ければいいのでは?
power-assert
https://github.com/twada/power-assert
デモ
assert(typeof item.id === 'strong')
| | | |
| | | false
| | "hoge"
| Item{id:"hoge"}
"string"
--- [string] 'strong'
+++ [string] typeof item.id
@@ -1,6 +1,6 @@
str
-o
+i
ng
テスト失敗がこのように出力されます
良いインタフェースとは次の2つの条件
を満たすインタフェース
•正しく使用する方が操作ミスをする
より簡単
•誤った使い方をすることが困難
きのこ53: 正しい使い方を簡単
に、誤った使い方を困難に
7 2
"The Magical Number Seven, Plus or Minus Two: Some Limits on Our Capacity for Processing Information"
assert(actual)
assert.deepEqual(actual,expected)
assert.notDeepEqual(actual,expected)
3つ覚えればテストは書ける
覚えることは少なく、かつ
テスト失敗時の情報は多く
何もなければ黙るのみ
落ちるときはやかましく
テストライブラリの競争は
語彙の繁栄と暴走を招いた
power-assert は
コードの復権
テスト書きましょう!
使い方
http://efcl.info/2014/0406/res3809/
http://efcl.info/2014/0411/res3820/
新機能
built with
browserify
依存ライブラリを同梱したバンドルを配布
BinaryExpression
string diff
assert(typeof item.id === 'strong')
| | | |
| | | false
| | "hoge"
| Item{id:"hoge"}
"string"
--- [string] 'strong'
+++ [string] typeof item.id
@@ -1,6 +1,6 @@
str
-o
+i
ng
BinaryExpression の右辺左辺を diff
デバッガ連携
SourceMap によるデバッガ連携
Special Thanks to
@azu_re さん
@vvakame さん
ご清聴ありがとうございました
power-assert
https://github.com/twada/power-assert

More Related Content

PPTX
今こそ知りたいSpring Batch(Spring Fest 2020講演資料)
NTT DATA Technology & Innovation
 
PDF
インフラエンジニアの綺麗で優しい手順書の書き方
Shohei Koyama
 
PDF
大規模フロントエンドのクリーンアーキテクチャ化 ~ 年間売上1,000億円企業モノタロウの取組み ~
株式会社MonotaRO Tech Team
 
PDF
実運用して分かったRabbit MQの良いところ・気をつけること #jjug
Yahoo!デベロッパーネットワーク
 
PDF
ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43
Preferred Networks
 
PDF
シリコンバレーの「何が」凄いのか
Atsushi Nakada
 
PDF
テスト文字列に「うんこ」と入れるな
Kentaro Matsui
 
PDF
Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)
NTT DATA Technology & Innovation
 
今こそ知りたいSpring Batch(Spring Fest 2020講演資料)
NTT DATA Technology & Innovation
 
インフラエンジニアの綺麗で優しい手順書の書き方
Shohei Koyama
 
大規模フロントエンドのクリーンアーキテクチャ化 ~ 年間売上1,000億円企業モノタロウの取組み ~
株式会社MonotaRO Tech Team
 
実運用して分かったRabbit MQの良いところ・気をつけること #jjug
Yahoo!デベロッパーネットワーク
 
ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43
Preferred Networks
 
シリコンバレーの「何が」凄いのか
Atsushi Nakada
 
テスト文字列に「うんこ」と入れるな
Kentaro Matsui
 
Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)
NTT DATA Technology & Innovation
 

What's hot (20)

PDF
Stargz Snapshotter: イメージのpullを省略しcontainerdでコンテナを高速に起動する
Kohei Tokunaga
 
PDF
「PdMと考えるQAとプロダクトマネジメント」
大貴 蜂須賀
 
PDF
実践イカパケット解析
Yuki Mizuno
 
PDF
ビジネスパーソンのためのDX入門講座エッセンス版
Tokoroten Nakayama
 
PDF
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
Takuto Wada
 
PDF
マイクロにしすぎた結果がこれだよ!
mosa siru
 
PPTX
ぱぱっと理解するSpring Cloudの基本
kazuki kumagai
 
PDF
Androidの新ビルドシステム
l_b__
 
PDF
ドメイン駆動設計サンプルコードの徹底解説
増田 亨
 
PPTX
WayOfNoTrouble.pptx
Daisuke Yamazaki
 
PDF
ITエンジニアのための英語勉強法
Etsuji Nakai
 
PDF
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
Preferred Networks
 
PDF
Fluentdのお勧めシステム構成パターン
Kentaro Yoshida
 
PDF
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
Amazon Web Services Japan
 
PDF
Lean coffee
Takeshi Arai
 
PPTX
最近のやられアプリを試してみた
zaki4649
 
PDF
SharePoint Online を JavaScript でイジる。
Hirofumi Ota
 
PDF
BuildKitの概要と最近の機能
Kohei Tokunaga
 
PPTX
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
NTT DATA Technology & Innovation
 
PDF
コンテナ未経験新人が学ぶコンテナ技術入門
Kohei Tokunaga
 
Stargz Snapshotter: イメージのpullを省略しcontainerdでコンテナを高速に起動する
Kohei Tokunaga
 
「PdMと考えるQAとプロダクトマネジメント」
大貴 蜂須賀
 
実践イカパケット解析
Yuki Mizuno
 
ビジネスパーソンのためのDX入門講座エッセンス版
Tokoroten Nakayama
 
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
Takuto Wada
 
マイクロにしすぎた結果がこれだよ!
mosa siru
 
ぱぱっと理解するSpring Cloudの基本
kazuki kumagai
 
Androidの新ビルドシステム
l_b__
 
ドメイン駆動設計サンプルコードの徹底解説
増田 亨
 
WayOfNoTrouble.pptx
Daisuke Yamazaki
 
ITエンジニアのための英語勉強法
Etsuji Nakai
 
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
Preferred Networks
 
Fluentdのお勧めシステム構成パターン
Kentaro Yoshida
 
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
Amazon Web Services Japan
 
Lean coffee
Takeshi Arai
 
最近のやられアプリを試してみた
zaki4649
 
SharePoint Online を JavaScript でイジる。
Hirofumi Ota
 
BuildKitの概要と最近の機能
Kohei Tokunaga
 
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
NTT DATA Technology & Innovation
 
コンテナ未経験新人が学ぶコンテナ技術入門
Kohei Tokunaga
 
Ad

Viewers also liked (20)

PDF
かすたむ!
鈴木 安美
 
PDF
JSと仲良くなるための心得
鈴木 安美
 
PDF
JSRelでlocalStorageを使って 完全オフラインなブラウザアプリ@JSおじさん #2
pandeiro245
 
PDF
Java script関数コールの追跡
Keiichi Kobayashi
 
PDF
JSとKinectさん
鈴木 安美
 
PDF
みんなが調べないJS調べてみた JSオジサン#2
Kenichi Kanai
 
PDF
設計は相談だ
鈴木 安美
 
PPTX
君よ知るや JScript.NET
彰 村地
 
PDF
power-assert in JavaScript
Takuto Wada
 
PDF
Reviewing RESTful Web Apps
Takuto Wada
 
PDF
私にとってのテスト
Takuto Wada
 
PDF
unassert - encourage reliable programming by writing assertions in production
Takuto Wada
 
PDF
テストを書く文化を育てる戦略と戦術
Takuto Wada
 
PDF
Test Yourself - テストを書くと何がどう変わるか
Takuto Wada
 
PDF
TDD のこころ @ OSH2014
Takuto Wada
 
PDF
OSS についてあれこれ
Takuto Wada
 
PDF
組織にテストを書く文化を根付かせる戦略と戦術
Takuto Wada
 
PDF
20140529 JS Ojisan #2 LT あの「note」はAngular.js
Shoei Takamaru
 
PDF
JSオジサン openframeworks emscripten
minoru nakanou
 
PDF
OSS活動の活発さと評価の関係について
Takuto Wada
 
かすたむ!
鈴木 安美
 
JSと仲良くなるための心得
鈴木 安美
 
JSRelでlocalStorageを使って 完全オフラインなブラウザアプリ@JSおじさん #2
pandeiro245
 
Java script関数コールの追跡
Keiichi Kobayashi
 
JSとKinectさん
鈴木 安美
 
みんなが調べないJS調べてみた JSオジサン#2
Kenichi Kanai
 
設計は相談だ
鈴木 安美
 
君よ知るや JScript.NET
彰 村地
 
power-assert in JavaScript
Takuto Wada
 
Reviewing RESTful Web Apps
Takuto Wada
 
私にとってのテスト
Takuto Wada
 
unassert - encourage reliable programming by writing assertions in production
Takuto Wada
 
テストを書く文化を育てる戦略と戦術
Takuto Wada
 
Test Yourself - テストを書くと何がどう変わるか
Takuto Wada
 
TDD のこころ @ OSH2014
Takuto Wada
 
OSS についてあれこれ
Takuto Wada
 
組織にテストを書く文化を根付かせる戦略と戦術
Takuto Wada
 
20140529 JS Ojisan #2 LT あの「note」はAngular.js
Shoei Takamaru
 
JSオジサン openframeworks emscripten
minoru nakanou
 
OSS活動の活発さと評価の関係について
Takuto Wada
 
Ad

More from Takuto Wada (19)

PDF
power-assert, mechanism and philosophy
Takuto Wada
 
PDF
アジャイルサムライの次に読む技術書
Takuto Wada
 
PDF
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
Takuto Wada
 
PDF
SQLアンチパターン - 開発者を待ち受ける25の落とし穴
Takuto Wada
 
PDF
愛せないコードを書くには人生はあまりにも短い
Takuto Wada
 
PDF
ペアプログラミング ホントのところ
Takuto Wada
 
PDF
RESTful Web アプリの設計レビューの話
Takuto Wada
 
PDF
例外設計における大罪
Takuto Wada
 
PDF
TDDBC お題
Takuto Wada
 
PDF
DevLOVE DDDBC
Takuto Wada
 
PDF
TDDBC Fukuoka Day1
Takuto Wada
 
PDF
js テスト放浪記
Takuto Wada
 
PDF
xUTP Chapter19 (2). Testcase Class
Takuto Wada
 
PDF
xUTP Chapter26. Dependency Injection
Takuto Wada
 
PDF
xUTP Chapter27 Generated Value
Takuto Wada
 
PDF
The only one big thing every programmer should know
Takuto Wada
 
PDF
10+1 Things you should know about JavaScript testing
Takuto Wada
 
PDF
TDD のこころ
Takuto Wada
 
PDF
Tochigi Test-no-Kaigi position paper
Takuto Wada
 
power-assert, mechanism and philosophy
Takuto Wada
 
アジャイルサムライの次に読む技術書
Takuto Wada
 
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
Takuto Wada
 
SQLアンチパターン - 開発者を待ち受ける25の落とし穴
Takuto Wada
 
愛せないコードを書くには人生はあまりにも短い
Takuto Wada
 
ペアプログラミング ホントのところ
Takuto Wada
 
RESTful Web アプリの設計レビューの話
Takuto Wada
 
例外設計における大罪
Takuto Wada
 
TDDBC お題
Takuto Wada
 
DevLOVE DDDBC
Takuto Wada
 
TDDBC Fukuoka Day1
Takuto Wada
 
js テスト放浪記
Takuto Wada
 
xUTP Chapter19 (2). Testcase Class
Takuto Wada
 
xUTP Chapter26. Dependency Injection
Takuto Wada
 
xUTP Chapter27 Generated Value
Takuto Wada
 
The only one big thing every programmer should know
Takuto Wada
 
10+1 Things you should know about JavaScript testing
Takuto Wada
 
TDD のこころ
Takuto Wada
 
Tochigi Test-no-Kaigi position paper
Takuto Wada
 

Recently uploaded (7)

PDF
【学会聴講報告】CVPR2025からみるVision最先端トレンド / CVPR2025 report
Sony - Neural Network Libraries
 
PPTX
baserCMS『カスタムコンテンツ』徹底活用術〜あなただけの管理画面を自由自在に〜
Ryuji Egashira
 
PDF
20250730_QiitaBash_LT登壇資料_PDC_Kurashina.pdf
pdckurashina
 
PDF
TaketoFujikawa_ComicComputing12th_inKumamoto
Matsushita Laboratory
 
PDF
20250729_Devin-for-Enterprise
Masaki Yamakawa
 
PDF
MahiroYoshida_セリフに着目したキャラクタロール推定に関する基礎検討_sigcc12th2025
Matsushita Laboratory
 
PDF
20250726_Devinで変えるエンプラシステム開発の未来
Masaki Yamakawa
 
【学会聴講報告】CVPR2025からみるVision最先端トレンド / CVPR2025 report
Sony - Neural Network Libraries
 
baserCMS『カスタムコンテンツ』徹底活用術〜あなただけの管理画面を自由自在に〜
Ryuji Egashira
 
20250730_QiitaBash_LT登壇資料_PDC_Kurashina.pdf
pdckurashina
 
TaketoFujikawa_ComicComputing12th_inKumamoto
Matsushita Laboratory
 
20250729_Devin-for-Enterprise
Masaki Yamakawa
 
MahiroYoshida_セリフに着目したキャラクタロール推定に関する基礎検討_sigcc12th2025
Matsushita Laboratory
 
20250726_Devinで変えるエンプラシステム開発の未来
Masaki Yamakawa
 

テスト用ライブラリ power-assert