fact-real / developers_training_public

21 stars 1 forks source link

サーバサイド - サーバサイドテスト - 自動ユニットテストの基礎 #53

Open fr-sasaki opened 9 years ago

fr-sasaki commented 9 years ago

■目的

テスティングフレームワークのインストールと簡単なテストコードの記述をおこない、自動ユニットテストの基礎を学びます。 xUnit系、xSpec系の記述の違いについても簡単に触れます。

■課題1

数値の加算を行う簡単なプログラムがある。 RSpecおよびPHPUnitをインストールし、以下のことを検証するテストを記述してください。

  1. 1 + 2 = 3 となること
  2. 1 - 2 = -1 となること
    • 1 + (-2) であると考えてください
  3. 1 + 1.5 = 2.5 となること
class Adder
{
    public function add($x, $y)
    {
        return $x + $y;
    }
}
class Adder
  def add(x, y)
    x + y
  end
end

■課題2

テスティングフレームワークはxUnit系とxSpec系に大別できます。PHPUnitはxUnit系であり、RSpecはxSpec系です。 両者の違いを調べ、テストコードの可読性やメンテナンス性、テストのドキュメントとしての価値という観点から説明してください。 ヒント: 歴史的にはxUnit系のほうが古いので、主にxSpec系が台頭した理由を考えるという方向性で調べてみてください。

■課題3

作成したフォームに対し必要なテスト項目を考え、実際にテストを記述して下さい。