Chandra Kandukuri is a Technical Test Lead at Microsoft with more than 16 years of software development experience in multiple environments, developing automation frameworks and tools. He advocates the use of TDD and dedicating the time and resources to do it well. Although it is relatively uncommon to see teams utilize TDD in his experience, Kandukuri recommends the method with automated software testing because of the positive teamwork habits it can promote.
Automated software testing is becoming more and more important for many software projects in order to automatically verify key functionality, test for regressions and help teams run a large number of tests in a short period of time. Many teams (especially larger projects) still require a significant amount of manual functional testing in addition to automated testing, either because of the lack of sufficient resources or skills to automate all tests.
Take a step up from Google Sheets or Excel by moving your data over to a real database. In the past, databases have been the reserve of the IT team, but with tools like Airtable and Fieldbook, non-technical teams can easily get the power of relational databases to create their own tools and systems (like we did for our content asset tracking, as explained here).
The main goal in software development processes is to satisfy customers with timely releases of software that works flawlessly. Test automation makes it possible to execute test cases during off-peak hours, and to distribute them in parallel across multiple physical or virtual servers. Automated tests complete in a fraction of the time required for manual testing, giving the team significantly faster feedback on the quality of the application and its suitability for release.