π° Test Reports
π Test Report Purpose
- π° Share information
- π Keep the team in sync
- π Increase efficiency
- π Increase convenience
- π‘ Improve communication
π Visibility
πΊ Test Reports should be announced in 3 Places:
- π The Task Description
- π The Task Activity
- π² The appropriate Slack Channel
π Task Description
π± This is where the "living" QA will occur.
- π The QA Analyst will initially setup the acceptance criteria and run through the tests in this space using the checklist format:
- βοΈ
/checklistin Task - to identify each requirement in the tree - π
/bullet listin Task- β¬οΈ
markdown"-" in Task or Slack to identify Notes and Media ( π· Scrot / π₯ Video ) which are not requirements.
- β¬οΈ
- βοΈ
- π The Description pane is on the left side of the Task and will have the latest test report.
- βοΈ Therefore, if the QA Analyst is testing on a task for the 2nd time, they should remove any screenshots, videos, or notes on failing behavior which are no longer relevant/observable.
π Task Activity

- π Once the QA Analyst is finished with a round of testing they need to copy the current state of the Acceptance Criteria (whether it passes or fails) to the Activity pane on the right-side of the Task.
- βοΈ At the top of the Test Report in the Task Activity should have the heading:
- β QA PASS (where QA PASS is UPPERCASE and Bold.)
- π QA FAIL (where QA FAIL is UPPERCASE and Bold.)
- π« BLOCKED (where BLOCKED is UPPERCASE and Bold.)
- π PUNT (where PUNT is UPPERCASE and Bold.)
- π (When specific requirements are "punted" they can be prepended with the "π" emoji within the Acceptance Criteria, followed by an indented child-bullet-point linking to the task where the punted requirement was moved.)
- βοΈ At the top of the Test Report in the Task Activity should have the heading:
- π In copying the
Acceptance Criteriafrom theTask Descriptionto theTask Activity.- βοΈ The Checklist/requirement lines need to be converted to bullet-points.
- βοΈ Checked requirements need to have the pass emoji ( βοΈ ) prepended.
- π΅ The copied
Acceptance Criterianeed be inspected to ensure accuracy and completion.
- π₯ Duplicating the
Acceptance Criteriain theActivityserves as a historical log.- π This is useful in retrospectives and verifying whether any requirements regressed, were missed, or were not tested properly.
- π΅ This also serves as an opportunity for the QA Analyst to double-check the test report and ensure no requirements were left untested.
π² Slack Channel
- π’ Test reports can be announced in the appropriate Slack Channel relevant and convenient to the team
- πΎ The Test Report in the Slack Channel should be formatted consistently:
[Emoji] **RESULT** - [Task Custom ID] - [Task Title]
πΊ EXAMPLE

β QA PASS - SSR-734 - Add analytics functionality to the application
- TEST REPORT
- π The Format always starts with the Emoji, then Results such as:
- β
QA PASS (where QA PASS is UPPERCASE and Bold.)
- β οΈ Currently we are going to only share Passing tasks in the Slack channel.
- π If the task fails, we are having QA reach out to the Developer directly.
- β οΈ Currently we are going to only share Passing tasks in the Slack channel.
- π QA FAIL (where QA FAIL is UPPERCASE and Bold.)
- π« BLOCKED (where BLOCKED is UPPERCASE and Bold.)
- π PUNT (where PUNT is UPPERCASE and Bold.)
- β‘οΈ Then a dash '-' followed by the Task's Custom ID, then a dash '-' then the Task Title.
- β‘οΈ The Task Custom ID, dash, and Task Title should be hyperlinked to the task URL.
- β‘οΈ We also want the Test Report linked to the relevant Task Comment where the report is logged.
- β‘οΈ However it is okay to skip the Test Report if there is hardly any, just one, or no requirements.
- β‘οΈ Then a dash '-' followed by the Task's Custom ID, then a dash '-' then the Task Title.
- β
QA PASS (where QA PASS is UPPERCASE and Bold.)
π€ Why Announce the Test Report in the Slack Channel?
π’ Announcing the Test Report in the Account Channel may seem redundant, however there are several critical advantages which prove invaluable:
- π‘ It keeps the task on the Developerβs "Radar" - the instant notification often ensures the task receives the appropriate priority in the Developer's queue.
- π It gives any Designers, Project Managers, Stakeholders, etc an opportunity to see the Acceptance Criteria which provides a few opportunities:
- βοΈ They can assist in maintaining the teams constant progress.
- π£ They can leave comments or questions.
- π§βποΈ They can provide insight in unblocking or correcting any problems/misunderstaning - offering root-cause analysis.
- π They can disagree with any passing or failing requirement.
- π They can determine if any requirements or newfound issues are out-of-scope and should be refined.
- β¨ New development opportunites can be discovered.
- π§ They get more visibility on the scope and requirements in different aspects of the application so the team is more in sync with expectations.
- π± Developers can see the Test Report while on their mobile device away from their computers and "marinate"/think about any failures or problems such that when they return to work on the task they may have already thought about a solution.
- π° Finally, it provides a nice timeline in the account/client channel to refer to in the cadence of the other discussions, pull-requests, code reviews and deployments.
- βοΈ They can assist in maintaining the teams constant progress.
π€ Which Slack Channel is Appropriate for announcing Test Reports?
- π It may be way too much info to have a separate channel for every aspect of an account/client.
- π€οΈ Test report announcements should ALWAYS be threaded.
- βοΈ However in some cases a separate QA Slack Channel for a client would make perfect sense. So far, most people agree using the same Account/Client channel everyone else uses is best in most cases.
- π€Έ The main goal is to reduce unnecessary channel bloat.
- π§ So far the prevailing opinion is:
- π‘ If an account/client channel is not very "busy", keep the QA Test Reports in the single channel.
- π‘ If the account/client channel is for a big project and the chatter in the channel is constant, perhaps a separate channel such as
#account-qais warranted.- π€ Ask the account manager/developers what makes sense for them up-front.