0

My current workflow is this (it's basically a feature branch workflow):

1) I have two main branches: release and develop.

2) Development is done using TDD methodology using JIRA/Bitbucket. An issue is created, which consequently creates a Git feature branch.

3) Active development is carried out in a feature branch, and merged back into develop upon review.

4) When enough new features have been merged into develop, I merge develop into release.

What I'm concerned about is how I can integrate QA into this workflow. I've read other posts, which suggest that QA tests should be performed on the feature branch (along with other tests elsewhere), such as this: https://sqa.stackexchange.com/questions/14966/where-does-qa-fit-into-a-common-git-branch-flow

The problem for me is QA tests will mainly be UI acceptance tests. These will be created by a QA tester (using some UI automation suite), but I also want these tests version controlled, as they will be source editable.

I suppose what I'm after is similar to Skullcandy's worklow, as described in this article: http://blog.endpoint.com/2014/05/git-workflows-that-work.html However, the author of that article doesn't describe anything about how QA tests themselves are version controlled/integrated with development code in a feature branch. Moreover, I want QA tests to be 'sparked' off stories in JIRA that correspond to a given feature (if that makes sense); so that there's a traceable correlation between the stories, and the acceptance tests to make sure they will be what the user wants.

Note that the tests that are carried out currently as part of my TDD methodology are unit tests, not acceptance tests.

Is there a way (process/workflow/model/call-it-what-you-may) to achieve this?

  • Are your QA tests located in the same git repository as the code, or are they managed/version-controlled elsewhere? – Bart van Ingen Schenau May 31 '17 at 7:29
  • They do not yet exist. Like I've said in my question, I'm looking to include them in projects. Ideally though, they will be in the same Git repository, yes. – Ash May 31 '17 at 8:05
  • Can you describe why you see different issues in choosing a git workflow for automated acceptance tests to any other code? – bdsl May 31 '17 at 21:28
2

I would just add the tests to the same branch that the code being tested is in, either the feature branch or develop.

You should want to frequently run your entire test suite and treat any failure as an exceptional condition that requires an immediate fix, so make sure no tests are checked in that are expected to fail, unless they are marked in some way so the testing framework knows to ignore them.

For the traceable correlation between tests and JIRA stories, require commit messages to mention the JIRA story ID.

  • Thanks. I did consider adding acceptance tests to the feature branch. Just wanted to see if there were other ideas. – Ash Jun 1 '17 at 8:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.