タグ

testに関するokonomiのブックマーク (10)

  • 状態ではなく、振る舞いをモックせよ

    TL;DR GOOS『実践テスト駆動開発』で触れられている「ロールをモックせよ」について、違った角度で解説ドメインモデルを豊かにすることでコードがシンプルになる例Mock Behaviors, Not Statesユニットテストを記述する際、テスト対象のオブジェクトが利用しているオブジェクト(依存オブジェクト、隣接オブジェクト)はモックオブジェクトにして、テストしたい状況をテストコード側からコントロールします。しかし、闇雲にモックを使ってテストを記述すれば良いわけではありません。今回は、モックが有効に機能するテストとはどういったものなのかを解説します。 サンプルコード簡単なサンプルで説明します。Extract Till You Dropのモデルと近いものを使います。グループ、メンバー、およびグループリポジトリがあります。グループオブジェクトはインメモリでは所属メンバーの情報を保持しておら

    状態ではなく、振る舞いをモックせよ
    okonomi
    okonomi 2013/11/08
  • UA Testing with Selenium and PHPUnit

    Last week I spoke at php[tek] 2013 where I explained to people how to get started with Selenium IDE to record user interaction with the web interface, convert them to PHPUnit testcases and automatically execute them on multiple browsers on multiple platforms. The feedback I got was awesome, you're all a great crowd! But on twitter I also received a bunch of questions regarding how to set up multip

    UA Testing with Selenium and PHPUnit
  • BDD + Alpaca-Webkit = headless acceptance test framework for PHP web application. - chobi_e's blog

    Alpaca-webkitはcapybara-webkitのwebkit_serverと通信を行ってPHPでwebkitブラウザを動作させるためのツールキットです。まだまだ鋭意製作中なのでがんがん変わりますがどういったことができるか、ということの説明をかいておきましょう。 Capybara-webkit Capybara-webkitはthoughtbot社が作成しているQtWebkitを利用してブラウザでのテストが行えるライブラリです。Capybara-webkit自体はrubyのライブラリとc++で書かれたQtWebkitのサーバーの二つが同梱されています。 このQtWebkitのサーバープログラムはソケット通信で内部のWebkitブラウザに指示を出しJavaScriptの実行や、HTMLの操作などなどが行えます。普通、PHPでこういったブラウザ関連のテストをする場合は現状Selen

  • CakePHP 2.xのtestActionをちゃんと理解しよう

    CakePHPでの開発を始めて1年半近く経ちました。しばらく、テストは目視でのテストばかりやっていたのですが、最近になってようやくPHPUnitを使ったテストを始めました。 以前にJavaの開発でJUnitを使っていたことはあるので、xUnitを使ったユニットテストのやり方とか考え方は理解しています。なので、CakePHPでのModelのテストは難なく理解出来たのですが、Controllerをどうやってテストするのか?というのが難しかった。 そもそも、ControllerというはHTTPのRequestとResponseが前提なので、Modelのように単純にテストコード内でインスタンスを作って、メソッドを呼び出して、結果を検証して・・・というようには行きません。 以前のJUnitでやっていた頃はWebのフレームワークとしてStrutsを使っていたけど、あのときはActionのテストってどう

    CakePHP 2.xのtestActionをちゃんと理解しよう
  • PHPUnit: The PHP Testing Framework

    Welcome to PHPUnit! PHPUnit is a programmer-oriented testing framework for PHP. It is an instance of the xUnit architecture for unit testing frameworks.

    PHPUnit: The PHP Testing Framework
    okonomi
    okonomi 2011/11/19
    PHPUnitはDBのテストもサポートしてるのか。やってみよう。
  • 自動テストの知識をプログラマは知らないと恥ずかしい | Act as Professional - hiroki.jp by HIROCASTER

    1.テストやデバッグに使う時間を削減して、プロダクトコードの品質をあげる 単体・結合・統合テストは全体の8〜25%が費やされるべきであるといわれています。ですが、デバッグは開発の50%におよぶ場合があると言われています。これは、テストには来多くの時間を割くべきであるが、デバッグが膨大な時間に及ぶことが事実としてあるということです。 プログラミングについてあまり知られていない7つのことより 1.スキルのレベルにかかわらず、プログラマーは全時間のおよそ10~20%をコードを書くのにあてており、たいていのプログラマーは完成品ができるまで一日あたりおよそ10~12行のコードを書いています。優秀なプログラマーは残りの90%のうち大部分を、考えること・調べること・最高の設計を見つけるための検証作業に費やします。ダメなプログラマーは残りの90%のうち大部分を、やみくもに変更と検証を繰り返すようなデバッ

    自動テストの知識をプログラマは知らないと恥ずかしい | Act as Professional - hiroki.jp by HIROCASTER
    okonomi
    okonomi 2011/02/17
  • Clean code

    The document discusses the history and current state of climate change research. It notes that scientific consensus has formed around the occurrence of climate change due to human activity like fossil fuel burning. Recent studies have found that climate change effects are happening faster and more extensively than previous estimates, with impacts including more extreme weather, rising sea levels,

    Clean code
    okonomi
    okonomi 2011/02/17
  • PHPでTest::MoreするならLimeを使おう - Lism.in * blog - nekoya (id:studio-m)

    「自分のメイン言語はPerlだけど、会社ではPHP使ってる。PHPでもTest::Moreみたいにテストしたい」という人は結構いるんじゃないかと思います。 「php test::more」でググると出てくるのはここ。 Test::MoreのPHP版 : cotalog 紹介されているtest-more.phpは確かにTest::Moreライクな実装ですが、機能的に不足があったり全体的に作りが古くて、自分で拡張するにも今ひとつ。 そんなあなたにsymfonyで採用されている独自のテストフレームワーク「Lime」。これがまさにPHP版Test::Moreです。 LimeTestingFramework - symfony - Trac このLimeはsymfonyのテストフレームワークとしてもう2年程前から採用されているのですが、Test::Moreを基にしたという記述が無いためか、それっぽい

    PHPでTest::MoreするならLimeを使おう - Lism.in * blog - nekoya (id:studio-m)
  • UnitTestPatterns - igaiga fswiki

    最終更新時間:2008年04月26日 14時11分54秒 This Page is translated from follow URL. http://www.marcclifton.com/tabid/87/Default.aspx (c) 2005 Marc Clifton All Rights Reserved. This page is translated by Kuniaki IGARASHI, Yasuhiro SUGINO. mail : igarashikuniaki@gmail.com このページは上記のwebページを日語訳したものです。 翻訳のおかしい部分、こなれていない部分はご指摘頂ければありがたいです。 現在鋭意翻訳中です。 Introduction ユニットテストは常に人々に強い反応を引き起こすようです。ユニットテストを導入する際には満場一致で、良いユニット

  • Writing Tests [PHP-QAT: Quality Assurance Team]

    phpt テストの基 phpt テストとは何か? phpt テストは小さなスクリプトで構成され、PHP内部で使用されたり、 PHPの機能をテストするために品質保証チームに使用されます。 これは新リリースで使用することができ、前リリースでできたことがすべてできるかの確証を得たり、 または現在のリリースでバグを見つけるのに役立ちます。 phpt テストを記述することで、PHPをより安定させることができます。 phptテストを書くにはどんな能力が必要ですか? phptテストを書くのに当に必要なことは、PHP言語・テキストエディタ・ およびあなたのコードの結果を得る方法、について基的な理解だけです。 それだけです。 もし、あなたがPHPスクリプトを既に書いていて、実行しているならば、 必要な物がすべて揃っています。 phpt テストに何を書きますか? 基的には、利用可能な様々なphp

  • 1