20 道 Cucumber 面试题及答案 (2025)
Cucumber 新手面试题及答案
1) 什么是 Cucumber?Cucumber 有哪些优点?
Cucumber 工具用于运行用纯文本编写的功能测试。它使用 Ruby 编程语言编写。
Cucumber 的优点是:
- 您可以让无法编写代码的业务利益相关者参与进来。
- 最终用户体验是优先考虑的。
- 高代码重用性。
👉 免费 PDF 下载:Cucumber 面试题及答案 >>
2) 执行 Cucumber 测试场景需要哪两个文件?
执行 Cucumber 测试场景需要两个文件:
- 功能
- 步骤定义
3) 解释 Cucumber 中 Background 关键字的用途?
Background 关键字用于将多个 given 语句分组到一个组中。当同一个 given 语句集在 feature 文件的每个场景中重复出现时,主要使用此关键字。
4) 给出一个纯文本的行为驱动测试示例?
- Feature:访问 abc.com 中的 XYZ 页面
- Scenario:访问 abc.com
- Given:我在 abc.com 上
- When:我点击 XYZ 页面
- Then:我应该看到 ABC 页面
5) Feature 文件中的 Scenario Outline 是什么?
Scenario Outline 允许使用场景大纲对同一场景执行多组数据。数据由(I I)分隔的表格结构提供。
6) 解释 Cucumber 中的“步骤定义”一词。
步骤定义是 feature 文件中提到的功能的实际代码实现。
7) 给出一个使用“Given”函数的步骤定义示例?
例如,让访问者访问网站“Yahoo”,我们使用的给定命令是:
Given (/^ 我在 www.yahoo.com$/) do
Browser.goto “http://www.yahoo.com.”
end – 这将访问 www.yahoo.com
8) Jbehave 和 Cucumber 有什么区别?
尽管 Cucumber 和 Jbehave 的目的相同,但验收测试是完全不同的框架。
- Jbehave 基于 Java,Cucumber 基于 Ruby。
- Jbehave 基于故事,而 Cucumber 基于特性。
9) 解释测试工具
Cucumber 和 Rspec 的测试工具允许在设置上下文、与浏览器交互以及清理步骤定义文件之间分离职责。
10) 何时使用 Rspec,何时使用 Cucumber?
- Rspec 用于单元测试。
- Cucumber 用于行为驱动开发。Cucumber 可用于系统和集成测试。
Cucumber 经验者面试题
11) Feature 文件中用于表达场景的语言是什么?
Gherkin 语言用于在 Feature 文件中表达场景,而 Ruby 文件包含对场景步骤的不显眼自动化测试。
12) 什么是正则表达式?
正则表达式是描述一定量文本的模式。最基本的正则表达式由单个文字字符组成。
13) 什么是 BDD?
BDD 或行为驱动开发是一种基于 TDD(测试驱动开发)的软件开发过程,专注于软件测试单元的行为规范。
14) 运行 Cucumber Web 测试用例需要哪些软件?
- Ruby 及其开发工具包
- Cucumber
- 像 ActiveState 这样的 IDE
- Watir (模拟浏览器)
- Ansicon 和 Rspec (如果需要)
15) Cucumber 的 features/support 文件包含什么?
features/support 文件包含支持的 Ruby 代码。support 中的文件在 step_definitions 中的文件之前加载,这对于环境配置很有用。
16) 什么是 Feature 文件?
Feature 文件用简单的语言包含对测试场景的高级描述。它被称为 Gherkin,这是一种纯英文文本语言。Feature 文件包含以下组件:
- Feature:描述当前要执行的测试脚本。
- Scenario:是特定测试用例的步骤和预期结果。
- Scenario outline:可以使用场景大纲对同一场景执行多组数据。
- Given:指定要执行的文本的上下文。
- When:指定要执行的测试操作。
- Then:预期的测试结果可以用“Then”表示。
17) 什么是 Selenium?
Selenium 是一种自动化工具,广泛用于基于 Web 应用程序的功能测试。Selenium 支持 Ruby、Java、Python、C# 等不同语言。
18) 为什么将 Cucumber 与 Selenium 一起使用?
Cucumber 和 Selenium 是两种流行的技术。许多组织使用 Selenium 进行功能测试。这些使用 Selenium 的组织希望将 Cucumber 与 Selenium 集成,因为 Cucumber 可以帮助您阅读和理解应用程序流程。
19) Cucumber 的优点
以下是使用 Cucumber 的一些显著优点。
- 它有助于让那些不熟悉代码的业务利益相关者参与进来。
- Cucumber 测试增强了最终用户体验。
- 测试编写风格允许更轻松地重用测试中的代码。
- 允许快速简便的设置和执行。
20) 什么是步骤定义?
步骤定义将 Feature 文件中的测试用例步骤映射到代码。它在被测应用程序上执行步骤,并根据预期结果检查结果。为了执行步骤定义,它必须与 Feature 中的给定组件匹配。
这些面试问题也将有助于您的口试