Professional Software Testing Using Visual Studio 2019
Course Description
This three-day course will introduce you to the contemporary testing principles and practices used by agile teams to deliver high-quality increments of software on regular iterations. Through a combination of lecture, demonstrations, and team-based exercises, students will experience how to do this by leveraging the tools found in Visual Studio, Azure DevOps Services, and the community marketplace.
3 Days
Contact us for pricing
Who Should Attend
This course is appropriate for all members of a software development team, especially those performing testing activities. This course also provides value for non-testers (developers, designers, managers, etc.) who want a better understanding of what agile software testing involves.You should take this class if any of these issues sound familiar:
Release dates and budgets are missed due to low quality and bugs
Testing activities are performed at the end of the sprint/iteration or release
No collective ownership or collaboration exists between the developers and testers
The team tests the wrong things at the wrong time
No automated tests, no regression tests, and no idea of the quality of your software!
Agile Software Testing
Overview of agile software developmentThe agile tester and agile testing practices
Different types of testing
Introduction to Azure DevOps Services
Agile requirements and acceptance criteria
Creating, organizing, and managing a backlog
Planning and Tracking Quality
Defining quality softwareIntroduction to Azure Boards
Forecasting and planning a sprint
Introduction to Azure Test Plans
Organizing testing using test plans and suites
Creating and managing test cases
Leveraging parameters and shared steps
Importing and exporting test artifacts
Triaging and reporting bugs
Development Tests
Introduction to development testsUnit testing in Visual Studio
Data-driven unit tests
Analyzing code coverage
Practicing Test-Driven Development (TDD)
Concurrent testing (Live Unit Testing and NCrunch)
Acceptance Tests
Introduction to acceptance testsAcceptance criteria and definition of “done”
Acceptance Test-Driven Development (ATDD)
Using SpecFlow to automate acceptance testing
Using Selenium for web UI testing
Using Appium for desktop UI testing
Manually testing web and desktop applications
Performance testing and load testing
Exploratory Tests
Introduction to exploratory testsUsing the Microsoft Test & Feedback extension
Connected mode vs. standalone mode
Exploring work items
Capturing rich data during an exploratory session
Exploratory testing “tours”
Requesting and providing stakeholder feedback
Build and Release Testing
Introduction to Azure PipelinesAutomated builds using build pipelines
Running automated tests in the pipeline
Practicing Continuous Integration (CI)
Leveraging Test Impact Analysis
Automated releases using release pipelines
Creating, deploying, and testing a release
Viewing and managing a deployment
Reporting
Agile metrics that matterConfiguring alerts and notifications
Using the Microsoft Analytics extension
Ad-hoc reporting using Excel and Power BI
Querying data using the REST API
Delivering Quality Software
Understanding and avoiding technical debtDetecting and measuring technical debt
Defining and obeying a definition of "done"
Overcoming dysfunctional team behaviors
Becoming a high-performance team
Case studies
Visual StudioAzure DevOpsAzureVS 2019Visual Studio 2019Software testTDDsoftware testingUI testingTDDUnit testunit testing