组织JBehave故事

时间:2010-10-29 10:37:48

标签: java junit acceptance-testing jbehave

我们刚刚开始考虑使用JBehave进行验收测试,我想知道使用它的人是如何组织故事的写作和故事文件的存储的。这只是目前正在开发它们的开发,因此我们将故事文件与Java代码一起存储在resources文件夹中以实现它们。

我想我的实际问题是您如何以及在何处存储您的故事文件以及这如何与产品所有者或QA撰写故事一起使用?

2 个答案:

答案 0 :(得分:3)

@MrWiggles
正如t0rx告诉你很幸运有QA来编写故事/场景。
来到你的问题:
行为驱动的开发鼓励你通过表达的场景开始定义故事文本格式的理想行为。
您可以通过在Maven(pom.xml)中配置来运行JBehave Stories。

您可以创建一个文件夹,用于在您的包结构中存储您的故事文件,如下所示:

Your_Project
      |
      |
      |--Source_Code
      |
      |--Stories
      |
      |--Testing
      |
      *pom.xml

通过在maven中配置故事,每次构建项目时,都会给出成功和失败的故事/方案结果。
QA将更新文件夹Stories中的方案,开发人员将通过省略现有步骤(已经开发并在其他方案中出现)逐步实施方案。
QA只需运行场景/故事,他将以文本(可理解的)格式查找结果 如下所示: enter image description here

测试级别中的行为驱动开发。 enter image description here

一些JBehave功能专注于轻松组织。

  • 基于注释的配置和步骤类规范
  • 依赖注入支持,允许通过您最喜欢的容器(Guice, PicoContainer, Spring)组成配置和步骤实例。
  • 可扩展的故事报告:输出以不同的人类可读文件格式(HTML, TXT, XML)执行的故事。完全风格的视图。
  • 自动生成待处理步骤,以便构建不会因缺少步骤而中断,但可以选择为挂起步骤配置中断构建。
  • 用户故事的本地化,允许用任何语言编写。
  • IDE集成:故事可以作为JUnit测试或其他基于注释的单元测试框架运行,提供与您喜欢的IDE的轻松集成。
  • Ant集成:允许通过Ant任务运行故事
  • Maven集成:允许在给定的构建阶段通过Maven插件运行故事

答案 1 :(得分:1)

如果您有幸拥有产品所有者或QA撰写故事,那么您可能希望它们位于源代码存储库的特定区域,这样您就可以独立于主要来源控制访问(并且还可以为您提供更多灵活性如果您正在执行此操作,则会触发CI构建。

你可能会发现很多来回减少开发人员必须编写的新步骤的数量(即使用十种不同的方法来停止它们编写相同的步骤),因此还需要运行挂起的步骤没有使场景失效(这是默认的开箱即用)。

另一种方法是质量保证/产品所有者向开发人员发送方案,然后在添加源代码控制之前清除它们,但这会使开发人员付出努力。