Testing Green Field Applications vs. Legacy Applications
Legacy Code

Testing Green Field Applications vs. Legacy Applications

When you are coming up with a testing strategy for green field applications, you should follow the testing triangle or pyramid. For legacy application, a different strategy is needed. Writing tons and tons of unit tests when working with a very large application with zero tests is very costly and results in very little benefits. A…

0 Comments
What is Acceptance Test Driven Development (ATTD)?
Acceptance Test Driven Development

What is Acceptance Test Driven Development (ATTD)?

Acceptance test driven development takes the TDD practice and applies it to acceptance tests. On day 1 of the Sprint, before we begin coding a particular user story, we start by reviewing the acceptance criteria and thinking about how we will verify via tests that this story is complete. Typically, a single acceptance criteria might map…

0 Comments
What are Executable Specifications or Specifications by Example?
Use Executable Specification Instead of Long Testing Spreadsheets

What are Executable Specifications or Specifications by Example?

Requirements and tests are just two sides of the same coin. You can’t have a user story or requirement without an acceptance criteria (test). These two meld into executable specification. Using gherkin syntax (given,when,then) we can represent requirements using examples and create specifications by example. As a potential customer I want to collect books in a…

0 Comments
Why You Shouldn’t Do Functional Testing From the UI?
Focused Testing

Why You Shouldn’t Do Functional Testing From the UI?

In many situations, there are a lot of business rules that need to be tested. Say we want to test that the correct discounts get applied based on a certain number of items that are in a shopping cart. To test these rules, most testers will go through the UI and hop through several steps to…

0 Comments
What is Test Driven Development (TDD)?
Test Driven Development

What is Test Driven Development (TDD)?

Test driven development is a programming approach where before the developer writes any code, she first writes an automated test. This test will fail at first because no code exists. Then she writes enough code to make the test pass. After that she might want to clean up or refactor her approach, all along ensuring that…

0 Comments
Who Is Responsible for Testing in Scrum?
Who Is Responsible For Testing?

Who Is Responsible for Testing in Scrum?

Testing is everyone’s responsibility. The entire team works collectively to develop a quality product. Most of the automation is done by the people writing the code using an approach known as Test Driven Development or Test Driven Design (TDD). This includes unit, integration, component, and system tests. These tests verify that the application works as intended.…

0 Comments
When Do We Start Testing in Scrum?
Task Board Indicating Quality Is an After Thought

When Do We Start Testing in Scrum?

What does your task board say about your team? Many teams have a separate testing column. This indicates that we are still doing hand-offs from development to testing and that testing is an afterthought. Testing is not a phase that happens at the end of a project and it’s not a phase that happens at the…

0 Comments
What is The Testing Pyramid?
Agile Testing Pyramid

What is The Testing Pyramid?

Most teams today use an inverted pyramid where most of the tests are manual User Acceptance Tests and System tests and are manually executed via the UI. Unit tests are non-existent or are too few to be beneficial. In order to have a maintainable test suite, as explained in this post, the base of our pyramid…

0 Comments
How Many Tests Are Enough?
How Many Tests Are Enough?

How Many Tests Are Enough?

When trying to decide how to distribute our testing efforts and how many tests to write for each different type, it’s important to consider: Test coverage: How much of the code has a test that verifies its behaviorTest execution time: How long does it take to run the test and get a result backTest feedback: How…

0 Comments
What is a Bug? Here is the First Software Bug Ever Reported
A page from the Harvard Mark II electromechanical computer’s log, featuring a dead moth that was removed from the device. https://commons.wikimedia.org/w/index.php?curid=165211

What is a Bug? Here is the First Software Bug Ever Reported

Merriam-Webster defines the word bug as "an unexpected defect, fault, flaw, or imperfection." In 1946, the 1st ever case of a software bug was reported in an early electro-mechanical computer called the Mark II. An actual moth got trapped in the relay of the computer and caused it to malfunction. The moth was removed and taped…

0 Comments