Iphone 弗兰克:可以用Objective-C写步骤定义吗

Iphone 弗兰克:可以用Objective-C写步骤定义吗,iphone,objective-c,cucumber,Iphone,Objective C,Cucumber,如何在Objective-C中编写步骤定义?例如: Given(@"^the address book is empty$", ^{ ABAddressBookRef addressBook = ABAddressBookCreate(); CFArrayRef people = ABAddressBookCopyArrayOfAllPeople(addressBook); for (int i = 0; i < CFArrayGetCount(people); i

如何在Objective-C中编写步骤定义?例如:

Given(@"^the address book is empty$", ^{
    ABAddressBookRef addressBook = ABAddressBookCreate();
    CFArrayRef people = ABAddressBookCopyArrayOfAllPeople(addressBook);
    for (int i = 0; i < CFArrayGetCount(people); i++) {
        ABAddressBookRemoveRecord(addressBook,
                CFArrayGetValueAtIndex(people, i), NULL);
    }
});
给定(@“^通讯簿为空$”^{
ABAddressBookRef addressBook=ABAddressBookCreate();
CFArrayRef people=abAddressBookCopyArrayFallPeople(地址簿);
for(int i=0;i
上面的例子是从

我为什么要做这样的事?因为,虽然我非常喜欢Ruby,但我更喜欢用Objective-C开发iOS应用程序,并用与我正在测试的应用程序相同的语言编写测试。此外,这将允许我做一些低级的事情,比如删除地址簿或用核心数据编辑其他数据

  • 我可以用大写字母“F”命名
    功能
    目录
    功能


  • 我同意;在Objective-C中测试您的Objective-C应用程序。就我个人而言,我使用Cedar进行测试,并将在Objective-C中对坚果进行汤处理(没有cuke),但我意识到这可能不是一个非常有用的答案。不是要劫持你的线程,但是你发现Frank比Cedar更容易设置吗?

    尝试回答你的第二个问题:

    默认情况下,我认为Cucumber会查找“features”目录。我不知道它是否区分大小写,但事实上,你的提问意味着它可能是区分大小写的。您可以在运行Cucumber时指定目录

    我的耙子里有一个黄瓜靶子,位置不标准

    Cucumber::Rake::Task.new do |t|
      t.cucumber_opts = ["--format pretty", "FunctionalTests/Frank"]
    end
    

    我在弗兰克的邮件列表上回答了马特的问题

    弗兰克和雪松的目的完全不同。Cedar专注于单元测试,在类中的单个方法级别。Frank专注于端到端UI功能级别的功能/验收测试。为什么没有Cuke?我还没有试过Frank,但粗略地看一下说明,我认为它比Cedar更容易设置。iCuke是一个单命令安装(iCuke)并且工作得很好,但是开发已经减少,我在Ruby 1.9.2上安装它时遇到了一个错误。事实上,Frank和Cedar一样难安装。或者只需将路径添加到cucumber命令:
    cucumber Features/