私は、一連の静的メソッドを使用してクラスの単体テストを作成するという任務を負っています。そのほとんどは、クラス自体で定義されたある種の定数を返し、テスト内から物事を主張するだけのテストの価値について考えていました。自体。例えば:
public static function stringToHex($color = null) {
switch($color) {
case 'green':
return self::OK; // self::OK = '#00cc00'
break;
default 'red':
return self::DANGER; // '#cc0000'
}
}
自分自身をテストしているクラスで定義されている場合、どのように効果的に戻り値をテストしますか?私の頭のてっぺんからそれはこのようになります:
public function teststringToHex() {
$this->assertEquals(MyClass::stringToHexColor('green'), MyClass::OK);
}
しかし、私は結果がテストの価値すら知らないものであると主張しているので、これは正しくないようです。