Software testing is challenging due to the very nature of testing, since it depends on other stakeholders in terms of timelines, deliverables, technology and sometimes even resources. To bring real value, testing should be structured enough to ensure proper validation of the system-under-test and at the same time flexible enough to align itself with the changing schedules, technologies and software development models. The course will focus on different aspects of planning, controlling and improving software testing processes in order to bring this value. Besides going through the Planning – Design – Execution – Reporting of the testing process, we will touch upon test automation and discuss different facets of testing teams.
By attending this course, you will learn:
- Defining testing activities as appropriate for the life cycle model utilized
- The principles, scope and best practices of test planning
- The basics and beyond of defect management
- Management aspects of test design and execution
- Ways to measure and control the testing process
- Principles of test automation and its place in software life cycle
- HR foundations of testing
- Approaches to improving the testing process
- Testing in Software Life Cycle
This section covers the expectations of testing from multiple perspectives: client, management, regulatory, development, quality assurance and the testing team. Discusses the different life cycle models including waterfall, iterative, and agile and their usage on development, implementation, and certification projects.
- Improving the Quality of Requirements
This section addresses the review of requirements for form and content. Includes the use of requirements checklists to improve the quality of requirements.
- Test Planning
This section covers defining the scope and outlining the approach for testing. Test planning includes determining the testing levels and types of testing to be performed. Discusses the preparation of the testing schedule, determining the testing resources, selecting the testing tools, identifying the defect reporting process, and performing risk management.
- Test Design
This section explains how to prepare test cases and test data based on requirements as well as preparing special cases.
- Defect Management
This section takes a look at good and bad defect reports and the meta-data of defects including severity and priority. Includes a discussion of the importance of defect history and how defect reporting and metrics are used to make project decisions and improve processes.
- Test Reporting
This section presents different approaches to test reporting including light vs. comprehensive reporting.
- Controlling the Test Process
This section covers the measures and metrics to report on the quality of the product and to identify areas for process improvement. It demonstrates how metrics are used as monitoring and control mechanisms.
- HR of Testing
This section addresses the people aspect of testing such as the skill sets needed, the psychology of testing and training needed – both general and specific.
- Test Automation
This section presents an overview of test automation architecture and automation relative to development, implementation and certification projects. Also includes performance testing and what happens after the release.
Michael Yudanin is the CEO of Conflair, a QA and testing company. He has been working on automating tests for mobile devices since before mobile apps and smartphones became commonplace. Michael developed RealMobileTM, a unique approach to using common automation tools to automate testing of mobile apps and websites. Among the large enterprises that have benefited from this approach to mobile testing are Home Depot, Bank of America, The Weather Channel, and Spirit Airlines. Michael is a frequent speaker at testing conferences and regularly delivers classes on test planning, requirements management, test automation, XML, web services testing, and other subjects.