Frank也是一款深受开发者喜爱的iOS应用测试框架,该框架可以模拟用户操作对应用程序进行黑盒测试,并使用Cucumber作为自然语言来编写测试用例。此外,Frank还会对应用测试操作进行记录,以帮助开发者进行测试回顾。

  一、基本介绍
  Frank是ios开发环境下一款实现自动测试的工具。
  Xcode环境下开发完成后,通过Frank实现结构化的测试用例,其底层语言为Ruby。作为一款开源的iOS测试工具,在国外已经有广泛的应用。但是国内相关资料却比较少。其大的优点是允许我们用熟悉的自然语言实现实际的操作逻辑。
  一般而言,测试文件由一个.feature文件和一个.rb文件组成。.feature文件包含的是测试操作的自然语言描述部分,内部可以包含多个测试用例,以标签(@tagname)的形式标识,每个用例的首行必须有Scenario: some description;.rb文件则是ruby实现逻辑,通过正则表达式匹配.feature文件中的每一句自然语言,然后执行相应的逻辑操作,终实现自动测试的目的。

  二、安装
  1.       Terminal 输入sudo gem install frank-cucumber,下载并安装Frank
  2.       Terminal 进入工程所在路径,工程根目录
  3.       输入:frank-skeleton,会在工程根目录新建Frank文件夹
  4.       返回Xcode界面,右键Targets下的APP,选择复制,Duplicate only
  5.       双击APPname copy,更改副本名,例如 Appname Frankified
  6.       右击APP,Add Files to Appname……
  7.       勾选副本,其余取消选定。选择新建的Frank文件夹,Add.
  8.       选择APP,中间部分Build Phases选项卡,Link Binary With LibrariesàCFNetwork.framework,Add.
  9.       依旧中间部分,选择Build Settings选项卡,Other Linker Flags,双击,添加“-all_load”和“ObjC”
  10.   左上角,Scheme Selector,在RUN和STOP按钮的右边,选择Appname copy-IPHONE
  11.   浏览器中打开http://localhost:37265,可以在浏览器中看到植入Frank的应用
  我在添加了两个flag之后老是报错,尝试了N种方法之后索性全部删掉,结果可以了,无语

  三、基本步骤
  1.       terminal 切换到Frank文件夹所在目录
  2.       frank launch, 打开simulator,开始运行(默认是用IPHONE simulator,要用IPAD simulator时,需要如下命令行,添加参数:frank launch --idiom ipad)
  3.       cucumber Frank/features/my_first.feature --tags @tagname (注意tags前面两个‘-’)PS:如果没有tag则自动运行文件中所有case