文档章节

第1章Cucumber简介与环境设置

henni_719
 henni_719
发布于 2017/04/22 17:27
字数 1193
阅读 16
收藏 0

软件安装包: http://pan.baidu.com/s/1cxL2PK 密码: ebfi

第1章Cucumber简介与环境设置

1.1 BDD简述

         BDD(BehaviorDriven Development:行为驱动开发)为用户提供了从开发人员和客户的需求创建测试脚本的机会。因此,开始时,开发人员,项目经理,质量保证,用户验收测试人员和产品所有者(股东)都齐聚一堂,集思广益,讨论应该传递哪些测试场景,以便成功调用此软件/应用程序。这样他们想出了一组测试场景。所有这些测试脚本都是简单的英语语言,所以它也服务于文档的目的。

1.2 例子

  如果正在开发一个用户认证功能,这是可能有如下几个关键测试场景,为了能成功调用它这些场景必须测试通过。

1. 用户使用正确的用户名、正确的密码登录成功

2. 用户使用错误的用户、正确的密码不能成功登录

3. 用户使用正确的用户名、错误的密码不能成功登录

4. 用户使用错误的用户名、错误的密码不能成功登录

1.3 BDD工作流程

         代码必须通过在BDD中定义的测试脚本。如果没有发生,将需要代码重构。只有在成功执行定义的测试脚本后,代码才被冻结。测试流程:

          

         Cucumber是一个支持行为驱动的开发的开源工具。 更准确地说,Cucumber可以定义为一个测试框架,由简单的英语文本驱动。它作为文档、自动化测试和开发帮助。

它可以在以下步骤中描述:Cucumber读取在要素文件中以纯英语文本编写的代码;它找到步骤定义中完全匹配的每个步骤。

         这部分被执行的代码可以是不同的软件框像Selenium、Ruby on Rails等。不是每个BDD框架工具都支持每个工具。这也是Cucumber比那些框架受欢迎的原因,因为它支持:JBehave、JDave、Easyb等。

         Cucumber支持数十种不同的软件平台,例如:Ruby on Rails、Selenium、PicoContainer、Spring Framework、Watir。

1.4 Cucumber优于其他工具的优点

Ø  Cucumber支持不同的语言,例如Java、.net、Ruby

Ø  它充当业务与技术间桥梁的角色。可以通过在纯英文文本中创建一个测试用例来实现这一点。

Ø  它允许在不知道任何代码的情况下编写测试脚本,它允许非程序员参与。

Ø  它以端到端测试框架为目的

Ø  由于简单的测试脚本架构,Cucumber提供了代码可重用性

