单元测试密钥

时间:2015-06-02 19:49:20

标签: ios objective-c unit-testing cocoapods specta

我正在使用cocoapods-keys并尝试测试该方法是否返回带有秘密API密钥的有效URL。

测试套件如下所示:

it(@"should return valid url for api", ^{
    NSURL *url = [APIRoutes apiURLWithPath:path parameters:nil];
    expect([url absoluteString]).to.equal([NSString stringWithFormat:@"http://www.api.com/api/v2/places?api_key=MY_API_KEY"]);
});

但真正的方法是返回我的有效API密钥,即哈希(例如8s97f89asf89asf987saf)并且我的测试失败。我该怎么测试呢?我应该在我的测试文件中创建我的类的假实现吗?

1 个答案:

答案 0 :(得分:1)

可行的方法是模拟APIRoutes持有的URL和API密钥,并测试您是否获得了预期的完整模拟URL。这样您只能测试逻辑而不是URL的特定值。