{"id":14969349,"url":"https://github.com/accenture/bdd-for-all","last_synced_at":"2025-10-26T07:31:28.636Z","repository":{"id":34294582,"uuid":"168700569","full_name":"Accenture/bdd-for-all","owner":"Accenture","description":"Flexible and easy to use library to enable your behavorial driven development (BDD) teams to easily collaborate while promoting automation, transparency and reporting.","archived":false,"fork":false,"pushed_at":"2023-06-14T22:25:51.000Z","size":23072,"stargazers_count":51,"open_issues_count":7,"forks_count":22,"subscribers_count":14,"default_branch":"develop","last_synced_at":"2025-01-31T16:53:33.852Z","etag":null,"topics":["agile-development","api","bdd","ci-cd","cucumber","ddd","integration-testing","microservices","reactive","restful","soap","tdd","test-automation","test-automation-framework","test-driven-development","testing"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Accenture.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-02-01T13:20:45.000Z","updated_at":"2024-09-25T08:44:11.000Z","dependencies_parsed_at":"2024-09-27T11:40:50.027Z","dependency_job_id":"76460dd7-48a6-41af-9a40-224316e038f3","html_url":"https://github.com/Accenture/bdd-for-all","commit_stats":{"total_commits":92,"total_committers":3,"mean_commits":"30.666666666666668","dds":0.2065217391304348,"last_synced_commit":"b5b06282e22c8a54decbd3f0dd2662f9ad8ce84a"},"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Accenture%2Fbdd-for-all","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Accenture%2Fbdd-for-all/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Accenture%2Fbdd-for-all/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Accenture%2Fbdd-for-all/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Accenture","download_url":"https://codeload.github.com/Accenture/bdd-for-all/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238284880,"owners_count":19446747,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agile-development","api","bdd","ci-cd","cucumber","ddd","integration-testing","microservices","reactive","restful","soap","tdd","test-automation","test-automation-framework","test-driven-development","testing"],"created_at":"2024-09-24T13:41:43.870Z","updated_at":"2025-10-26T07:31:23.114Z","avatar_url":"https://github.com/Accenture.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"**Quick Links:** [User Guide](docs/USERGUIDE.md) | [Running](docs/RUNNING.md) | [Grammar](docs/GRAMMAR.md)\n\n[![Builds](https://github.com/Accenture/bdd-for-all/actions/workflows/maven.yml/badge.svg)](https://github.com/Accenture/bdd-for-all/actions/workflows/maven.yml) [![Maven Central](https://maven-badges.herokuapp.com/maven-central/com.accenture.testing.bdd/bdd-for-all/badge.svg)](https://maven-badges.herokuapp.com/maven-central/com.accenture.testing.bdd/bdd-for-all)\n\n**Latest builds can be found on [Sonatype](https://oss.sonatype.org/#nexus-search;quick~bdd-for-all)**\n\n![Logo](docs/samples/bdd-white-logo.png)\n\nNo 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)](https://en.wikipedia.org/wiki/Behavior-driven_development) library exists to simplify the documenting of requirements and the testing of your API's.\n\nBuilt on \u003ca href=\"https://cucumber.io/\" target=\"_blank\"\u003eCucumber\u003c/a\u003e and \u003ca href=\"http://rest-assured.io/\" target=\"_blank\"\u003eRest Assured\u003c/a\u003e, this library provides a [standard grammar](docs/GRAMMAR.md) (based on Gherkin) that all teams within your organization can use to relay requirements and test your applications.\n\n*Example*\n\n```gherkin\n    Given I am a JSON API consumer\n      And I am executing test \"RSJ2\"\n     When I request GET \"/json/users\"\n     Then I should get a status code of 200\n      And the response value of \"users[0].email\" should equal \"Sincere@april.biz\"\n      And the response value of \"users[0].address.city\" should not equal \"Boston\"\n```\n\nAlthough there are libraries like \u003ca href=\"https://github.com/intuit/karate\" target=\"_blank\"\u003eKarate\u003c/a\u003e 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.  \n\nThis library was born out of this frustration. \n\n### Why BDD For All?\n\nRequirements, 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.\n\nThis library provides a lot of help out of the box to fix this...\n\n* Simplifies and streamlines your Test Driven Development (TDD) flows.\n* Simple [integration with build tools](docs/RUNNING.md#running) (Maven, Gradle, \u0026 SBT) as well as your DevOps pipelines (Jenkins, Bamboo, CircleCI, etc...).\n* Test against any API's [regardless of language or platform](docs/RUNNING.md#running-stand-alone).\n* Standard, well tested [step definitions](docs/GRAMMAR.md) that are easy to read/write for the entire business.\n* Create complex flows with [request chaining](docs/CHAINING.md) (e.g. search for and then edit record).\n* Data generation, supporting over 40 locales out of the box\n* Run within [your project](docs/RUNNING.md#running) or as a [command line](docs/RUNNING.md#running-stand-alone) program\n* Option to log all requests as [cURLs](docs/OTHERFEATURES.md#curl-logging) to import into your favorite tools (postman, soapUI and more)\n* Supports complex [Groovy GPath](docs/GPATH.md) expressions for those cases that require additional complexity\n* Easy to use with any test framework ([JUnit](docs/RUNNING.md#running), TestNG, etc...) and works as a standalone library.\n* Tests count towards your [code coverage](docs/OTHERFEATURES.md#jacoco-code-coverage), reducing the need for unit tests.\n* Simple [intuitive reporting](docs/REPORTING.md) out of the box.\n* [Expressions](docs/OTHERFEATURES.md#running-select-tests-aka-tagging) that allow you easily choose what tests to run (e.g. smoke, regression, etc...).\n\n## How's it Work?\n\nIn most environments, contributors - which include Product Owners, Subject Matter Experts, Architects, Solution Owner/Architects, Tech/Team Leads, and more - create [scenarios](docs/SCENARIOS.md) which are added to [feature files](docs/FEATURES.md). In most cases these are added to existing project repositories (or newly created ones).\n\nThe 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.\n\n![The BDD + TDD Workflow](docs/samples/bdd+tdd.png \"BDD + TDD Workflow\")\n\n### Samples\n\nThe [test](src/test/resources/features/) directory has a variety of sample feature files that show how to use all the features of the library.\n\n## Using\n\nFor the definitive guide, checkout the [User Guide](docs/USERGUIDE.md).\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faccenture%2Fbdd-for-all","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faccenture%2Fbdd-for-all","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faccenture%2Fbdd-for-all/lists"}