What are the daily tasks of a QA analyst? In this article you’ll find what are
I frequently get questions regarding what my daily tasks are as a QA analyst. This is a snippet of what we do in the QA department on any given day for anyone who wants to know or wants to get into a career in QA.
There are 4 of the major test phases that we run through as part of our test cycle: Smoke, Functional, Adhoc and Regression.
Smoke tests: This is where the team does a quick run through of the software touching on the major functionality to make sure that that there is nothing preventing the team from performing their tests. Anything that blocks testing is escalated to the project manager so that it can be resolved immediately by the development team.
Functional tests: This is where the team runs through a series of test cases to ensure that the software is doing what it was designed to do. Defects are easier to capture during this phase of testing as there is usually no room for interpretation, either it works or it doesn’t. Bugs are then entered into a database and assigned to a developer to fix.
Adhoc/Exploratory tests: This is my favourite phase of testing. This is where you get creative and try to break the software by doing things outside of what a normal user would do. It could be as simple as entering invalid text into a textbox to something more complicated where multiple inputs under certain conditions must be met before the bug occurs. Consequences can range from graphical issues to complete loss of use of the software. Again, bugs are entered into a database and assigned to a developer to fix.
Regression test: After bugs are fixed by the developers, the team moves to the Regression phase where they run the bugs through the newest release of the software again to make sure that they don’t occur. Once a bug has been verified to not occur it is closed in the database.
The team will run through this test cycle numerous times through a software’s life cycle until a majority of bugs are captured and the team is comfortable that the product is of exceptional quality for use. Hope this gives a good insight into what a QA Analyst’s world looks like.
There are six different phases used during a full software quality assurance test cycle. The first is the Static Testing Phase which verifies that the requirements and specifications are thorough, complete, and make sense for the goal of the product. This is done before any coding starts and seeks to eliminate defects before they’re even in the system.
Module/Unit Testing Phase begins once developers have completed individual modules. Each module or unit is tested independent of each other to help find potential defects and speed up development. By testing the units in isolation, finding the cause of an issue is expedited, saving both time and energy.
After each unit has been tested, the third phase begins: Integration Testing. This phase ensures that the individually tested units work well together in assemblies. Generally, units are added together one by one and fully tested after each unit is added. This manner of testing validates that the modules play well together and by adding units in sequentially, determining the cause of a possible defect between the units is much easier.
The System Testing Phase begins next and validates the entire system as a whole. As the most involved and time consuming phase, System Testing utilizes many different testing types either consecutively or concurrently. Functional testing, security testing, performance testing, and database testing are examples of the multitude of tests that can be run during this busy phase.
Next, the User Acceptance Phase is used to make sure the system is well liked and useful to actual, prospective, or even simulated end users. By evaluating the user learning curve, navigation, and usefulness of the application, this phase seeks to ensure that existing and future users will want to use the product.
The final phase, Production Verification, occurs when the full tested product is deployed to the production environment. This last step validates the production build and ensures that all of the components were deployed and are working correctly.