常见问题(FAQ)
Q: CukeTest支持哪个版本的cucumber.js?
A: CukeTest支持Cucumber 5.x。版本号中的“x”代表最近的版本。我们定期将引擎升级到新版本的Cucumber,以便CukeTest用户也可以使用Cucumber的新功能。
Q: 如何下载chromedriver?
A: chromedriver官方存储在google服务器上,国内网络问题不能下载。下面介绍几种通过配置NPM的方式来进行下载安装。
使用cnpm进行安装
参考 cnpm 文档说明 https://npm.taobao.org/,命令行执行:
$ npm install -g cnpm --registry=https://registry.npm.taobao.org
然后直接使用cnpm 安装chromedriver:
$ cnpm install chromedriver --save
npm 安装时直接指定淘宝cdn路径
$ npm install chromedriver --chromedriver_cdnurl=https://npm.taobao.org/mirrors/chromedriver
或者 在.npmrc文件中添加chromedriver 的cdn路径。
chromedriver_cdnurl=https://npm.taobao.org/mirrors/chromedriver
从https://npm.taobao.org/mirrors/chromedriver 下载对应的版本安装指定压缩包的文件路径:
npm install chromedriver --chromedriver_filepath=/path/to/chromedriver_mac64.zip
或者 .npmrc文件中指定压缩包的文件路径:
chromedriver_filepath=/path/to/chromedriver_mac64.zip
上面3种方法都可以安装chromedriver。
Q: 市面上有不少测试工具,如Selenium,Appium,Calabash等等,CukeTest属于哪一类?
A: CukeTest是一个测试脚本编辑和调试的平台,可以和多种测试框架集成,只要它们支持JavaScript语言。例如Selenium、Appium,就可以在在CukeTest下开发测试脚本。CukeTest可以开发Web、API、移动端的自动化脚本。
Q: 如何报告错误或向CukeTest提出建议?
A: 可以通过以下之一的途径:
Q: 在CukeTest中如何使用SQLLite3?
我安装了SQLLite3,在CukeTest中调用时,出现"A dynamic link library (DLL) initialization routine failed. ... note_sqlite3.node."的错误。
A: 这是因为SQLLite3包含有动态链接库,需要在二进制接口级别兼容,缺省用NPM安装的只跟Node兼容,而CukeTest使用的是Electron,二进制级别不兼容,因此需要重新编译。下面的链接介绍了如何编译:
https://stackoverflow.com/questions/32504307/how-to-use-sqlite3-module-with-electron
一个简单的方法是从https://github.com/zhangxy1035/electron_sqlite3直接下载针对Electron的二进制文件并替换到相应目录里,针对CukeTest是Electron 2.0 32位版本。
Q: 我的一个剧本有几十个场景,假如前面几个场景执行失败,能否快速跳过,不用运行这个剧本里之后的场景
A: 可以,您可以创建一个运行配置,将其中的快速失败设置成"true"。详见运行配置
Q: 我的报告截图比较多,生成报告的时候失败,错误信息"Invalid string length"
A: 您可以在“设置”-> “报告”中,将截图保存文件设置成"独立文件"。这样报告文件就不会受截图大小的限制。
Q: 能不能多个项目串起来运行?例如是否能够通过bat将每个运行命令串起来?
A: 可以,CukeTest支持命令行方式运行,关于具体命令参考命令行