Laravel Testing Decoded 日本語版
Laravel Testing Decoded 日本語版
$15.00
最低販売価格
$20.00
希望販売価格
Laravel Testing Decoded 日本語版

この本は 100%完全です

2014-02-07に完了

本書について

(訳者注:この書籍の対象は、Laravel4.0です。 現行の4.2でも考え方の部分は利用できますが、Laravelを含め、紹介しているツール類の更新・進化もあり、本書通り動作しない部分が多くなっています。著者は新しいテストについての書籍を、この秋に出版するとつぶやきましたが、2015年1月に次期バージョンの5.0リリースが予定されており、変更点も多いため、たぶん新しいテスト本は大分遅れると思われます。)

何度も経験しました。アプリケーションが大きくなるにつれ、段々いい加減になり、テストしないソースコードも増えていくんです。そのうち、アプリケーションを手動でテストするのは現実的でなくなってきて、「無理だ!」という話しになります。そんな時こそ、自動テストが本当に必要なんだと、認識し始めるのです。もちろん、皆さんも過去にTDDに関する書籍を読んでいらっしゃるでしょう。しかし状況は多種多様で、突然やってくる素晴らしい幸福な瞬間、「ああ、そうだったのか」と理解できる時を味わうには、実際に試してみる経験が必要なのです。

テストにおける問題は唯一、技巧的に陥ってしまう可能性があることだけです。実際、今皆さんが取り掛かっているソースコードは、テストできない可能性が大きいでしょう! 皆さんがまだ実感していないのは、そうです、テストは自分のコードを期待通りに動かすのに役立ち、パターンに従えばより良い開発者になれることです。過去のプロジェクトではまった、ぐちゃぐちゃで、不安定なスパゲティーコードは、もう現れません。信じてください。すぐにあなたも、新しいコードを目の前にすると、微笑みを浮かべながら、「これはどうやったらテストできるかな」とつぶやき、過去の自分を振り返り、(荒っぽくて古い)カウボーイのようなやり方をしていたことを思い出し笑いだすでしょう。

近代的なソフトウェア開発へようこそ。

テストの原則(とTDD)は、言語に依存するものではありません。実践しようと思えば、様々なツールとテクニックに手が届きます。この本ではアプリケーションをテストするために、Laravelの手法を深く分析しつつ、可能な限りTDDについても紹介していきます。

(以上、Laravel Testing Decoded、日本語版本文より)

Laravel4を使用し、よくテストされた、Webアプリを構築したい開発者のために、PHPUnitを初め、Mockery、Codeceptionを使用し、ユニットテスト、結合(統合)テスト、受け入れテストを実施したい方向けの解説書です。対象は、実際にPHPでテストやTDDをどのように取り入れたら良いか迷っている方、Laravelのテスタビリティーに興味をお持ちの方、既にテスト駆動し開発している方々でLaravelでの適用知識を探していられる方です。

TDDが理想だが、実際に応用できない技術ではなく、行なってみれば楽しく、初めから誤りの少ないシステムを構築するには、必然であることを教えてくれます。

生涯に渡りアップデートは無料です。

購入された代金の10%はLaravelプロジェクト(Taylorさん)に寄付されます。

This book is a translation into 日本語 of Laravel Testing Decoded which was originally written in English.

著者について

JeffreyWay
JeffreyWay

Laravelを気に入り、縁あって関連ドキュメントを翻訳しております。この書籍はLaravel4で初めての日本語版となりました。

Hirohisa Kawase
Hirohisa Kawase

Laravelを気に入り、縁あって関連ドキュメントを翻訳しております。この書籍はLaravel4で初めての日本語版となりました。

