Octane Enabling Enterprise BDD
Octane was built to improve communication and collaboration between the business, tester and developer while helping organisations move towards DevOps. The task of the agile teams is to build high quality products at speed, each team may choose to different tools to help. Using Octane every team with their own “tool islands” can be integrated seamlessly whilst avoiding any kind of media breaches. This provides the capability to fix environment and traceability issues across multiple teams. For BDD teams can use their tool of choice to implement BDD – Octane will take care about scaling it to your whole enterprise. The workflow between the teams can be defined within Octane, the goal being to make Octane the single source of truth. Following the suggested workflow defined below will enable fast and effective collaboration within and between your agile teams.
BDD involves 3 main roles: business, developer and tester. These roles are not unique to individuals, one person could be performing multiple roles. Within Octane the start of the BDD can be initiated by the business representative such as a product owner who defines a user story in Octane.
The tester can then add a gherkin test as acceptance criteria to the user story.
Right from the beginning Octane takes care of traceability between the artefacts of BDD. As the acceptance criteria has been added to the user story as a gherkin test, it is displayed in the relation tab of Octane (illustrated below).
Once the gherkin test, as acceptance criteria, has been added to the backlog i.e. user story, the developer can start to design and develop the code of the feature, based on the user story and gherkin test. The developer can use an IDE plugin for IntelliJ, Eclipse and Visual Studio to connect directly from his workspace to Octane and see the “MY WORK” module embedded. The “MY WORK” module will show the developer only tasks, backlog items and tests which are relevant and assigned to them.
The tester can then start to automate all scenarios using a BDD framework such as Cucumber or SpecFlow. The tester can also use the IDE plugin for IntelliJ, Eclipse and Visual Studio to connect directly from their workspace to Octane and see “MY WORK” module embedded. The “MY WORK” module will show to the tester only tasks, backlog items and tests which are relevant and assigned to him. Tester can automate test cases using their tool of choice Cucumber, SpecFlow, UFTPro (LeanFT), Selenium, Appium, etc. – both roles work in parallel on their areas.
Once both have finished their work, the feature and its associated User Story can be verified and validated through the automated tests created by the tester.
There are different ways to kick start the build pipeline of an application:
- Directly from Octane
- The developer committing the codeto a source code repository
- Directly through a continuous integration (CI)server such as Jenkins, Bamboo, TeamCity, GoCD and/or TFS.
The Pipeline execution will run the associated automated tests.
Once the CI execution is completed, the product owner can see on his dashboard
- the coverage of features by ranking
- how many acceptance criteria’s (gherkin tests) are passed
- how many user stories are implemented in the current build
- what’s the number of failures and defects, etc.
Implementing Enterprise BDD with Octane – that’s how easily the BDD culture can be practiced, increasing the pace of delivery by closing all gaps between product owners, developers and testers and providing visibility on current activities which need to be addressed.
See it in action in this video:
Enterprise Features of Octane to Scale BDD to an Organization
1 - MY WORK Module
The MY WORK module provides every user a view on all artefacts assigned or owned by him / her. This feature is very important for the 3 key roles as everyone knows the scope and work each individual has to deliver part of a sprint.
- Receive notifications for items that you are following and whenever you are mentioned in a comment.
- Track and update your assigned work with a personalized to-do list of work items.
- Add comments to any Octane item for additional discussion
2 - WORKFLOW DEFINITION
Use Octane’s workspace settings to define the workflow for your BDD project by:
- defining phases
- defining transition from phase to phase
- designing new forms for end users to provide the information which is relevant for the transition phase of your workflow
- show or hide fields based on the workflow
- add list items to the fields.
3 - Reporting, Analytics and Insights
4 - Visibility across feature, backlog and test coverage
5 - Code Coverage Analysis
To enable frequent releases with minimal disruption and maximum quality, it is best to regularly run automated tests that cover as much of your code as possible. Code coverage on pipeline runs measures the percentage of lines in your code that was called during a particular run of the pipeline.
Octane combines the information from all of the code coverage reports in your pipeline run and shows you a unified picture. Pipelines display widgets that show code coverage per package and per file, as well as code coverage trends over time. Using this information, you can track how much of your code is covered by automated tests.