What is test Automation ?
So many buzz word flowing around us and still trying to understand test automation.
If you consider software components consist of :UI,API,Server,Deployment and monitoring. Each layer is evolving with time and bring transparency in its component .
On UI, Java script (ECMA6) bring ground breaking revolution to development and its framework like Angular and React come up with their own framework to automate such as protractor ,night js. Hence Web automation is no more generic and now it is very specific.
On API, REST service call and giving OAuth2 authorizations is base for almost all popular applications .On ground , socket level to network layer (TCP/UDP) and then presentation layer(HTTP,SMTP) and enrich library available in python to automate protocols.Here tailing Database query log will help trace back and debug exact issue along with log.
On Server, Linux machine shell script and load balance make easy to set up.Compilation and making server up required rigorous performance testing and jmeter can be used and diagnose issue from report (metrics) .
On Deployment ,branching ,shell scripting is necessary to define deployment flow .Data schema migration ,checkout code(integrated with management tool) ,building with dependency and trigger test suite for api , ui and performance and configure each health check with nginx (with help of socket ) is gives more transparency in terms of bug finding and fixing .
Monitoring:While deploying cloud ,devops configures AWS machine ,deployment should automatic and health check in terms of RAM and processor consumption.Docker tool helps in this process .
Lets re brand test automation engineer to full stack automation Engineer .