命令行界面

使用Cucumber或node.js的用户都知道如何从命令行运行Cucumber测试。 CukeTest也支持从命令行运行测试,但命令行格式有不同。

命令行方式提供了你直接执行脚本而不用打开编辑界面的快捷方式,同时它也可以用来在持续集成(Continuous Integration, CI)工具(如Jenkins)中自动执行脚本。

请注意CukeTest桌面版和应用商店版的命令行是不一样的。如果你从其中一个版本切换到另一个版本,请更新你的命令行。

Windows桌面版的命令行

桌面版安装后,CukeTest 会添加到路径中,在命令行中输入“cuke”,就可以打开CukeTest,下面是一些其它用法:

  1. 将当前目录作为项目打开:

    1. cuke .
  2. 将当前目录下feature子目录的feature1.feature文件在新的CukeTest中打开:

    1. cuke feature/feature1.feature
  3. 如带”—run”参数,则为运行cucumber项目,参数可以参见下表

命令行解释
-r, —run运行Cucumber项目
—runjs运行一个JavaScript文件
-m, —man显示帮助文档窗口
-f, —format [value]输出报告格式, 可以是 “html”、”text”或”json”
—overwrite覆盖已有的报告
-b —browser [value]运行的浏览器类别
-t —tags [value]用于过滤场景的标签表达式,可以用双引号引起来
-o —out [value]输出目录
-v —video是否录制视频
—failfast在第一异常发生时停止运行
—no-color在命令行窗口不用颜色控制字符
-h, —help显示使用参数

当在某些终端,例如Jenkins或Windows定时任务计划中执行时,不支持色彩显示,色彩字符会显示成乱码。可通过—no-color设置只使用单一颜色显示。

除以上参数外,可以在命令行中添加0个或多个feature文件路径或文件夹路径,会运行指定的feature文件。

  1. 或者带”—profile”参数,指定某个已配置的运行配置名来运行。运行配置名和相应参数已配置在config/cucumber.yml文件中。具体配置方法可参见项目运行配置

如果要运行项目,请在你的项目目录下执行命令,下面是一些参数样例:

  • cuke --run

    以缺省的配置运行项目,输出格式为文本格式

  • cuke --run --format html

    运行项目并生成html格式的报表

  • cuke --run --format html --video

    生成html报表,并录制视频

  • cuke -r -failfast -t "@backend or @ui

    运行带@backend 或 @ui标签的场景,如果有一个场景失败则立刻停止运行

应用商店版的命令行

作为Windows应用商店应用,从命令行运行应用时,CukeTest仍需要遵循Windows Store规范。 因此,参数与您在Cucumber.js中看到的不同。 对于每个项目,您可以按照以下步骤从命令行运行测试:

  1. 点击“运行”=>“运行配置文件”菜单。 在配置文件编辑对话框中,使用配置文件配置进行播放,在该对话框的底部复制命令行参数。
  2. 点击“打开控制台窗口”按钮
  3. 在控制台窗口中,将复制的文本粘贴到窗口中:

    命令行界面 - 图1

Linux版本的命令行

在Linux中CukeTest的默认运行指令为cuketest,其它的选项格式与Windows桌面版相同。可同样在“运行配置文件”对话框中生成命令行并使用。

仍然使用cuke指令

如果希望将默认指令替换为与Windows桌面相同的cuke指令,可以在命令行运行以下的命令生成一个软链接:

  1. $> ln -s cuketest /usr/bin/cuke

接着就可以像Windows桌面版一样的调用cuke指令了。

在命令行中运行Qt自动化

在命令行中执行Qt自动化的项目时,如果用于Qt应用通信的Qt自动化服务运行的端口被CukeTest设计器占用,则会停止设计器中的Qt自动化服务来抢夺端口。如果在命令行运行过自动化以后,需要手动的点击左下角状态栏恢复Qt自动化服务,才能够成功运行Qt自动化项目。
状态栏中的Qt服务提示
启动Qt提示框

Mac版本的命令行

CukeTest的Mac版本也支持命令行。格式基本与Windows桌面板相同。可同样在“运行配置文件”对话框中生成命令行并使用。