ユーザーの入力をテストする方法を理解しようとしています (模擬テストではなく、実際のユーザーの入力のテストであることに注意してください)
現在、私のプログラムでわかるように、テストケースの値をハードコードしており、すべてのテストに合格していますが、ユーザーの入力を取得してテストするにはどうすればよいですか。
コンストラクターで System. を呼び出して、テスト クラスで MyClass1 のインスタンスを作成するときにそれを渡す方法はありますか?
可能であれば、理解を深めるためにサンプルコードを教えてください。
そのようなインターフェイスがある場合
public interface IMyClass{
public int getvalue1();
public int getvalue2();
public int getvalue3();
}
そして、そのようなインターフェースの実装
public class MyClass1 implements MyClass{
private int _value1 = 0;
private int _value2 = 0;
private int _value3 = 0;
public MyClass1(int number1, int number2, int number3)
{
_value1 = number1;
_value2 = number2;
_value3 = number3;
}
public void setLength1(int value1)
{
_value1 = value1;
}
public void setLength2(int length2)
{
_value2 = value2;
}
public void setLength3(int length3)
{
_value3 = value3;
}
public int getValue1()
{
return _value1;
}
public int getValue2()
{
return _value2;
}
public int getValue3()
{
return _value3;
}
}
そして最後にテストクラスそのもの:
public class ClasTest extends TestCase {
public void testNumbers()
{
MyClass1 numbers= new MyClass1(1,2,3);
assertThat(numbers.getValue1(),is(not(numbers.getValue2())));
}
}
ありがとう、助けてくれてありがとう。