1.5 Cucumber环境设置

         在Window机器上部署Cucumber环境,语言是java,平台是Selenium。

         关于Java安装与环境变量设置,从网上自己查找,并设置成,设置完成,验证是否成功!

           

         java安装成功之后,安装Eclipse用于编译Cucumber,到官网下载相应版本,解压缩找到exe程序直接运行即可:http://www.eclipse.org/downloads

         之后是Maven安装设置:Maven是一个主要用于java项目自动化编译工具。它提供一个通用的平台来执行活动,如生成源代码,编译代码,打包代码到jar等。之后,如果任何软件版本被改变,Maven提供了一个简单的方法来相应地修改测试项目。

         Maven下载链接:https://maven.apache.org/download.cgi,从网上搜索如何Maven环境设置。

         Jave与Maven环境配置成功,启动Eclipse,进入到“Help -> EclipseMarketplace -> Search Maven -> Maven Integration for Eclipse ->INSTALL”。

         之后,使用Maven配置Cucumber的步骤如下:

         Step_1:创建一个Maven项目

      进入到“File -> New -> Others -> Maven-> Maven Project -> Next”,填写“group Id”(group Id是在所有项目中的唯一的标识),填写"artifact Id"(artifact Id不带有版本的jar的名称,用户可以选择任何名称(小写字母),点击完成。

        

      Step_2:打开pom.xml

       进入到项目浏览列表,扩展开项目名,找到pom.xml文件,打开该文件。

          

      Step_3:添加selenium、JUnit、Cucumber-JUnit、Cucumber-Java依赖

       这将指示Maven哪些r文件将从中央存储库下载到本地存储库。打开pom.xml文件,在项目tag里创建依赖tag(<dependencies></dependencies>)。在dependencies tag里创建dependency tag(<dependency></dependency>),在dependency tag提供如下信息:

          

      Step_4:验证binaries

      pom.xml编辑成功并保存,然后进入Project -> Clean 将花费几分钟。

           

         将能够看到一个Maven仓库,如下面的截图所示

           

         环境搭建成功,之后将创建一个功能文件、一个步骤定义文件、一个Junit runner运行test。

本文转载自:http://blog.csdn.net/henni_719/article/details/53586051

henni_719
粉丝 2
博文 466
码字总数 343938
作品 0
信阳
QA/测试工程师
私信 提问
Web Service API 验证--cucumber-api

cucumber-api,用于验证响应格式为JSON的Web Service API。可以用来单独测试Web Service API,或者与Calabash配合进行手机APP和Web Service API的联合测试。 安装步骤: 以Debian环境为例,其...

超爱fitnesse
2015/06/25
1K
0
《使用Nessus进行渗透测试》- 简介

简介 作者常逛的安全网站:http://www.webappsec.org/和http://www.securityfocus.com/。 漏洞评估(Vulnerability Assessment)和渗透测试(Penetration Testing)是IT安全的重要组成部分。《使...

磁针石
2015/06/11
0
0
《Oracle数据库基础与应用教程》一本Oracle入门教材

《Oracle数据库基础与应用教程》书全面讲述了Oracle数据库的日常管理工作内容。全书共14章,包含Oracle简介和安装、Oracle客户端、管理Oracle环境、Oracle体系结构、管理Oracle存储结构、SQL...

airfish2000
2016/08/30
0
0
全网首发mpvue课程小程序全栈开发视频课程 小程序实战教程 完整版

第1章 课程简介 本章节介绍了课程概述,教学方式 ,还有小程序项目的演示。 第2章 原生小程序 对原生小程序做一个入门的介绍,包括小程序帐号申请和开发工具安装和使用,小程序目录文件的讲解...

qq5b46e049de5e3
2018/07/12
0
0
新书上架:《Spring Boot 开发实战》基于 Kotlin + Gradle + Spring Boot 2.0 的企业级服务端开发实战

新书上架:《Spring Boot 开发实战》 — 基于 Kotlin + Gradle + Spring Boot 2.0 的企业级服务端开发实战 京东下单链接 https://item.jd.com/31178320122.html 天猫下单链接 https://detail...

程序员诗人
2018/08/22
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Jenkins系列_插件安装及报错处理

进入Jenkins之后我们可以进行插件的安装,插件管理位于以下模块: 发现上面报了一堆错误,是因为插件的依赖没有安装好,那么这一节,就先把这些错误解决掉吧。解决完成后,也就基本会使用插件...

shzwork
今天
2
0
mysql mysql的所有查询语句和聚合函数(整理一下,忘记了可以随时看看)

查询所有字段 select * from 表名; 查询自定字段 select 字段名 from 表名; 查询指定数据 select * from 表名 where 条件; 带关键字IN的查询 select * from 表名 where 条件 [not] in(元素...

edison_kwok
昨天
9
0
多线程同时加载缓存实现

import com.google.common.cache.Cache;import com.google.common.cache.CacheBuilder;import java.util.concurrent.ExecutionException;import java.util.concurrent.ExecutorServi......

暗中观察
昨天
3
0
利用VisualVM 内存查看

准备工作,建几个测试类。等下就是要查看这几个类里面的属性 package visualvm;public class MultiObject { private String str; private int i; MultiObject(String str...

冷基
昨天
2
0
组装一台工作游戏两用机

一、配置清单如下: 分类 项目 价格(元) 主板 华硕(ASUS)TUF Z370-PLUS GAMING II 电竞特工 Z370二代 支持9代CPU 1049 CPU 英特尔(Intel) i7 8700K 酷睿六核 盒装CPU处理器 2640 风扇 九...

mbzhong
昨天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部