Translate

Find the defect as early as possible

Everybody knows the importance of finding defects and finding those defects early. However, the key lies not in testing early and quickly. This will only degrade the testing quality and the software.
The key to finding defects early is by ensuring testing team is involved right from the start of the project and they understand the roles and responsibilities in every phase of development.
Testing team has its own delivery cycle that starts from requirements gathering and continues to the delivery of the project.

In requirements gathering phase, the testing team is expected to understand the requirements. Review the documents for completeness; identify any uncovered scenarios or scenarios that will never happen in real life. These issues are categorized as requirement defects. In parallel, they will also start working on the testing strategy document.
During design phase, the testing team will ensure the test strategy and approach documents are ready and they have the test scenarios defined. The tester should be part of design reviews and try to determine any design defects that may not satisfy any of the user flows.
During development phase, testing team will start creating test cases and review those with stakeholders to ensure test coverage. Ensure any data needs are fulfilled, exit and entry criteria are defined. They should also review the unit test results and ensure the test case mapping is done with unit test cases for everything back to requirements. This will help ensure unit test coverage.
As soon as the development is done, they should be in a position to start testing. It is during this phase when they should find any major defects in end to end related scenarios that could not be identified in any of the earlier phases.


To summarize, if you are able to categorize the defects in any of the above categories mentioned in bold, and the defect is identified when that development phase is passed, then there is a scope for shift left, and finding those defects earlier.

Subscribe to Quality Assurance Knowledge Base! by Email

Selenium automation tool

Selenium is an automation tool that automates web browsers & can be used to automate regular mundane tasks or for testing. In the context of this blog, we will stick to it's use for automated testing.
So, here is another definition of Selenium.

Selenium is a software testing framework for web applications that allows you to write UI tests cases against any website. It runs in many browsers & operating systems & can be controlled by many programming languages & testing frameworks.

Selenium has 2 modules that you can select based on your requirement.


  1. Selenium web driver
  2. Selenium IDE

Use Selenium web driver if you want to create robust, browser based regression automation suites & test & you want to scale & distribute scripts across many environments
Use Selenium IDE if you want to create quick bug reproduction scripts. This is a simple add-on that will do simple record-playback of interactions with browser.


Subscribe to Quality Assurance Knowledge Base! by Email