Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

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

9,391 views

Published on

テスト用ライブラリ power-assert
2014/05/29 @ JSオジサン#2

Published in: Technology

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

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

×