本文要阐述的主要有两点,一是介绍自动化测试框架JBehave,二是介绍如何在Github上拉项目,编译成myeclipse环境中的项目,并最终导入Myeclipse中运行。

JBehave是何物?

  JBehave是基于BDD框架的开源自动化测试框架。提供Web集成的BDD层扩展。

JBehave特征

  • JBehave是纯Java实现,可以利用Java丰富的API为己所用;
  • 具有基于文本的story,可以对其进行定义并执行,比较灵活和易扩展;
  • 基于注解(Annotation)的运行配置信息,指定story对一个的steps类文件;
  • 支持依赖注入
  • 具有多种不同呈现方式HTML、XML、TXT等的story report
  • 支持多种IDE编辑环境;
  • 支持Ant、Maven集成;
  • 可以使用Junit或者任何基于annotation的测试框架运行story测试。

JBehave  Web特征:

  • JBehave Queue:允许stories异步运行
  • Web Runner:允许stories同步运行
  • Selenium Integration:支持使用Selenium进行网页自动化测试

 构建一个JBehave的应用的5大步骤:

  1. Write story
  2. Map steps to Java
  3. Configure Stories
  4. Run Stories
  5. View Reports

  从了解BDD到JBehave,一直在想的就是像当初学习Prefuse那样,可以先搭起环境,然后run一些demo,这样更加直观,也更方便调试学习。可是这一路并不顺利(客观来说,还好,花了两三个晚上),在Github大行其道的时候,却一直没有从github上pull项目,尤其是Maven项目,并运行。所以首先想到尝试去Github上pull一些可以用的project,至于将这些步骤写出来,主要是因为当时自己在网上搜了一轮,或是只言片语,或是顾左右而言他,也没有专门针对这个问题写出详细步骤的,所以准备在这里做个笔记,留下自己经过的足迹。下面简述下整个过程。

1.已知

安装:Myeclipse8.6

JDK1.6

2.Git插件和Maven:

2.1 下载好Git插件

  

  导入Git项目的插件到Myeclipse中(下载后解压,将features、plugins文件夹和artifacts.jar、content.jar至于MyEclipse\dropins\egit\目录下,重启即可)

  安装成功后,就会由如图所示选项。

2.2 安装配置Maven

  下载Maven并配置好环境变量,同时将settings.xml文件拷贝到User/Administrator/.m2下。通过maven -version来验证是否安装成功:

3.选择合适的github项目pull下来

3.1 打开Myeclipse

  File->Import->Projects from git,点击next,再点击clone,在弹出的对话框中输入git项目的链接

3.2 如何获取git项目的链接?

  选中你需要的git项目,进入详情页面,在右侧点击如图所示的按钮,该项目对应的链接就会被复制。

  将此链接粘贴进3.1打开的对话框的URI中,如下图所示:

  之后一路next,直到finish,最后你会发现项目被pull到git的安装目录下。

4.通过执行命令生成Myeclipse项目文件

  通过dos命令窗口,进入项目目录下,执行mvn eclipse:eclipse,等待命令执行完毕后,就可以将项目导入到Myeclipse中。

  至此,就成功的实现了将Github中的代码pull下来,并完美的导入Myeclipse以备运行。

友情赞助

如果你觉得博主的文章对你那么一点小帮助,恰巧你又有想打赏博主的小冲动,那么事不宜迟,赶紧扫一扫,小额地赞助下,攒个奶粉钱,也是让博主有动力继续努力,写出更好的文章^^。

    1. 支付宝                          2. 微信

                      

