Cucumber简介

Cucumber是一款支持BDD的自动化测试工具,它使用Gherkin语法,允许用业务语言编写测试用例。BDD强调用简单语言描述软件行为。Gherkin包括Feature、Scenario和Steps等关键字,使得非技术人员也能理解。Cucumber的剧本文件包含功能描述,通过Given、When、Then等步骤定义测试流程。
摘要由CSDN通过智能技术生成

        Cucumber 是一个能够理解用普通语言描述的测试用例的支持行为驱动开发(BDD)的开源自动化测试工具,用Ruby、JavaScript、Java和.Net等多种开发语言。Cucumber是程序员用于测试其他软件的开源软件工具。它运行以行为驱动开发(BDD)风格编写的自动验收测试。

BDD

        BDD:Behavior-driven development,行为驱动开发。BDD是一种敏捷软件开发的技术。行为驱动开发(BDD)是测试驱动开发的延伸,开发使用简单的,特定于领域的脚本语言。

Gherkin

        BDD方法的核心是其简单的语言解析器,称为Gherkin。它允许用客户可以理解的逻辑语言来指定预期的软件行为。因此,Cucumber允许执行用面向业务的文本编写的功能文档。 Cucumber用Gherkin语法,它是一种用自然语言来定义测试用例。它被设计成非技术人员都可以读懂的,并且共同描述与软件系统有关的用例。Gherkin的语法背后的目的是促进整个开发团队(包括业务分析师和经理)的行为驱动开发实践。它试图从企业管理的需求定义的初始阶段开始,并在开发生命周期的其他阶段执行稳固,明确的需求。

语法

        Cucumber的文件又称为剧本文件。所有的剧本文件都有.feature文件扩展名。它们包含被测系统的单个功能定义,并且是一个可执行的测试脚本。文件中的指令是任何非空和非注释行。它们由一个公认的Gherkin关键字和一个字符串组成。每个Cucumber剧本文件中描述一个功能(Feature),它细分为场景(Scenario),场景中包含多个顺序执行的步骤(Step),即步骤序列。

关键字

  • Feature
  • Scenario
  • Given&#x
在 Pytest-BDD 中,你可以使用 `pytest-html` 插件来生成测试报告,并且该插件支持录制每个 scenario 的动图。下面是一个示例的 `pytest.ini` 文件和使用 `pytest.mark.record_tests` 装饰器来记录动图的示例代码: 首先,在项目根目录下创建一个 `pytest.ini` 文件,并添加以下内容: ```ini [pytest] addopts = --html=report.html ``` 接下来,在你的测试文件中,你可以使用 `pytest.mark.record_tests` 装饰器来记录每个 scenario 的动图。示例代码如下: ```python import pytest from pytest_bdd import scenarios, given, when, then from selenium import webdriver # 定义 scenarios scenarios('path/to/feature_file.feature') @pytest.fixture(scope='session') def browser(): # 在整个测试会话期间启动浏览器 driver = webdriver.Chrome() yield driver driver.quit() @given('I am on the home page') def step_given(browser): browser.get('https://www.example.com') @when('I click on the button') def step_when(browser): button = browser.find_element_by_id('button-id') button.click() @then('I should see the result') def step_then(browser): result = browser.find_element_by_id('result-id') assert result.text == 'Expected Result' @pytest.mark.record_tests def test_scenario(): pass ``` 在上面的示例代码中,我们使用 `pytest.mark.record_tests` 装饰器来标记测试函数 `test_scenario`。当运行测试时,`pytest-html` 插件会生成一个名为 `report.html` 的测试报告,并且会记录每个被标记的测试函数的动图。 确保你已经安装了 `pytest`、`pytest-bdd` 和 `pytest-html` 这些依赖。然后,在命令行中运行 `pytest` 命令,它将运行你的测试并生成测试报告,其中包含所有标记为 `record_tests` 的 scenario 的动图。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值