When DNA replicates, it creates life. When bug is reproducible, it has better chance to be fixed.
I described here possible iOS bug. This post will describe how we applied R from RIMGEA to this bug.
R is for replicate. As replication is core mechanism of human existence, it is also very important for software bugs. We need to verify that we are able to replicate the issue using the failure steps. In that way we are sure that bug report is credible and it will not waste programmers time. Otherwise, we will lose our credibility.
Failure steps.
Given that I unlock iPhone
And I was not in search mode in contacts
And I touch Phone icon
And I touch Contacts icon
And I touch blue + in upper right corner
When I touch add phone option
And I enter my mobile phone number: +385 92 1762 984
And I touch Done in upper right corner
Then message icon is present right to number
And number label is home by default
And I see iOS progress icon right to mobile network indicator
And message icon disappears after some time
I was able to replicate issue several times using described steps. We confirmed that failure is reproducible.
I described the failure using the Gherkin notation. Given section describes failure preconditions, When section is action part and When section is the failure part.
I think that failure steps are more clearer in that way. What is your opinion? Can you replicate the issue by following issue steps?
Next is I, Isolate the failure. It will anser the question: "Can we reduce the Given, When and Then sections?"