@Entity
JPAクラスの単体テスト生成を自動化するライブラリを作成しています。要するに、ユーザーはフィールド -> 値のペアのマルチマップを提供し、私のライブラリはそれらのテストを生成します。
テストデータの例:
lastName -> some name, some other name
firstName -> some first name, some other first name
テストを含むクラスがあるとします。
public class PersonTest
{
@Test
public void personNotValidNullLastname() {
// ...
}
@Test
public void personNotValidTooLongLastname() {
// ...
}
@Test
public void personNotValidDateofbirth() {
// ...
}
@Test
public void personValidAddressType() {
// ...
}
// ...
}
これらのテストを実行すると、TestNG コンソールから適切な出力が得られます。
PASSED: personNotValidDateofbirth
PASSED: personNotValidNullLastname
PASSED: personNotValidTooLongLastname
PASSED: personValidAddressType
ここで、その場でいくつかのテストを作成したいと思います。@Factory
次のようなメソッドで注釈を使用すると:
@Factory
public Object[] generateTests() {
// ...
}
このファクトリは、カスタム クラスのインスタンスを作成します。
public class EntityFieldTest
{
// ...
@Test
public void doTest()
{
testMethod.run(VALIDATOR, entityClass, field, value);
}
}
// Note that testMethod is an anonymous function parametrized elsewhere
生成されたすべてのテストを実行しますが、出力はあまり意味がありません。
PASSED: doTest
PASSED: doTest
PASSED: doTest
PASSED: doTest
テストメソッドを実行して、のような詳細な結果を得るにはどうすればよいPersonTest
ですか?