1. Explain the role and benefits of test automation in modern software development and how you decide which test cases to automate.
Test automation helps execute repetitive, regression or large-scale test suites consistently and quickly, improving speed, reliability and feedback loops in the development process. You decide to automate test cases that are stable, high-return (run often), low-maintenance, and yield immediate value—for example regression tests, smoke tests and data-driven tests—but avoid automating tests that change frequently or are one-off. Effective automation strategy balances cost/benefit and maintenance overhead.