What is that - Full Stack QA ?
Like we have Full stack Dev - having knowledge of developing UI , Data Layers , DB , Deployments etc. Similarly we have Full Stack QA - one who can Plan testing , effort estimation, manual testing, automating the tasks.... that all depends on individual on what parameters they want to define.
There are many posts on social platform where people are worrying about their future as a Manual testers ? Is this is not a future or shall i switch to Automation ? Companies are seeking for a candidate with Strong base of testing (Manual) with Automation tool knowledge.
Below I've tried to draft an approach which a Manual/Application/Software tester could follow in order to be a Full Stack QA along with the Automation testing knowledge
Make a Strong test Foundation
- Understand and work on core or basics of testing like - Functional, Regression , Integrations and End to End testing. Where to use which testing ? To have many defects which approach should i follow ?
- Think in a way to minimize the effort to bring maximum from execution. For example from 1000 functional scripts - how i can identify the Regression scripts ? when to update the Regression scripts ? To identify or capture a defect is a good thing but how to backtrack if something is not working ?
- Work on Defect reporting tools, how to extract the reports of the execution from the tool, how to make maximum from that tool
- Agile Delivery methodologies, approach followed in Agile as today is the era where the releases are happening in days , minutes or months. Client is no longer waiting for a feature to be released after certain interval of month time
Knowledge of at least 1 Automation tool, API Testing, SQL Testing
- There are many open source tools available in the market. Do research , pick one of them, start learning the basic of the language which suits that tool and obviously to you , Practice at least 1 time in a day , make a note of your progress
- You will fail , try again - fix the failure, learn and make a note of it again to avoid in future. Whatever you learn new, try to write it down somewhere or post an article. This would help you to remind for long time.
- Give individual time to all fields of testing like Automation, API and SQL. I know this would take time but will really help you to get a grip on market with evolving technologies
Attitude of automating the Manual tasks not scripts which you perform daily
- Once you've the knowledge of Automation then identify the daily tasks you perform and automate. Automation testing doesn't mean to restrict your knowledge only when a project kicks off.
- Identify the approach to create a touch less pipeline of your flow End to End flow. For example : You run a script (by manually clicking on run) , going through the results , making the report of the execution and emailing to the stakeholders.
Now think in a way to create a pipeline where the Script will execute automatically at specified time , execute the scripts, draft the report into an email and shoot to the stakeholders. This can be done by Jenkins and many available open tools in the market
Don't be disheartened that i am in Manual testing and what will be my scope ? Manual testing will remain in the market for decades. And request - use Software/Application Analyst , these kinds of terms instead Manual tester (this sounds an old era of testing approach :-))
The above I've drafted with best of my knowledge , could be possibilities of improvement. Would suggest to do research by your own and choose the approach/path as per your knowledge.