All Projects → Accenture → bdd-for-all

Accenture / bdd-for-all

Licence: other
Flexible and easy to use library to enable your behavorial driven development (BDD) teams to easily collaborate while promoting automation, transparency and reporting.

Programming Languages

java
68154 projects - #9 most used programming language
Gherkin
971 projects

Projects that are alternatives of or similar to bdd-for-all

Cucumberjvmexamples
Cucumber JVM with Selenium Java
Stars: ✭ 98 (+133.33%)
Mutual labels:  tdd, bdd, test-automation
Jgiven
Behavior-Driven Development in plain Java
Stars: ✭ 319 (+659.52%)
Mutual labels:  tdd, bdd, test-automation
Add
Разработка с управляемым качеством на 1С
Stars: ✭ 210 (+400%)
Mutual labels:  tdd, bdd
Pester
Pester is the ubiquitous test and mock framework for PowerShell.
Stars: ✭ 2,620 (+6138.1%)
Mutual labels:  tdd, bdd
Bandit
Human-friendly unit testing for C++11
Stars: ✭ 240 (+471.43%)
Mutual labels:  tdd, bdd
Migration
《系统重构与迁移指南》手把手教你分析、评估现有系统、制定重构策略、探索可行重构方案、搭建测试防护网、进行系统架构重构、服务架构重构、模块重构、代码重构、数据库重构、重构后的架构守护
Stars: ✭ 2,753 (+6454.76%)
Mutual labels:  tdd, ddd
Lightbdd
BDD framework allowing to create easy to read and maintain tests.
Stars: ✭ 195 (+364.29%)
Mutual labels:  tdd, bdd
Mockito Scala
Mockito for Scala language
Stars: ✭ 231 (+450%)
Mutual labels:  tdd, test-automation
Karma
Spectacular Test Runner for JavaScript
Stars: ✭ 11,591 (+27497.62%)
Mutual labels:  tdd, bdd
jdi-dark
Powerful Framework for Backend Automation Testing on Java (Rest, Soap, WebSocket)
Stars: ✭ 36 (-14.29%)
Mutual labels:  soap, test-automation
Cqrs Clean Eventual Consistency
CQRS, using Clean Architecture, multiple databases and Eventual Consistency
Stars: ✭ 247 (+488.1%)
Mutual labels:  tdd, ddd
chai
BDD / TDD assertion framework for node.js and the browser that can be paired with any testing framework.
Stars: ✭ 7,842 (+18571.43%)
Mutual labels:  tdd, bdd
Catch2
A modern, C++-native, test framework for unit-tests, TDD and BDD - using C++14, C++17 and later (C++11 support is in v2.x branch, and C++03 on the Catch1.x branch)
Stars: ✭ 14,330 (+34019.05%)
Mutual labels:  tdd, bdd
Spek
A specification framework for Kotlin
Stars: ✭ 2,143 (+5002.38%)
Mutual labels:  tdd, bdd
Cucumber Rust
Cucumber testing framework for Rust. Fully native, no external test runners or dependencies.
Stars: ✭ 210 (+400%)
Mutual labels:  tdd, bdd
Should.js
BDD style assertions for node.js -- test framework agnostic
Stars: ✭ 1,908 (+4442.86%)
Mutual labels:  tdd, bdd
Dotnet New Caju
Learn Clean Architecture with .NET Core 3.0 🔥
Stars: ✭ 228 (+442.86%)
Mutual labels:  tdd, ddd
tddd-starter
Laravel TDDD Starter App
Stars: ✭ 23 (-45.24%)
Mutual labels:  tdd, bdd
Radish
Behavior Driven Development tooling for Python. The root from red to green.
Stars: ✭ 153 (+264.29%)
Mutual labels:  tdd, bdd
Gunit
GUnit - Google.Test/Google.Mock/Cucumber on steroids
Stars: ✭ 156 (+271.43%)
Mutual labels:  tdd, bdd

Quick Links: User Guide | Running | Grammar

Builds Maven Central

Latest builds can be found on Sonatype

Logo

No longer do your business, development and testing teams need to translate each others requirements and reports into something else to do their job. This natural language, behavior-driven development (BDD) library exists to simplify the documenting of requirements and the testing of your API's.

Built on Cucumber and Rest Assured, this library provides a standard grammar (based on Gherkin) that all teams within your organization can use to relay requirements and test your applications.

Example

    Given I am a JSON API consumer
      And I am executing test "RSJ2"
     When I request GET "/json/users"
     Then I should get a status code of 200
      And the response value of "users[0].email" should equal "[email protected]"
      And the response value of "users[0].address.city" should not equal "Boston"

Although there are libraries like Karate and others that provide similar functionality, they are focused mainly on technical users, which means your Product/Solution Owners and SME's are still writing their own docs.

This library was born out of this frustration.

Why BDD For All?

Requirements, always being interpreted from one document format (user story, technical docs, test cases, etc...) to another, create an additional overhead. Even worse, things often get lost or misinterpreted in translation. We don't have time for that in one or two week sprints.

This library provides a lot of help out of the box to fix this...

  • Simplifies and streamlines your Test Driven Development (TDD) flows.
  • Simple integration with build tools (Maven, Gradle, & SBT) as well as your DevOps pipelines (Jenkins, Bamboo, CircleCI, etc...).
  • Test against any API's regardless of language or platform.
  • Standard, well tested step definitions that are easy to read/write for the entire business.
  • Create complex flows with request chaining (e.g. search for and then edit record).
  • Data generation, supporting over 40 locales out of the box
  • Run within your project or as a command line program
  • Option to log all requests as cURLs to import into your favorite tools (postman, soapUI and more)
  • Supports complex Groovy GPath expressions for those cases that require additional complexity
  • Easy to use with any test framework (JUnit, TestNG, etc...) and works as a standalone library.
  • Tests count towards your code coverage, reducing the need for unit tests.
  • Simple intuitive reporting out of the box.
  • Expressions that allow you easily choose what tests to run (e.g. smoke, regression, etc...).

How's it Work?

In most environments, contributors - which include Product Owners, Subject Matter Experts, Architects, Solution Owner/Architects, Tech/Team Leads, and more - create scenarios which are added to feature files. In most cases these are added to existing project repositories (or newly created ones).

The developer then reviews the requirements (or acceptance criteria) and creates functionality to support, while running those scnearios as as tests with every change to confirm that there's been no regressions and that the feature is functionally complete.

The BDD + TDD Workflow

Samples

The test directory has a variety of sample feature files that show how to use all the features of the library.

Using

For the definitive guide, checkout the User Guide.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].