2011-12-04 12 views
2

私はJavaでメンバーシップレコードシステムを作成しましたが、現在メインのハードコードされたテストデータを取り込みましたが、このテストデータを別のクラスに追加し、別のテストデータクラスを持つのが一般的ですか、それともメインで初期化されるものですか?あなたが私を指すことができるアイデアやソース?Javaのメインクラスから別のクラスへのテストデータの移動

現在のドライバクラス:

public static void main(String[] args) { 

TestData tdata1 = new TestData(); 
tdat1.TestData(); 


Public Class TestData { 

Member jane = new Member ("jane"); 
Member alex = new Member ("alex"); 
Member mike = new Member ("mike"); 

Set<Member> members = new HashSet<Member>(); 
members.add(jane); 
members.add(alex); 
members.add(mike); 

答えて

2

あなたはユニットテストを考えがあります:

public static void main(String[] args) { 

Member jane = new Member ("jane"); 
Member alex = new Member ("alex"); 
Member mike = new Member ("mike"); 

Set<Member> members = new HashSet<Member >(); 
members.add(jane); 
members.add(alex); 
members.add(mike); 

私がしたいのですがどのようなものがありますか? junitを使用して、ハードコードされたテストデータをロードしてテストするテストメソッドを作成することができます。これにより、あなたのプログラムはテストコードから解放され(メインをクリーンアップすることによって)、テストを実装することができます。

また、メンバーシップレコードシステムにデータセットファイルを読み込むための小さなクラスを作成する方法はありますか?この方法で、(ハードコードされたテスト値で)そのファイルをロードすることができます。そして、あなたのソフトウェアが終了した後でもレコードを初期化する潜在的に有用な方法です。その機能が理にかなっている場合にのみ実行してください!

public class Main { 
    public static void main(String[] args) { 

     TestData tdata1 = new TestData(); 
     tdat1.test(); 
    } 
} 

そしてTestData.javaに:とにかく

public class TestData { 

    public void test() { 
     Member jane = new Member ("jane"); 
     Member alex = new Member ("alex"); 
     Member mike = new Member ("mike"); 

     Set<Member> members = new HashSet<Member>(); 

     members.add(jane); 
     members.add(alex); 
     members.add(mike); 
    } 
} 

、あなただけのJUnitを行う必要があり

0

私は私はあなたがするつもり何を理解していないが、私はそれを推測するには、何かのようなものです代わりに各操作のテストを行います。

関連する問題