2

たくさんのテストケースが1つのファイルに書かれています。これらは実際には一種の命令であり、JAVA内から読み取って実行することができます。

問題は、このアプローチが良くないことです。多くのテストケースでは、ファイルが大きくなり、管理できなくなります。それらをどのように管理すればよいですか?それらを別々のファイルに分割し、メタデータ用のXMLデータベースを用意することを考えていました。より良い方法はありますか?

PS:これらは単純な英語のテストケースではなく、JAVA内で実行できる一種の命令です。

更新:しかし、それらは単体テストではなく、機能テストのようなものであり、テストクラスではありません。プログラムは、ファイルからさまざまなテストケースを読み取り、それらを実行します。

4

1 に答える 1

0

キュウリが使用しているアプローチを見てください。ここには、人間が読める「機能」の説明があり、それぞれに、その機能を完全にテストするためのさまざまなシナリオが含まれています。1つの機能ファイルが単一のテストであるということも、テストクラス自体であるということもありません。また、プログラムがすべての機能ファイルを読み取って実行します。

ここでの全体的なパターンは、おそらくあなたにとっても有益でしょう。

http://cukes.info/

最近、Javaでこれらのcukeテストを簡単に記述できるようにするために、Rubyの元の母国語と同様に、かなりの量の作業が行われていることに注意してください。

CucumberのJavaポートは、次のようなJUnit4カスタムテストランナーを使用します。

@RunWith(Cucumber.class)
@Feature("create_user_account.feature")
public class CreateUserAccountTest {
}

このクラスはJUnitテストとして実行でき、コンソール出力はCucumberWebサイトに表示されるものと非常によく似ています。したがって、基本的に、すべての機能に対してこれらの「テストクラス」の1つがあります。次に、パッケージ全体に相当する機能、単一の機能、またはプロジェクト全体に相当する機能を、テストスイートにグループ化するか、Eclipseのテスト実行バッチを使用して、一度に実行できます。

于 2012-06-04T07:05:34.547 に答える