开发人员看测试之运行Github中的JBehave项目的更多相关文章

  1. 开发人员看测试之细说JBehave

    上篇我们说到如何从Github上clone出一个JBehave项目,既是为了学习JBehava,也是为了熟悉下Github.从clone下来的项目看来,基本没什么问题,稍微捋一捋就可以运行,但是就cl ...

  2. 开发人员看测试之TDD和BDD

    前言: 已经数月没有来园子了,写博客贵在坚持,一旦松懈了,断掉了,就很难再拾起来.但是每每看到自己博客里的博文的浏览量每天都在增加,都在无形当中给了我继续写博客的动力.最近这两天有听到Jbehave这 ...

  3. 写给Android App开发人员看的Android底层知识(1)

    这个系列的文章一共8篇,我酝酿了很多年,参考了很多资源,查看了很多源码,直到今天把它写出来,也是战战兢兢,生怕什么地方写错了,贻笑大方. (一)引言 早在我还是Android菜鸟的时候,有很多技术我都 ...

  4. 利用git把本地项目传到github+将github中已有项目从本地上传更新

    利用git把本地项目传到github中 1.打开git bash命令行,进入到要上传的项目中,比如Spring项目,在此目录下执行git init 的命令,会发下在当前目录中多了一个.git的文件夹( ...

  5. 写给Android App开发人员看的Android底层知识(6)

    (十一)BroadcastReceiver BroadcastReceiver,也就是广播,简称Receiver. 很多App开发人员表示,从来没用过Receiver.其实吧,对于音乐播放类App,用 ...

  6. 写给Web开发人员看的Nginx介绍

    译者注:不知道其他开发者是否和我一样,参与或者写了很多Web项目,但是却没有真正的去完整的部署应用,很多时候都是交给ops即运维的同学帮忙来做.而作为一个有节操的开发者,我认为了解一些服务器方面的知识 ...

  7. 写给Android App开发人员看的Android底层知识(2)

    (五)AMS 如果站在四大组件的角度来看,AMS就是Binder中的Server. AMS全称是ActivityManagerService,看字面意思是管理Activity的,但其实四大组件都归它管 ...

  8. 写给Android App开发人员看的Android底层知识(3)

    (七)App启动流程第2篇 书接上文,App启动一共有七个阶段,上篇文章篇幅所限,我们只看了第一阶段,接下来讲剩余的六个阶段,仍然是拿斗鱼App举例子. 简单回顾一下第一阶段的流程,就是Launche ...

  9. 写给Android App开发人员看的Android底层知识(5)

    (十)Service Service有两套流程,一套是启动流程,另一套是绑定流程.我们做App开发的同学都应该知道. 1)在新进程启动Service 我们先看Service启动过程,假设要启动的Ser ...

随机推荐

  1. 【MySQL】事务没有提交导致 锁等待Lock wait timeout exceeded异常

    异常:Lock wait timeout exceeded; try restarting transaction 解决办法:(需要数据库最高权限) 执行select * from informati ...

  2. activity启动模式区别和优化

    初学android的开发人员,可能会经常忽略这个重要的设置. Activity一共有以下四种launchMode:1.standard2.singleTop3.singleTask4.singleIn ...

  3. PHPBB公布新的维护版本

    9月28日,PHPBB官方网站公布了新PHPBB的最新消息.这个版本命名为:"Richard 'D¡cky' Foote",版本号为3.0.12.据官方的说明,“这个版本是一个维护 ...

  4. System.load(String filename)和System.loadLibrary(String libname)的区别

    前言 之前一篇文章在写Native方法的时候,第一个步骤里面有这么一段代码 static { System.load("D:" + File.separator + "H ...

  5. 解决Win7 软件图标不显示--Win7图标异常,快捷方式不显示解决方法

    电脑症状:WIN7的系统,桌面上的图标显示的不正常,快捷方式显示的是未知程序.看不到程序默认图标,快捷方式图标不显示. 解决方法:删除程序图标缓存即可.   将下面的内容复制到记事本保存为“Repai ...

  6. java提高篇(五)-----抽象类与接口

    接口和内部类为我们提供了一种将接口与实现分离的更加结构化的方法. 抽象类与接口是java语言中对抽象概念进行定义的两种机制,正是由于他们的存在才赋予java强大的面向对象的能力.他们两者之间对抽象概念 ...

  7. [问题解决]安装 SQL Server 无法开启NetFx3.5 的错误

    谷歌了一下,该问题是由于系统中缺少.Net3.5相关特性造成的.需要手动安装一下3.5的环境 解决办法: Windows 徽标键+R打开运行窗口 输入Dism /online /enable-feat ...

  8. java程序 启动时参数

      iEMP34:/opt/version/lktest/b030/jre/jre_linux/bin # ./java -classpath . SysInfo Exception in threa ...

  9. 我心中的核心组件~MSMQ与Redis队列

    回到目录 这个文章其实是我心中的核心组件的第七回,确实在时间上有些滞后了,但内容并不滞后!本文MSMQ只是个引题,我确实不太想说它,它是微软自己集成的一套消息队列,寄宿在Window服务里,稳定性十在 ...

  10. Atitit 热更新资源管理器 自动更新管理器 功能设计

    Atitit 热更新资源管理器 自动更新管理器 功能设计 · 多线程并行下载支持 · 两层进度统计信息:文件级以及字节级 · Zip压缩文件支持 · 断点续传 · 详细的错误报告 · 文件下载失败重试 ...