昨天看了些cucumber,简单说说我的想法
cucumber应该用来做集成、功能测试,而实际应用还需要通过其他测试框架(rspec, test::unit……)来做单元测试。
cucumber测试当中有用自然语言描述feature文档和相应的测试程序steps,我想steps应该是features文档的程序化版本(ruby,python……),
在描述上steps与 features有很多重复,也就是说你改了features一些描述,也差不多你也要改改steps相应的描述内容,这样能使行为描述一致。
而features即特定格式的需求描述,而需求是不确定的,改的动作应该算是够频繁,而反过来steps的改的也够频繁,
这样也就降低了测试的速度。
照上面描述,能不能把steps去掉,直接features(documents) -》 app program 来测试,
我就把归为DDD(Document Driven Development)
通过文档(documents),结合语言的注释来驱动测试,拿个cucumber自带的的加法的一个例子说事吧
文档
功能:加法
为了避免一些愚蠢的错误
作为一个数学白痴
我希望有人告诉我数字相加的结果
场景: 相加
输入
5和
6相加得
11
输入
1,
2,
3相加得
6
程序
class Calculator
#相加------------于文档的"相加"关键字匹配,然后传入文档的参数
def add(*a)
a.inject(0){|n,sum| sum+=n}
end
end
通过文档的相应的关键字与ruby method的注释匹配来建立关联,然后文档可以传入想要参数到方法
上面说的,用的都很简单,也没考虑很多细节,至于这种思想是否可行,技术是否可行,有待考察,研究。
分享到:
- 2009-07-06 16:16
- 浏览 675
- 评论(0)
- 论坛回复 / 浏览 (0 / 2527)
- 查看更多
相关推荐
**RSpec** 和 **Cucumber** 是两种广泛使用的BDD工具,它们帮助开发人员编写清晰、可读性强的测试用例,并支持整个团队(包括非技术成员)更好地理解软件需求。 ##### RSpec:Ruby语言的首选BDD框架 **RSpec** 是...
7. **运行 Cucumber**: 完成所有配置后,可以在包含 Cucumber 规范的目录下运行 Cucumber。例如,如果你的 Cucumber 文件位于 `D:\Ruby192\lib\ruby\gems\1.9.1\gems\cucumber-1.2.0\examples\i18n\en\features` ...
1. **安装 Cucumber**: - 在命令提示符窗口中输入 `gem install cucumber` 来安装 Cucumber。 2. **安装 Watir-Webdriver**: - 运行命令 `gem install watir-webdriver` 安装 Watir-Webdriver 库。该库用于...
1. **安装 Cucumber**: - 确保已成功安装并配置好 JRuby 环境。 - 打开命令窗口,执行 `gem install cucumber` 命令来安装 Cucumber。 2. **配置控制台输出颜色**: - 执行 `gem install aslakhellesoy-ansi...
### Cucumber 学习笔记 V1.0 #### Cucumber 的特点 Cucumber 是一个用于执行功能描述作为自动化测试工具的框架。它所使用的语言被称为 Gherkin,一种旨在简化功能描述并使其易于理解的语言。Cucumber 的核心优势...
Maven 搭建cucumber 简单示例 1.新建Maven 项目 2.Eclipse安装 cucumber 插件:Help->Install New Software->Add name:cucumber location:http://cucumber.github.com/cucumber-eclipse/update-site 3.导入示例项目,...
### 关于《Cucumber书》(英文版)的知识点概览 #### 一、Cucumber的概念与作用 根据书名及描述,“Cucumber”并非一个简单的应用测试工具,而是一种沟通理念,它能够有效地帮助开发者与客户之间建立更加清晰的...
3. **安装Cucumber**: 使用Gem安装Cucumber,运行`gem install cucumber`。这将安装Cucumber的基本框架。 4. **安装FireWatir**: 为了能够与Firefox浏览器交互,需要安装FireWatir库。在命令行中输入`gem install ...
**Cucumber** 是BDD的基石,它支持Gherkin语法,这是一种业务友好的方式来编写测试场景和步骤定义。Gherkin语法以.feature文件的形式书写,每个文件描述一个功能或场景,包含背景、场景和断言。 **JUnit** 是一个...
1. **Cucumber**:Cucumber是一种用于执行验收测试的工具,它使用自然语言描述测试案例,非常适合非技术背景的利益相关者(如产品经理或客户)参与进来。RSpec和Cucumber可以很好地协同工作,RSpec负责单元测试和...
Cucumber.jar是一个关键组件,它是自动化测试框架Cucumber的核心库,用于支持行为驱动开发(BDD)中的测试执行。这个JAR文件包含了运行Cucumber测试所必需的类和资源,使得开发者和非技术人员可以通过自然语言编写可...
- **配置Cucumber**:在`sbt-build`文件中,需要设置Cucumber的相关属性,如指定测试源代码目录、步骤定义文件的位置、以及如何输出测试结果。 ### 3. Scala中的BDD测试实践 - **类型安全**:Scala的静态类型系统...
**Cucumber** 是一个流行的BDD框架,它支持多种编程语言,包括Java。在本教程中,我们将深入探讨如何使用Cucumber进行BDD测试。 首先,我们要了解**Cucumber**的基本概念。Cucumber允许我们使用一种名为**Gherkin**...
【IntelJ IDEA与Cucumber Java整合实践】 在软件测试领域,行为驱动开发(Behavior Driven Development, BDD)是一种常用的方法论,它强调通过描述软件的行为来定义需求。Cucumber是一个支持BDD的自动化测试框架,...
***** Appium和Selenium WebDriver的Cucumber设置***** -----从命令行运行TestSuits ----- ---所需的依存关系/图书馆/监狱清单--- 1) cucumber-core-1.2.5.jar // ...
Cucumber 是一个自动化测试框架,尤其适用于行为驱动开发(BDD)。它允许非技术人员,如业务分析师和产品经理,使用自然语言编写测试规范,这些规范被称为特性文件。Cucumber 使用 Gherkin 语法,这是一种结构化的...
Cucumber 是一个强大的自动化测试工具,它支持行为驱动开发(BDD)。在软件开发中,BDD 是一种方法论,它强调从用户的角度来描述软件的功能,使得非技术人员也能理解软件的行为。Cucumber 可以将这些描述转换为可...
Cucumber,一个强大的自动化测试框架,以其易读性和可维护性在软件开发领域备受推崇,尤其在集成测试和行为驱动开发(BDD)中扮演着关键角色。它不仅支持Web应用的测试,还能够应用于移动应用(APP)以及API接口的...
【Cucumber 框架详解】 Cucumber 是一个流行的自动化测试框架,主要应用于行为驱动开发(BDD)项目。在 Java 开发环境中,Cucumber 可以帮助开发者、测试人员和非技术人员通过自然语言编写可执行的测试用例,使得...
You can test just about anything with Cucumber. We certainly have, and in Cucumber Recipes we’ll show you how to apply our hard-won field experience to your own projects. Once you’ve mastered the ...