0

辞書タグを宣言するクラスがあります

これはクラスFirstClassで宣言されています

-(NSDictionary *)getTags{

return tags;
}

ユニットテスト時

ocUnitTestingのFirstClassTestクラスを作成しました

含まれている#import"FirstClass.h"

-(void)setUP{


    [super setUp];
// Allocations the class

_firstClass = [[FirstClass alloc]init];

}

-(void)tearDown{
_firstClass =nil;
    [super tearDown];

}
-(void)testDictationGetValue{
// Need to write Unit test for that class
[_firstClass getTags];

}

ユニットテストを書くのはこれが初めてです!誰かが私に適切なユニットテストケースを書くように導くことができますか

@すべてのよろしくお願いします

4

2 に答える 2

1

まず、プレーンなゲッターを書いているようです。これは、現代の Objective-C ではあまり意味がありません。インスタンス変数へのポインターを返したいだけの場合は、合成された getter を使用します (そしてgetプレフィックスを削除します)。

次に、ここで何をテストしますか? ゲッターが実際に何らかの辞書を返すことをテストしたいだけの場合、テストは本質的に役に立ちません。たぶん、タグは他の値に従って計算されますか? 次に、これらの値を設定し、タグ ディクショナリが正しく計算されていることを確認します。自分のためだけにテストを書かないでください。

于 2013-01-30T16:50:32.837 に答える
0

そのはず!!!

 -(void)testDictationGetValue
    {

        _firstClass = nil;
        _firstClass = [[FirstClass alloc] init];

        NSDictionary *t_dictionary = [_firstClass getTags];

        if (t_dictionary == nil) {
            STAssertNil(nil, @"TestFailed return value is nil");

        }

        else {
            STAssertNotNil(t_dictionary, @"Retrun value");

        }
     }
于 2013-01-31T06:12:27.803 に答える