Cucumber-js 项目教程
cucumber-jsCucumber for JavaScript项目地址:https://gitcode.com/gh_mirrors/cu/cucumber-js
1. 项目的目录结构及介绍
Cucumber-js 项目的目录结构如下:
cucumber-js/
├── bin/
├── lib/
│ ├── cli/
│ ├── formatter/
│ ├── support_code_library_builder/
│ ├── user_code_runner/
│ ├── ...
├── node_modules/
├── test/
│ ├── cucumber/
│ ├── ...
├── .gitignore
├── .npmignore
├── .travis.yml
├── CHANGELOG.md
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.md
├── LICENSE
├── README.md
├── package.json
└── tsconfig.json
目录介绍
bin/
: 包含可执行文件。lib/
: 包含项目的核心代码。cli/
: 命令行接口相关代码。formatter/
: 格式化输出相关代码。support_code_library_builder/
: 支持代码库构建相关代码。user_code_runner/
: 用户代码运行相关代码。
node_modules/
: 依赖模块。test/
: 测试代码。.gitignore
: Git 忽略文件配置。.npmignore
: npm 忽略文件配置。.travis.yml
: Travis CI 配置文件。CHANGELOG.md
: 变更日志。CODE_OF_CONDUCT.md
: 行为准则。CONTRIBUTING.md
: 贡献指南。LICENSE
: 许可证。README.md
: 项目说明文档。package.json
: 项目配置文件。tsconfig.json
: TypeScript 配置文件。
2. 项目的启动文件介绍
Cucumber-js 的启动文件位于 bin/
目录下,主要文件是 cucumber.js
。这个文件是项目的入口点,负责启动 Cucumber 测试。
#!/usr/bin/env node
const {Cli} = require('../lib/cli');
const cli = new Cli();
cli.run(process.argv).then(
status => process.exit(status),
error => {
console.error(error.message);
console.error(error.stack);
process.exit(1);
}
);
启动文件介绍
#!/usr/bin/env node
: 指定使用 Node.js 运行此脚本。const {Cli} = require('../lib/cli')
: 引入lib/cli
模块中的Cli
类。const cli = new Cli()
: 创建Cli
实例。cli.run(process.argv)
: 运行命令行接口,并传递命令行参数。process.exit(status)
: 根据运行结果退出进程。
3. 项目的配置文件介绍
Cucumber-js 的配置文件主要包括 package.json
和 tsconfig.json
。
package.json
package.json
是 Node.js 项目的标准配置文件,包含项目的基本信息、依赖模块、脚本命令等。
{
"name": "@cucumber/cucumber",
"version": "10.8.0",
"description": "The official JavaScript implementation of Cucumber.",
"main": "lib/cucumber.js",
"bin": {
"cucumber-js": "bin/cucumber.js"
},
"scripts": {
"test": "cucumber-js"
},
"dependencies": {
...
},
"devDependencies": {
...
},
"repository": {
"type": "git",
"url": "git+https://github.com/cucumber/cucumber-js.git"
},
"keywords": [
"testing",
"bdd",
"cucumber",
"gherkin",
"automation"
],
"author": "Cucumber Limited",
"license": "MIT",
"bugs": {
"url": "https://github.com/cucumber/cucumber
cucumber-jsCucumber for JavaScript项目地址:https://gitcode.com/gh_mirrors/cu/cucumber-js