1

public class Manager extends Employee {

/**
 * Manager Constructor takes in arguements and calls superclass
 * @param id
 * @param weeklyPay
 */
public Manager(int id, double weeklyPay) // Constructor
{
    super(id);
    super.weeklyPay=weeklyPay;
}

public String toString() // returns a String
{
    return "Manager "+super.toString();
}

public double calculateWeeklyPay() // calculates weeklypay
{
    return super.weeklyPay;
}

toString メソッドと calculateWeeklyPay メソッドをテストする必要があります。どうすればいいのですか?

4

1 に答える 1

0

ロジックがスーパークラスにあるように見えるため、このクラスをテストするかどうかはわかりません。しかし、ここに行く...

assertEquals(42d, new Manager(1, 42d).calculateWeeklyPay,0.001);

文字列が等しいかどうかをテストします (super.toString戻り値が返されると仮定します)。MyString

assertEquals("ManagerMyString", new Manager(1, 42d));

toString右側は自動的に呼び出されるか、明示的にしたい場合

assertEquals("ManagerMyString", new Manager(1, 42d).toString());

これらのメソッドはすべて JUnit の一部であり、Assertクラスを介して Java ファイルに静的にインポートできます。

于 2012-12-03T20:35:58.097 に答える