タグ

testingに関するkakutaniのブックマーク (55)

  • 現在時刻が関わるユニットテストから、テスト容易性設計を学ぶ - t-wadaのブログ

    この文章の背景について この文章はテスト容易性設計をテーマに 2013/11/26 に CodeIQ MAGAZINE に寄稿したものです。残念ながら CodeIQ のサービス終了と共にアクセスできなくなっていたため、旧 CodeIQ MAGAZINE 編集部の皆様に承諾いただき、当時の原稿を部分的に再編集しつつ、ライセンス CC BY(クリエイティブ・コモンズ — 表示 4.0 国際 — CC BY 4.0) で再公開いたしました。 旧 URL にいただいたブックマークとご意見はこちらです(これであなたもテスト駆動開発マスター!?和田卓人さんがテスト駆動開発問題を解答コード使いながら解説します~現在時刻が関わるテストから、テスト容易性設計を学ぶ #tdd|CodeIQ MAGAZINE)。旧記事には当に多くの反響をいただき、誠に感謝しております。 目次 この文章の背景について 目次 出

    現在時刻が関わるユニットテストから、テスト容易性設計を学ぶ - t-wadaのブログ
    kakutani
    kakutani 2019/10/02
    the timeless way of testing
  • テスト駆動開発について僕は誤解していた - 偏見プログラマの語り!

    ここ数日 ruby をやってるんですけど、ruby といえばテストらしいので Test::Unit やら RSpec やらを調べてました。しかし僕はこれまでまともな TDD をやってこなかったので、先にテストとは何ぞや?TDD とは何ぞや?ってのを調べたりしていました。 この記事は、ずぶの TDD 素人がテストについて知り始めたまとめです。 1. きっかけは RSpec のドキュメント そもそも RSpec の↓紹介文の冒頭から意味不明に感じたんです。 FAQ:「RSpec って、要は Test::Unit でやっていることを別の書き方にしただけでは?」 この FAQ への短い答えはイエスです。 『スはスペックのス 【第 1 回】 RSpec の概要と、RSpec on Rails (モデル編)』 Rubyist Magazine えっ... じゃあ要らんやろソレ。いちいち手作業でチェック

    テスト駆動開発について僕は誤解していた - 偏見プログラマの語り!
    kakutani
    kakutani 2012/03/07
    "僕は本稿の冒頭で RSpec の存在価値を否定しましたが、その態度はここへきてようやく否定できます" 最初に否定された文を書いて(かつ途中で放り出した)身としてどう受け止めるべきか悩むがこのエントリは良い!
  • xUnit Test PatternsのTest Doubleパターン(Mock、Stub、Fake、Dummy等の定義) - 千里霧中

    最近、昔作ったTest Doubleの解説資料を参照・引用してくれる方がちらほら出ていて恐縮しているのですが、見直してみると結構わかりにくい資料なので今回文章としてまとめたいと思います。内容は世間一般的に言われているMock、Stub、Fake、Dummyといった言葉の定義になります。 Test Doubleとは Test Doubleとは、テスト実行時に、テスト対象が依存しているコンポーネントと置き換わるものです。「テスト代役」と訳されることもあります。世の中でMock、Stub、Fake、Dummyなどと呼ばれているものの総称に位置づけられます。 簡単な例を以下に示します。このコードでは、テストメソッド「テストコード()」がメソッド「テスト対象()」をテストしています。また「テスト対象()」は、中でメソッド「外部メソッド()」を実行しています。なお「外部メソッド」はテスト対象でないとし

    xUnit Test PatternsのTest Doubleパターン(Mock、Stub、Fake、Dummy等の定義) - 千里霧中
    kakutani
    kakutani 2012/03/05
    よいまとめ
  • Rails & Spine.JS - Using The CoffeeScript Source - Ken Collins @MetaSkills.net

    Ruby, JavaScript, Sass, iOS. Stinky Cheese & Beer Advocate. Working at CustomInk and loving it! Our options for JavaScript MVC frameworks are numerous these days. While working on the third major rewrite of my personal bookmarking application, HomeMarks, I decided to learn Backbone.js. Thankfully a local friend of mine recommended that I try Spine.JS. I was immediately hooked! Why Spine.JS? Spine.

  • Bug statistics are a waste of time

    Hi, I'm Gojko, and I help ambitious teams align software delivery with business goals, with the help of Impact Mapping and Specification by Example. I am also one of the authors of MindMup and Narakeet. Lisa Crispin’s talk on defect management techniques for agile teams stirred some emotions at StarEast in early May. The idea that a team might not necessarily need a tool to track defects was, it s

    Bug statistics are a waste of time
  • https://asciicasts.com/episodes/261-testing-javascript-with-jasmine

  • るびま

    『るびま』は、Ruby に関する技術記事はもちろんのこと、Rubyist へのインタビューやエッセイ、その他をお届けするウェブ雑誌です。 Rubyist Magazine について 『Rubyist Magazine』、略して『るびま』は、日 Ruby の会の有志による Rubyist の Rubyist による、Rubyist とそうでない人のためのウェブ雑誌です。 最新号 Rubyist Magazine 0058 号 バックナンバー Rubyist Magazine 0058 号 RubyKaigi 2018 直前特集号 Rubyist Magazine 0057 号 RubyKaigi 2017 直前特集号 Rubyist Magazine 0056 号 Rubyist Magazine 0055 号 Rubyist Magazine 0054 号 東京 Ruby 会議 11 直

    kakutani
    kakutani 2011/04/07
    失敗したときに並列化しないでリトライする機能がついてるのはいいね
  • 無事です - Backnumbers: Steps to Phantasien

    2011-03-12 近況 無事です. はいいとして, 先週 Shibuya.js で話してきました (スライド). 空気をよまず JS と無関係の話をしてしまいやや申しわけなかったけれども, WebKit の様々な幻想をぶちこわす開発の様子を知ってもらうことには個人的な使命感を感じておりつまりこれはちょっとした十字軍なのです. JS のテストってなんでむずかしいの? 地震さわぎで自宅警備中の人も多いだろうから, お互いの気晴らしをかねてだらだら書きたい. JavaScript のテストについてぐぐったりついったを読んだりしていると, JavaScript でテストを書くのは大変だとか難しくてやってないという話が多くて不思議におもった. 私は JavaScript を使ってウェブアプリを作る仕事をしたことがなく, いまいち難しさがピンとこない. 趣味でさわっている範囲だと普通に書ける. な

    kakutani
    kakutani 2011/04/01
    もう少ししたらjsは"ビルド"してからデプロイするようになるのかなあ
  • WEB+DB PRESS vol.61 Rails3テスト最前線がすばらしい - tech-kazuhisa's blog

    WEB+DB PRESS vol.61の「Rails3テスト最前線」という記事がかなり良かったので、注釈を交えて紹介したいと思います。 何が良かったのか? 自分はRails2系でTest::Unitを実践していました。AutoTestとYAMLによるデータ投入でおおむね満足していましたが、次のポイントが気になっていました。 YAMLによるデータ投入は重複が多いのでコピペでデータを作成していた。 Test::Unitはログイン処理など共通の処理をくくり出すのが難しかった。 Viewのテストの方法が分からなかった。 しかしこの記事で気になる点がスパッと解消されました。私と同じような人はこの雑誌の記事が役に立つと思います。 ちなみに私はMacのSnow Leopard上でRuby1.9.2を使ってこの記事の内容を試しました。1.8.7を使う前提で書かれている箇所もあるので注意してください。(後で

    WEB+DB PRESS vol.61 Rails3テスト最前線がすばらしい - tech-kazuhisa's blog
    kakutani
    kakutani 2011/03/14
    "Webに点在する情報が一つにまとまっていて、現時点で最高のRailsテスト解説だと思うので全てのRailsプログラマにお勧めします"
  • http://madscientist.jp/~ikegami/diary/20110219.html

    kakutani
    kakutani 2011/02/19
    "最近のテストやアジャイルを熱く語る人々のことばがすばらしい。理論のひとも、ことばや表現をもっと大切にすればいいのに。ということが言いたいのです。"
  • [Amazon][rails][ruby] WEB+DB PRESS Vol.61 で Rails3 テスト最前線という記事を書きましたのお知らせ - HsbtDiary(2011-02-17)

    ■ [Amazon][rails][ruby] WEB+DB PRESS Vol.61 で Rails3 テスト最前線という記事を書きましたのお知らせ id:ursm, id:kenchan と共同執筆しました。 主に弊社で Ruby! Rails! Agile! みたいな感じで開発をしている人がふつうにやっていることをちょっと技術よりに倒して解説をしています。だいたい札幌Ruby会議03でオレが話した内容をもう少し深く文章にした感じ。 以下目次。 Railsテスト環境の現在 日進月歩のツールからどれを選ぶか RSpec によるユニットテスト [基編] モデル、コントローラ、ビュー、ヘルパーごとのテスト RSpec によるユニットテスト [クリーンコード編] factory_girl でテストデータ、RR でスタブ/モック Request Specsによるエンドツーエンドテスト 画面のテ

    [Amazon][rails][ruby] WEB+DB PRESS Vol.61 で Rails3 テスト最前線という記事を書きましたのお知らせ - HsbtDiary(2011-02-17)
    kakutani
    kakutani 2011/02/17
    主に弊社で Ruby! Rails! Agile! みたいな感じで開発をしている人がふつうにやっていることをちょっと技術よりに倒して解説をしています
  • XP祭り関西にてユニットテストの保守に関する発表 - 千里霧中

    先週末、XP祭り関西2011にて「ユニットテストの保守性を作りこむ〜設計・実装の工夫で支えるテストの継続的活用〜」と題した講演をさせて頂きました。 今回は内容として、ユニットテストをより継続活用するためテストの実装とテスト設計の工夫でユニットテストの保守性を高めていく、という話を取り上げさせて頂いています。 ユニットテストの保守性を作りこむ, xpjugkansai2011View more presentations from H Iseri. ※PDF版 今回は、直前にJaSST'11 Tokyoで登壇機会(残務処理が終わり次第報告したいと思います)があり、また仕事も急がしいままという状況が重なって準備でしんどい思いをしましたが、何とか無事に終わりかなり安堵しています。 登壇者として声をかけて頂いた細谷さんや、すばらしいイベントを作り上げているXPJUG関西の方々に深くお礼申し上げます

    XP祭り関西にてユニットテストの保守に関する発表 - 千里霧中
    kakutani
    kakutani 2011/02/04
    これはすごい。どっかでパクろう
  • Jasmineをもう少し詳しく紹介してみる

    Jasmine: BDD for Javascript | Jasmine 先日プッシュした Jasmine についてもう少し掘り下げていきます。ただしテストの書き方については触れません。それは公式の情報やすでに詳しく紹介されている記事があります。 まとめJasmine は見た目だけでなく考え方も RSpec の影響を受けているよ多少遠回りでも rubygems 版の Jasmine を使うとテストが当に自動化できるよわざわざツールを使ってテストしたいということはある程度アプリケーションとして規模が大きいとか、サイトとして規模が大きく JavaScript の数が多くなっているので、人力チェックが大変だということではないでしょうか。 規模が大きくなってきた場合は、ある程度作法(ルール)を用意してそれを守ることが安全、安心なアプリケーションの開発、作成に欠かせません。Jasmine は単に

  • http://www.machu.jp/posts/20100828/p01/

    http://www.machu.jp/posts/20100828/p01/
    kakutani
    kakutani 2010/09/03
    "モード反転。裏コード、ザ・ビースト" testable-tdiaryも私の建てたもうひとつの「門」なのかもしれないな、と思って胸が熱くなるのであった(もっと手を動かして道をたどれるようになるようがんばります……)。図がすごい
  • Rails 3.x 時代のテストフレームワーク

    Rails 1.x の頃、テストと言えば Test::Unit であり、Fixtures でした。 この2つがあったからこそ、私は Rails を好きになったんだと言えます。 Test::UnitRuby 標準ライブラリの1つですが、Rails はそれを巧妙に拡張して、自らと一体化させていました。 Rails は Web アプリケーションを開発するためのフレームワークであり、同時にその Web アプリケーションをテストするためのフレームワークでもあったわけです。 Fixtures は、テストの対象となるサンプルデータをデータベースに投入するためのツールです。 テストを開始する時点でのデータベースの状態を YAML 形式あるいは CSV 形式で記述しておくと、Fixtures はテストを行う直前にデータベースをその状態に戻してくれます。つまり、Fixtures によって再現性のあるやり

    kakutani
    kakutani 2010/04/28
    ここ数年の流れのよいまとめ。「テスト駆動開発」の何を伝えることにフォーカスしたいのかでフレームワーク/ライブラリは决めればいいんじゃないかなあ。ちなみに私はRSpecのビジョンとコミュニティにbetしている。
  • TDDはテスタビリティの保証をしてくれるのかも - プログラマーの脳みそ

    TDD Boot Camp 北陸行ってきました。 TDDはテストドリブンデベロップメントの略で、自働テストを書いてから実装を書くというスタイル。ここでよく誤解されるのだけど、業務でおなじみ単体テストや結合テストといった網羅的なテストを記述してから実装を書くわけではない。目の前の1歩分、ひとつだけテストを書き、すぐさま実装を書いて自働テストをグリーンにする、というやり方をするのだ。こればかりは実際にやってみないと誤解は解けないかもしれない。 さて、深夜のテストTL - Togetterや、TDDはテスト手法か否か - Togetterで議論されている「TDDは品質保証の手法ではない」という部分に関する議論。ここでいう「品質保証」はバグがないこと、ソフトウェア品質の12の属性でいう信頼性(reliability)が高いことを指す。 TDDのスタイルには網羅的な検査をしてバグをあぶりだすようなフ

    TDDはテスタビリティの保証をしてくれるのかも - プログラマーの脳みそ
    kakutani
    kakutani 2010/03/16
    定義によりTDDは試験性を上げる。試験性があがるとその副次効果として信頼性があがる。"品質"を上げるのはテストで駆動されるプロダクトコード。TDD"が"品質をあげるわけでもないし、信頼性を上げるわけでもない。
  • TDD談義への反応に対する雑感(テスト駆動開発を取り巻く誤解等) - 千里霧中

    先日、twitter上でTDDに関する談義があったのだけれど、気になったのがそれに対するテストや品質の方々の反応。特にTDDの戒めである「品質保証を目的としていない」という書き込みに対してネガティブな反応が多かったのが気になった。 開発経験もあり定義や概念の扱いに注意深い方々なので誤解の可能性はないと思うが、結構問題が入り組んでいるように感じたので、今回テストエンジニアと開発者の視点の差異を焦点にして一部の論点を整理したいと思う。 開発者のいう品質保証の定義 まずTDD談義で開発者が「品質保証のためのテスト」「品質管理のためのテスト」などと呼んでいるテストの定義は、乱れや不統一感も多少あるけど、基的にKent Beckや和田さんが使われているQAテストの定義によるもの(http://gihyo.jp/dev/serial/01/tdd/0003)。 この定義で「品質保証のための単体テスト

    TDD談義への反応に対する雑感(テスト駆動開発を取り巻く誤解等) - 千里霧中
    kakutani
    kakutani 2010/02/24
    TDDの「テスト」のまとめを越えた射程をもつすばらしいエントリ。と、同時にやっぱり私の立ち位置は「D」なのだなあということに改めて気づいた。ありがとうございます。D is for Driven.
  • ダミーWebサーバを作るライブラリ、wwをリリースしました - moroの日記

    近頃はWebAPIを使ったアプリケーションを作ることが増えていると思いますが、自動化テストからのWebAPIへのアクセスはどうやってますか? 私は、自分でstubしたりFakeWeb(レシピ先輩に教わった!!)を使ったりしてたんですが、イマイチしっくりこない部分がありました。で、Sinatraなぞで作ってたんですが、それをgemにまとめましたので、よろしければご利用ください。 http://github.com/moro/ww http://gemcutter.org/gems/ww 概要 ww(Double Web)はいわゆるDouble(mock, stub, spyなど)の機能を備えたダミーWebサーバを簡単に作るためのフレームワーク(笑)です。現状では、以下のようなことが出来ます。 他のAPIサーバを使う場合などに、簡単にダミーサーバを作る そのダミーサーバは自動化テストないから起

    ダミーWebサーバを作るライブラリ、wwをリリースしました - moroの日記
  • [cucumber][テスト] テストデータツールまとめ(2009春夏)

    ● [cucumber][テスト] テストデータツールまとめ(2009春夏) 調査結果 知見 みんな YAML での Fixture 作成には辟易 (except DHH) DHH は初心者 BDD の流れから全体の fixture でなく必要なデータを作成するのが主流 データ作成ツールは Machinist がすこぶる評判いい (現在のベスト) 集合的なデータが必要な場合は Dataset を使い、その中から Machinist を使う Fake データの作成は Faker gem がこれまたすこぶる評判よし Machinist の発音がわからない 今、cucumber + webrat + mozrepl + firefox + xvfb + rspec + machinist + faker が俺の中で激熱! 参考 http://github.com/aslakhellesoy/cu

    kakutani
    kakutani 2009/06/09
    これは
  • InfoQ: "古典派"TDD 対 "モック派"TDD、これは本当の対立軸だろうか?

    垂直スケーラビリティと効果的なテストによる金融取引システムのパフォーマンスと効率の最大化 Peter Lawrey氏はJavaチャンピオンであり、Chronicle SoftwareのCEOとして、開発者を鼓舞してソリューションのクラフトマンシップを高めることに情熱を注いでいる。経験豊富なソフトウェアエンジニアとして、Lawrey氏はソフトウェア開発プロセスにおけるシンプルさ、パフォーマンス、創造性、革新性を奨励することに努めている。

    InfoQ: "古典派"TDD 対 "モック派"TDD、これは本当の対立軸だろうか?
    kakutani
    kakutani 2009/03/04
    編集で欠落した情報などいろいろ修正依頼中 ← なおった