Table of Contents

  • 日本語版前書き
    • 日本語翻訳版について
  • ようこそ
    • 始まったばかり
    • この本はどんな人に役立つの?
    • なぜLaravel限定なの?
    • 演習
    • 誤記
    • この本を学び尽くす
    • 連絡する
  • 可能性に飛び込む
  • 第1章 全てをテストする
    • あなたは既にテストしている
    • TDDから得られる6つのこと
    • 何をテストすべきか?
    • 不安定なコードの6つのサイン
    • テスト関係の専門用語
    • リラックス
  • 第2章:PHPUnitの紹介
    • インストール
    • アサーション 110
    • まとめ
  • 第3章:PHPUnitの設定
    • オプション
    • XML設定ファイル
    • 継続的テスト
    • まとめ
  • 第4章:PHPUnitのくどさを薄める
    • アサーションを関数としてインポートする
    • LaravelスタイルをPHPUnitに適用する
  • 第5章:ユニットテスト110
    • 我が苦闘
    • ユニットテスト
    • 準備、実行、断言
    • 独立させてテストする
    • テストは順番に依存してはならない
    • テスト駆動開発
    • 振る舞い駆動開発
    • 関数をテストする
    • クラスをテストする
    • プロジェクトの完成
    • まとめ
  • 第6章:モデルをテストする
    • 何をテストするのか
    • アクセサー(ゲッター)とミューテーター(セッター)
    • カスタムメソッド
    • シンプルなクエリーテスト
    • バリデーション
    • ファクトリー
    • Laravelテストヘルパー
    • まとめ
  • 第7章:Mockeryでテストを優しくする
    • モックの解説
    • インストール
    • ジレンマ
    • 解決策
    • エクスペクティション(Expectation)
    • パーシャル(部分的な)モック
    • Hamcrest
    • まとめ
  • 第8章:データベースのテスト
    • データベーステスト
    • 環境を指定する
    • テストからArtisanを呼び出す
    • 実践してください
    • メモリ上のデータベース
    • まとめ
  • 第9章:入れ替えましょう
    • Mockery
    • テスト
    • まとめ
  • 第10章:コントローラー
    • コントローラーは何を行なっているか?
    • コントローラーをテストする3ステップ
    • コントローラーテストのHello World
    • Laravelのヘルパーアサーション
    • データベースをモックする
    • リダイレクション
    • パス
    • リポジトリー
    • 構造
    • DOMクロール
    • フォーム
    • まとめ
  • 第11章:IoCコンテナ
    • 依存の注入?
    • 解決
    • Appバインド
    • まとめ
  • 第12章:テスト駆動Artisanコマンド演習
    • コマンド110
    • 演習
    • まとめ
  • 第13章:APIのテスト
    • LaravelのAPI
    • APIをテストする
    • テストの例
    • まとめ
  • 第14章:Codeceptionによる受け入れテスト
    • アミューズ・ブッシェ(食前のおつまみ)
    • テストの気分転換
    • インストール
    • ブートストラップ
    • 受け入れテストの設定
    • テストを生成する
    • まとめ
  • 第15章:Codeceptionを使用した認証の実践
    • 機能
    • 機能をCodeception向けに変換する
    • ルートの登録
    • まとめ
  • 第16章:Codeceptionでの機能テスト
    • Laravel4モジュール
    • TestGuyを更新する
    • ユーザーを登録する
    • まとめ
  • 第17章:Travis CIで持続的インテグレーション
    • Hello, Travis
    • ビルド設定
    • まとめ
  • よくある質問(生きているドキュメント)
    • 1. グローバル関数はどうやってテストするのでしょうか?
    • 2. Codeceptionのテストのため、どうやってSQLダンプを生成するのか?
    • 3. Protectedメソッドはどうテストするのか?
    • 4. ゲッターやセッターもテストすべきか?
    • 5. どうしてPHPUnitは、フィルターを無視するのでしょうか?
    • 6. テストしているクラスのメソッドをモックにできますか?
    • 7. テスト名に下線を入れるのが好きなんです。それでも良いですか?
  • 最後に
    • ちょっと待ってください…
  • 追補:Mockery
    • モックオブジェクト
    • 動作要件
    • インストール
    • 0.8.*へのアップデート
    • シンプルなサンプル
    • PHPUnit統合
    • クイックリファレンス
    • 期待値条件の宣言
    • 引数のバリデーション
    • パーシャルモックを作成する
    • モックオブジェクトの検出
    • デフォルトモック期待値条件
    • パブリックなプロパティーのモック
    • public staticメソッドのモック
    • インスタンス化時にモックオブジェクトを生成する(インスタンス化モック)
    • メソッドの参照渡し引数の動作を妨げる
    • デメテルチェーンと流れるようなインターフェイス
    • Mockery例外
    • モックオブジェクトの記録
    • Finalクラス/メソッドの取り扱い
    • Mockeryグローバル設定
    • 予約メソッド名
    • PHPマジックメソッド
    • なるほど!(了解事項)
    • クイックサンプル
    • Mockery ライセンス
    • 追記

Leanpubは無条件かつノーリスクで100%の満足を保証します

Leanpubでお買い上げいただいた書籍は、ご購入後45日以内であれば全額返金いたします。払い戻しはわずか2クリックで完了します。払い戻し処理は手作業で行うため、完了まで数日かかる場合があります。詳しくは利用規約をご覧ください。

Write and Publish on Leanpub

Authors and publishers use Leanpub to publish amazing in-progress and completed ebooks, just like this one. You can use Leanpub to write, publish and sell your book as well! Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks. Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. It really is that easy.

Learn more about writing on Leanpub