Search code examples
testingsoftware-qualityagile-processessmoke-testing

Why can't smoke testing be done by developer?


By reference from :

http://istqbexamcertification.com/what-is-smoke-testing-when-to-use-it-advantages-and-disadvantages-2/

Smoke testing is used in the following scenarios:

  • It is done by developers before giving build to the testing team.

  • It is done by the testers before they start the detailed testing.

Question is, can it be compromised, just because an "agile-developer" has done "Unit Testing" ?


Solution

  • Ideally all testing is done by Devs:

    • This makes it clearer that introducing bad code slows down the team.
    • It also allows for more optimal automated testing as Devs can automate much better since they usually write code better.
    • It makes people in the team more cross-functional being able to do a bigger variety of work.
    • This allows team to scale horizontally better. It's harder to scale if you have people that can do a narrow type of work since this is usually a limited amount of work of that type per time unit.

    Check out how Atlassian JIRA team were able to introduce Quality Assistance instead of Quality Assurance by making developers test and review better.

    Unfortunately though current generation of developers is spoiled by the market demands. Today we very often have QA team which Devs can use to transfer the responsibilities for crappy work to. And this is very (very!) hard to fix unless there is a full support and understanding from the management and tech leads as well as expertise.

    If you make Devs do the Smoke Testing they will quickly recognize that it's better to automate it and everyone will benefit from this. But good luck convincing them :)