タグ

TDDに関するp260-2001fpのブックマーク (58)

  • 新機能および新端末追加のお知らせ | Remote TestKit

    2013/11/28 新機能および新端末追加のお知らせ 2013年11月28日(木)実施のシステムメンテナンスが終了いたしましたのでご報告いたします。 尚、メンテナンス完了に伴い新規機種・機能を追加いたしました。 下記のとおり 1. Android 4.4に対応 Remote TestKitAndroid 4.4(KitKat)に対応しました。 あわせてレンタルできる端末にNexus 5を追加いたしました。 2.新規機能追加 自動キャプチャ ファーストビュー機能 「複数端末同時操作」による画像保存時にページ全画面のキャプチャに加え、端末ディスプレイに最初に表示される画面を同時に保存する機能を追加いたしました。 機能によりレンタルした端末でWebページの確認をする際に1画面に表示される範囲がひと目で確認できるようになりました。 3.レンタル端末の新規追加 最新端末の追加 ご要望にお答えし

    新機能および新端末追加のお知らせ | Remote TestKit
  • PHPUnit でテスト駆動開発を始めよう

    PHPMySQL で 1 カチャカチャカチャ...ッターン! MapReduce (@ニコニコ超会議)Yuya Takeyama

    PHPUnit でテスト駆動開発を始めよう
    p260-2001fp
    p260-2001fp 2012/03/09
    『PHPUnit で』と言いつつPHPに限らないお話。TDDのテストとは何か、なぜ書くのかという基本をわかりやすく。『何でもPHPUnitやTDDのせいにするのではなく妥協点を見つける必要がある』
  • TddAntiPatterns - TDD のアンチパターン

    TddAntiPatterns - TDD のアンチパターン 目次 この文書について TDD のアンチパターン TDD アンチパターン・カタログ 嘘つき。 (The Liar) セットアップ過多 (Excessive Setup) 巨人 (The Giant) モック酔い (The Mockery) 検査官 (The Inspector) 太っ腹な残り物 (Generous Leftovers) 地元の英雄 (Local Hero) 小姑 (The Nitpicker) 秘密のキャッチ (The Secret Catcher) ペテン師 (The Dodger) 大声 (The Loudmouth) はらぺこキャッチ (The Greedy Catcher) 序列屋 (The Sequencer) 隠れ依存 (Hidden Dependency) 点呼 (The Enumerator)

  • TDDを実践してわかったTDDつまづくあるあると自分なりの乗り越え方まとめ

    導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来についてshinjiigarashi

    TDDを実践してわかったTDDつまづくあるあると自分なりの乗り越え方まとめ
  • PHPでTDD&CIワークショップ、Jenkins + PHP の各種プラグインパート資料 - Yamashiro0217の日記

    はじめに この資料は「PHPでTDD&CIワークショップ」 http://atnd.org/events/16626 で @yamashiro が発表するための資料だよ。 ワークショップ参加者じゃなくても記事読むだけで完結するようには書いてあるよ。 概要としては、Jenkins を使って PHP のウンコレガシーなコードをいかに綺麗にして行くかということを説明する。 自画自賛だけど PHPMD とか PHPCPD の使い方の説明の資料としてもそこそこイケてる資料になってると思いました。まる。 この記事に書かれてることは、割とTemplate for Jenkins Jobs for PHP Projectsとかぶってるけど、プラグインを絞ってあるのと、一個一個のプラグインについて解説、また実際にエラーが起きたときにどうすればいいのか書くよ。 Java と Jenkins のインストールとJ

    PHPでTDD&CIワークショップ、Jenkins + PHP の各種プラグインパート資料 - Yamashiro0217の日記
  • 「TDDの本ってあまり売れないんだそうですよ」から始まる、その理由の考察などのまとめ

    「TDDのってあまり売れないんだそうですよ。」と言う発言から思ったことをつぶやたら思いがけない広がりになったので、まとめてみました。(未完)

    「TDDの本ってあまり売れないんだそうですよ」から始まる、その理由の考察などのまとめ
    p260-2001fp
    p260-2001fp 2011/05/25
    「上の説得に使えそうな本」があったら売れる?個人的には、すでにテスト環境が整っているJavaやC#ではなく組み込みCのような環境でどうTDDするかについての本が欲しい・・・
  • TDD ⇒ PDD

    ダイクストラは、テストでバグの存在は示せるがバグのないことは示せないと言っていた。一方で、TDDはテストを重ねながらプログラミングをおこない、用意したテストが全部通ったらプログラム完成と言うアプローチだ。と誤解しやすいが実は単なる開発プロセスに対する提案である(10/2)。 欲しいのはバグはあるかも知れないが取りあえず動作する綺麗なコードではなく、まずバグのないコードだ。 この点を改善するにはどうするか。実は良いアイディアが浮かんだ。自動テストツールではなく、プログラム検証ツールを使用して正しいことを証明しながらプログラミングをおこなうPDD(Proof driven development)だ。 プログラムSの証明とは、Qを事前条件、Rを事後条件として、{Q} S {P}が恒真であることを示すことだ。たとえば、二つの整数x, yを与えられてxが大きい値になるように、値を入れ替えるプログラ

    p260-2001fp
    p260-2001fp 2011/05/06
    『プログラム検証ツールを使用して正しいことを証明しながらプログラミングをおこなうPDD(Proof driven development)』という考え方。
  • CSMの集い - Natural Software

    Done,Done,Done Ready,Ready,Ready TDD,BDD,ATDD ALM DAYとAgile DAY ざっくり思ったことをはき出してるので適当に ALM DAYで TFSのことを考えていたら、個々の機能、プラクティスに注目してみればアジャイルでもウォーターフォールでも大差はない。 今の日ではアジャイルは駆け出しで、従来型(ウォーターフォール)が主流である。アジャイルがどうだという議論はあれど、従来型からアジャイルへの道程はあまり見かけない。 その誤解がハイブリットアジャイルというなんちゃってアジャイルを生んでいる。 従来型からアジャイルへの進み方をプロセス視点で考える場にしたい。 従来型→ハイブリットウォーターフォール→アジャイルへと遷移する ハイブリットウォーターフォールの時点で、アジャイルの思想を知ることで、顧客視点と各プラクティスを学ぶ ハイブリットウォー

    CSMの集い - Natural Software
  • C言語による組み込みTDDまとめ - ジャンク☆ニュース 臥龍

    C言語でTDDを行う場合、また組込み系でTDDを行う場合、色々問題が発生する。 スタブ関数名の競合 クロスコンパイル環境(実機の容量不足、実機用CPUで使えるツールが少ない(カバレッジ計測など)) グローバル変数の使い過ぎで単体テスト不可 私の場合は以下のようにして行った。 1.関数のモジュール仕様書を作成し、関数名、関数毎の引数、戻り値を定義 2.上記よりスケルトンを作成(自動) 3.ターゲットCPU依存のデバイスをパソコン用にスタブ関数とヘッダーを作成 (擬似FROMのR/W,SIOのR/W,ポートのI/Oなど) 4.Cygwin上でCUnit for Ando でスケルトン用にUnitテストを実装 5.単体テスト実行後、スタブを実機用のドライバーに切り替え(ヘッダーファイルを変更)実機に組み込み。 C言語におけるTDDの問題点と解決方法 組込み開発におけるテスト駆動開発事例 〜C言語

    C言語による組み込みTDDまとめ - ジャンク☆ニュース 臥龍
    p260-2001fp
    p260-2001fp 2011/03/02
    組込み開発でTDDを行う手法。ハード依存部分をスタブに置き換えてPC上で単体テスト。やはり行き着く先はこの形になるようだ。シミュレータ等の導入は難しい
  • Test Doubleを使うとテストの信頼性/保守性が下がるのか? - Fly me to the Luna

    最近はユニットテストを行うテストコードにおいて、Test Doubleを多用してます。Test DoubleとはMockとStubを合わせた総称です。Test Doubleを用いると、信頼性や保守性が下がると言われることがあります。しかし、それはTest Doubleの用法を誤っているためではないかと僕は思うのです。Test Doubleの用途はユニットテストのスコープをテスト対象のクラスに限定するために用いるべきものです。実感として、Test Doubleを使っているからと言って、ユニットテストの信頼性/保守性が下がったとはあまり感じていません。 良く誤解されていますが、Test Doubleはスローテスト問題を解決するための手段ではありません。Test Doubleをうまく利用すれば、結果的にスローテスト問題を解決できます。しかし、スローテスト問題を解決するための手段ではないのです。ス

    Test Doubleを使うとテストの信頼性/保守性が下がるのか? - Fly me to the Luna
  • PHPでBDD(Behavior Driven Development)する方法

    みなさんこんにちは。@ryuzeeです。 RubyであればRSpecやCucumberとか使って、むしろBDDしているケースの方が多いようですが、PHPでやっている事例はあまり聞きません。 とりあえずPHPでもBDDできることは確認できたので、その方法をご紹介します。 ※実戦投入にはもうちょっと検証は必要かもしれません。 BDDとは?BDDとはビヘイビア駆動開発(Behavior Driven Development)でテスト駆動開発から派生したものです。 テスト駆動開発とドメイン駆動設計を統合したようなイメージになります。 対象における「振る舞い」や「制約条件」の検証のために、自然言語的な記述でテストコードを記述します。 スペックファーストで仕様を作ってから実装するという流れになります(コードを書く前に振る舞いを決める)。 ということで、以下ではPHPでBDDを行う方法について解説してい

    PHPでBDD(Behavior Driven Development)する方法
  • レガシーコード改善ガイド読書会 2010-04-03 - 未来のいつか/hyoshiokの日記

    先日、会社でレガシーコード改善ガイド読書会を行った。1回しかやっていないので、今後どんな感じになるのか正直わからないが、1回目の振り返りを記してみる。 〆会、テスト勉強会(社内)などで有志を募ったところ、なんやかんやで10数名が名乗りを上げてくれた。どんなペースでやるかとか運営をどうするかとかを相談するために、参加希望者で集まった。週1回(木曜日、19時開始)、担当の章などを決めた。第1章〜第5章までは各自で読んで、読書会への参加の動機などを含めて簡単なポジションペーパーとしてまとめることにした。 わたしが、読書会の世話役として、会議室の確保(空き会議室を見つけて予約しただけ)、開催のアナウンスなどを行った。資料置き場の共有ディレクトリ、社内Wikiなどを立ち上げた。*1 テストがないコードはレガシーコードだ! 「テストがないコードはレガシーコードだ」という強烈なフレーズが表紙に書いてある

    レガシーコード改善ガイド読書会 2010-04-03 - 未来のいつか/hyoshiokの日記
  • 拡張型TDD on JaSST2011Tokyo

    JaSST 2011 Tokyoでの「新しいTDDアプローチ TDDの新しい活かし方をライブで見せます!」に関連したつぶやきを集めています。 見落としや、関係ないものが混ざっていたらすみません。追加や修正していただけるとありがたいです。

    拡張型TDD on JaSST2011Tokyo
    p260-2001fp
    p260-2001fp 2011/01/27
    TDDのテストと品質保証のためのテストの話を見ていると、「テスト」って言葉は便利すぎるなあと。ところでTDD=BDDと取るべきか階層が違うと取るべきか?
  • 【告知】「JaSST'11 Tokyo (#jasst) 第2日目/ 1月26日(水) E5 新しいTDDアプローチ TDDの新しい活かし方をライブで見せます!」に登壇します - t-wada の日記(旧)

    ハッシュタグ #jasst 今日は告知ばかりで申し訳ありません。三つめの告知エントリです。ソフトウェアテストシンポジウム(通称 JaSST)、のパネルディスカッションに登壇させていただきます。 ■E5 新しいTDDアプローチ TDDの新しい活かし方をライブで見せます! TDD研究会 テスト駆動開発(TDD)は、アジャイル開発手法であるXPのプラクティスとして紹介されて以来、アジャイル開発に限らず多くのソフトウェア開発現場で用いられるようになってきました。 TDDは開発の中に「Red⇒Green⇒Refactor」のリズムを作ることで、開発者に安心感を与えるのと同時に、品質や生産性の向上にも貢献することが知られています。 その一方、TDDが多くの現場で用いられるようになるにつれ、TDDの成果物の1つであるテストケースと、従来テスト工程で作られてきたテストケースの間に溝があることが指摘されるよ

    【告知】「JaSST'11 Tokyo (#jasst) 第2日目/ 1月26日(水) E5 新しいTDDアプローチ TDDの新しい活かし方をライブで見せます!」に登壇します - t-wada の日記(旧)
  • iPhoneアプリ開発記(6):Objective−C + Xcode で ユニットテスト と CI - Natural Software

    新しい開発環境を試すと、TDD と CIのやり方を調べたくなる病気にかかっているワタクシです。 自分の観測範囲内でiPhone開発で単体テストとかCIとかの話題を聞かないので調べてみました。 それでも日語の情報は少ないですね。開発者の方はどうやってテストしてるんだろう?? #秘密保持だかなんだかに引っかかる?? 参考になる情報があればコメントもらえると嬉しいです。 とりあえずTDDとCIのやり方が載ってるサイトを見つけたのではっときます。 TDD(というか、ユニットテストのやり方)は動画を見てなんとなくやってみました。 CIはサイトは見つけたのですがまだやってないので、後で書こうと思います(多分) 個別のエントリにしました iPhoneアプリ開発記(6−1):Objective−C + Xcode で ユニットテスト iPhoneアプリ開発記(6−2):Objective−C + Xco

    iPhoneアプリ開発記(6):Objective−C + Xcode で ユニットテスト と CI - Natural Software
  • テスト駆動開発・実践編 - Strategic Choice

    ケント・ベック師の著書で、TDDの教科書「テスト駆動開発入門」の、「Part1 Money オブジェクトの例」を写経して、TDDを「実践」し、これまで学習した「パターン」「プラクティス」を理解し、定着させます。目次テスト駆動開発・実践編01・黄金の回転(「第1章 複数通貨のMoney」より)テスト駆動開発・実践編02・テストファースト(「第2章 オブジェクトの退化」より)テスト駆動開発・実践編03・(「第3章 すべてに対する等価性」より)テスト駆動開発・実践編04・(「第4章 プライベート化」より)テスト駆動開発・実践編05・(「第5章 『フランク』に話す」より)テスト駆動開発・実践編06・(「第6章 再度、すべてに対する等価性」より)テスト駆動開発・実践編07・(「第7章 りんごとみかん」より)テスト駆動開発・実践編08・(「第8章 オブジェクトの生成」より)テスト駆動開発・実践編09・

  • テスト駆動開発・パターン編 - Strategic Choice

    ケント・ベック師の著書で、TDDの教科書「テスト駆動開発入門」の「Part3 テスト駆動開発のためのパターン」をまとめ、「TDDの戦略」「TDDの定石」「TDDのプラクティス」を身につけます。はじめにファーストステップテスト駆動開発のパターンテスト方法の詳細の前の、基的な戦略に関するパターンです。「テストすることは何を意味するのか」「いつテストするのか」「テストするロジックをどのように選択するのか」「テストするデータをどのように選択するのか」を吟味します。Test(テスト)Isolated Test(独立したテスト)Test List(テストリスト)Test First(テストファースト)Assert First(アサートファースト)Test Data(テストデータ)Evident Data(明示的データ)レッドバーに関するパターンテスト作成を開始するタイミング、テストを作成する場所、テ

  • toshiyukikawanishi.net

    toshiyukikawanishi.net 2022 著作権. 不許複製 プライバシーポリシー

  • 機能テストの自動化に向けて - nemuzukaの「明日から本気出す」

    前回は、ツールを使っても機能テストを自動化するハードルは低くないですよ、ということを書きました。 残念ながら、高いお金を払って購入したテストツールもスケジュールが間に合わない現場の品質担保の救世主にはなりえません。やっぱりロジック部分の単体テストレベルはおとなしくxUnitを書いた方が早いでしょう。*1 ですが、機能テストの自動化に成功して、ViewやController部分がデグレった箇所を検知してくれるようになれば開発現場のモチベーションは上がるでしょう。 では、機能テストの自動化には、何を準備すればいいでしょうか?私の経験と妄想から、いくつか述べてみようかと思います。 動的な要素を固定にできる仕組み 外部パラメータで処理がスタブ化できれば、いつテストを実施しても結果は等しくなります。例えば、システム日付はテスト実行時毎に変わってしまうのですが、JVMのパラメータやプロパティファイルの

    機能テストの自動化に向けて - nemuzukaの「明日から本気出す」
    p260-2001fp
    p260-2001fp 2010/08/31
    『動的な要素を固定にできる仕組み』/『「品質を下げないこと」に対する投資への理解が得られないと認めてもらうのに時間がかかるかもしれません』
  • 私家版テスト駆動開発 - rabbit2goのブログ

    テスト駆動開発(TDD)をやってみたいけど最初の一歩がなかなか踏み出せないという人が少なくないようだ。あまり形式張らずに出来るところから少しずつでも挑んでいくのがコツだと思うのだけど、教科書に出てくる「正しいやり方」に躊躇してしまうケースがあるらしい。そんな訳で、今回は我流のテスト駆動開発方法を紹介してみたい。 テスト戦略を決める 制限のある開発期間内に効率的にテストコードを作る必要がある以上、何を目標として何処までをテストすべきか目標を決めておくことは欠かせない。もちろん、カバレッジ100%のコード作成は望ましいものの、異常系を含めてそこまでの網羅率を実現するのは難しいことが多いし、GUI処理は時間をかけてマクロを作るより人間が目視で確認した方が手っ取り早かったりする。費用対効果を考えて、もっとも効果の大きい箇所を重点的にテストコードでカバーすることを考えたい。 テストコードは後付け 由

    私家版テスト駆動開発 - rabbit2goのブログ