タグ

TestとProgrammingに関するr-westのブックマーク (12)

  • プログラムに証明が付く日 | RANDMAX

    この記事は「Theorem Prover Advent Calendar 2013」6日目の記事です。 http://qiita.com/advent-calendar/2013/theorem_prover 神田「野らぼー」にて、地下の薄暗い店内で… 「そう言えばこないだ隣で起こってたポインタオーバーラン、対応大変そうだったですけどちゃんと家に帰れてたんでしょうかね、新婚なのに…」 「ヌルポとかポインタオーバーランとか、どうして無くならないんだろうね。その時はみんな手を抜いてるつもりなんて毛頭なくて、一生懸命考えて大丈夫だと思ってるはずなんだけどね。レビューもして、それでも起こった後でみんなでソース見てみると、なんで気づかなかったんだよ!ってことになる。」 「人間って、そういうの苦手なんでしょうねきっと。ほら、『何かほかにありませんか』って聞かれても出てこないじゃないですか。静的な解析っ

    プログラムに証明が付く日 | RANDMAX
  • TDDを実践してわかったTDDつまづくあるあると自分なりの乗り越え方まとめ

    8. ____ /⌒ ⌒\ /( ●) (●)\ /::::::⌒(__人__)⌒::::: \ 簡単だお! | |r┬-| | \ `ー'´ / 3か月前の@remore 9. ____ /⌒ ⌒\ /( ●) (●)\ /::::::⌒(__人__)⌒::::: \ 簡単だお! | |r┬-| | \ `ー'´ / 後に現実を知ることになります

    TDDを実践してわかったTDDつまづくあるあると自分なりの乗り越え方まとめ
  • 単体テストの設計方法について出題・講義 - 千里霧中

    少し前になるけれど、先日WACATE SNSというテストコミュニティつながりのテスト設計のワークショップ勉強会で、テスト設計に関する課題を出題・解説をさせていただいた。開催者の方や参加者の方にはお礼申し上げます。 テーマにはリファクタリングのための単体テスト設計を選ばせて頂いた。課題も解答も即興で作ったテキストデータなので、今回は復習も兼ねて補足したものを以下に転載したいと思う。 (諸事情により非表示化しています)

    単体テストの設計方法について出題・講義 - 千里霧中
  • TDD談義への反応に対する雑感(テスト駆動開発を取り巻く誤解等) - 千里霧中

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

    TDD談義への反応に対する雑感(テスト駆動開発を取り巻く誤解等) - 千里霧中
    r-west
    r-west 2010/02/24
    すばらしい。TDD素人の自分には、これでやっといろいろ腑に落ちた。TDDのテスト!=単体テスト。結果的になんぼかテストが付いてくるだけで、品質担保の意味でのテストとは別物。発端の@yoshiori++
  • Good Enough とは

    Good Enough とは  1995年に、ソフトウェアの世界に新しい品質の概念が持ち込まれました。それが「Good Enough」という概念です。それまでの品質の概念では、バグは一つでも許されませんでした。まさにゴキブリと同じで、1匹でもいたらダメという状況でした。たとえ、それが大した悪さをしなくても、存在そのものが“悪”と認識されるのです。もちろん、今でも、バグが“許されている”わけではありませんが、増える一方の機能に対して、一定の要件の範囲で、あらゆる組み合わせのテストを実施することができなくなったし、そのことに経済的合理性が認められなくなったのです。  汎用コンピュータの時代とちがって、たとえばPCのOSは精々2万円前後の値段でする。そのようなソフトに対して汎用コンピュータの時と同じようなテストを実施することに合理的な理由を失ってしまったのです。いや、PCのOSと言っても、操

  • Microsoft Developers Deny Report That Windows 2000 Is Bug-Infested - IT Channel - IT Channel News by CRN

  • ZDNN: Windows 2000に「6万3000の問題」

  • RSpecを使ったテストコードを読もう

    RSpecを使ったテストコードを読もう:Railsコードリーディング~scaffoldのその先へ~(2)(1/4 ページ) 優れたプログラマはコードを書くのと同じくらい、コードを読みこなせなくてはならない。優れたコードを読むことで、自身のスキルも上達するのだ(編集部) 第1回「コードリーディングを始めよう」では、Railsアプリケーションの基であるCRUDのソースコードを読解しました。最低限の基の動きということで、ディレクトリ構造の説明すら割愛していたので、今回はディレクトリ構造の解説から行います。その後、今回のメインテーマであるテストコードのコードリーディングに入っていきます。 ここで扱うテストコードというのは、Javaの世界でいうとJUnitを使ったテストコードと同じ粒度、つまり、単体テストに近い粒度のテストケースを動くプログラムで表したものになります。Javaの開発者にとってのJ

    RSpecを使ったテストコードを読もう
  • デュアルプログラミングとエクソシストゲーム - 檜山正幸のキマイラ飼育記 (はてなBlog)

    ここ何年か考えているテーマのひとつが「カジュアルなフォーマルメソッド(語義矛盾は承知)」なんですよ。一連の{テスト(Test), 仕様(Specification), 振る舞い(Behaviour/Behavior)}駆動開発なんて動きは、カジュアルなフォーマルメソッドなんだと僕は捉えているわけですが、もう一歩踏み込んで欲しい感じ、隔掻痒の不満もあります。 そこでメイヤーに戻って「契約駆動」とか、あるいは「検証駆動」なんて言葉も使ってみたけど、ナントカ駆動には傷気味。"Offencive Programming"は、「攻撃的プログラミング」と訳されると真意がまったく伝わらないし、、、 紆余曲折の末、「デュアルプログラミング」って言葉を使うことに(暫定的だけど)決めました。そしてエクソシストゲームは、デュアルプログラミングを説明するために案出した“極端化した比喩”です。 内容: 設計(仕

    デュアルプログラミングとエクソシストゲーム - 檜山正幸のキマイラ飼育記 (はてなBlog)
    r-west
    r-west 2008/10/04
    これってTDD/BDDそのもの?わざと手抜きで実装というのはテスト(仕様記述)を完全化させるためか。ただ、その費用対効果が気になる。特にプログラミングの探査性との両立性も。
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
    r-west
    r-west 2006/10/12
    Haskell用テストケース自動生成&自動テストライブラリ
  • Selenium ver.0.5 勝手にまとめサイト

    86400000 > selenium > Sort by: Update Auto() Image hover

  • IBM Developer

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    IBM Developer
  • 1