Skip to main content

How and when to raise a defect?

Many times when testing, especially in Agile, it's important to communicate with the team any issues be it environmental or code related. A common misconception of Agile is that it's best to not document anything and get things done as efficiently as possible, often this means cutting back on the amount of documentation that is written. 

Whilst I agree that too much documentation is a bad thing, every project needs some form of documentation, be it hand over documents, a wiki on what it is that's been developed and how it works or even a set of Given When Thens (More on this in a future post! - In the meantime look here) of the new functionality, this all helps with future teams being able to look at and read and will hopefully help any future development around the areas. I am however, all too aware, that far too often people send round documents, that 95% of the time don't get read, and just get forgotten about. So it's definitely important to strike the right balance.

This, I believe can also be applied to raising defects. Often when I notice there is an issue with something I am testing, I will investigate the cause of the issue myself, and try and figure out why it's occurring, I do a Defect Dance. Any information that I can add to the defect will help the developers identify and fix the issue (see What to log in a bug).

Often when I am about to raise a defect and after investigating I will speak to a dev and go through the issues and my findings,  from here I will ask if it is worth raising the bug or if it's a quick fix then get them to fix it quickly and move on. It's important to take the right tone when raising a bug with a developer, as for some reason they can be protective over their code! There isn't any point in swearing at them, or even playing a blame game, the bug will be fixed a whole lot quicker if you help them by supplying all necessary information. 

I feel that all too often, people blindly raise bugs, regardless if there is already a bug raised, or if it's a production issue or even when a quick discussion with a developer and they can fix it there and then, it saves time of the tester, saves time of the developer and I believe it helps the team work more closely together. Obviously, if teams are offshore then this isn't really viable, and defect tracking tools are needed... That however, is a whole different story! (I'm sure I will post a blog post or two about that!)

Comments

Popular posts from this blog

What is a PBI?

After my last post, I had the question of what is a PBI... so I thought i'd write a short blog post about what they are and why they are used. A PBI is an acronym for Product Backlog Item. It is a description of a piece of work that your SCRUM team will develop and deliver. When you have a list of Product Backlog Items, you then refer to that collective list as a Product Backlog. The product backlog is often prioritised and yourteam will work through each PBI, and release on a regular schedule... I am however going deep into the world of Agile development, which isn't entirely what this post is about, so I will stop myself now. A Product Backlog Item is made up of the following: Title - This is often a one liner that gives the team an idea of what the PBI is about, although it can just be an ID for the item and the team work off of that. Description - Breaks down the PBI in a bit more detail, and can be written in any style, however I prefer it to be written as follow...

Coding something simple.... or not! Taking a screenshot on error using Selenium WebDriver

I recently wrote a little function that takes a screenshot at the end of a test if it has errored. What sounded very simple at the start turned out to be quite a bit of work, and quite a few lines of code to handle certain scenarios! It's now over 50 lines of code! I'll start with what I had at the beginning, this was to simply take a screenshot in the working directory, we are using SpecFlow and Selenium to run the tests, so we are going to check if the ScenarioContext.Current.TestError isn't null, if it is, then using Selenium, take a screenshot (note the below code is a simplified version of what I had at the beginning). [AfterScenario]         public static void TakeScreenShotOnError()         {             if (ScenarioContext.Current.TestError == null) return;             var screenshotDriver = Driver as ITakesScreenshot;             if (screenshotD...

The Stickman Tester... The full version complete with deleted "scenes"!

As some of you may have seen, a little while ago I performed a 99 second talk on the Stickman Tester for the Ministry of Testing. Owing to the fact that it had to be 99 seconds, this unfortunately meant that a verse was left out in order to keep it within the time frame! It's only now that I have found the time to put the deleted verse/scene back in, and re-record it and upload it! (It's now a 120 second talk!) It talks about a testers journey in an Agile team, about how not everybody has it as good as others, and basically talks about not giving up, keep searching, or trying to change your role to make it what you want it to be. Anyway, here it is, in all it's glory. Hope you enjoy it!