C# Automation
Learn to create software automation that builds, tests and reports results.
C# Automation
Learn to create software automation that builds, tests and reports results.
What you’ll be able to do — competencies
- Implement quality and build checks for existing software
- Create software automation that builds, tests and reports the results
- Apply NUnit as both an automation framework and as a test-driven design (TDD) tool to ensure software behaves as intended
Course description
Software quality is everyone’s responsibility on the development team. Learn to implement quality from the ground up, as well as to build checks for existing software. Create software automation that builds, tests and reports the results. Apply NUnit as both an automation framework and as a test-driven design (TDD) tool to ensure software behaves as intended. Gain practical, hands-on experience with popular test frameworks and use them along with your knowledge of C# to create enterprise-quality automation applications.
Prerequisites
- C# Programming: 2 or equivalent knowledge
- Structured Query Language: (SQL) Level 1 or equivalent knowledge
Syllabus
Describe the role of automation in the software development lifecycle.
- Describe automation, its strengths and weaknesses, and how automation fits into the process of creating software
- Describe a basic build system and how automation contributes to the development process
- Identify the business stakeholders of an automation system
- Describe the following types of automated tests: acceptance, functional, unit, stress and performance
Build a basic automation application to test a library.
- Create a simple automation framework application that tests a library
- Add and run automated tests for simple math operations
- Refactor the harness code to load tests from a text file
- Create a test result summary that outputs to a file
Build and test your own class by leveraging the features of the NUnit test framework.
- Describe what NUnit is, and how to use it for TDD and automated tests
- Create a NUnit-based library that tests a class
- Flag a test case to expect an error
- Debug tests using a NUnit runner, NUnit-console and a Visual Studio plugin
- Generate both XML and plain-text result summary files from NUnit
Create a User Interface (UI) automation library using the White UI test framework.
- Describe the test layers of a Windows application
- Create a NUnit-based library that leverages the White UI test framework.
- Create a test that starts up and shuts down a window-based application
- Create a test that populates and submits a Windows form
- Create a test that manipulates a modal window
Create a web UI automation application using the Selenium browser test framework.
- Describe the test layers of a web application
- Create a NUnit-based library that leverages the Selenium browser test framework
- Create a test that accesses a website in a browser and closes the browser
- Create a test that populates and submits a web form
- Create a test that manipulates a popup browser window
- Create an end-to-end test case that accepts a specific input and verifies a change occurred in the database
Create a simple automated solution that builds a .NET application, runs automated tests and reports the results using C# and scripting.
- Describe the differences between Command Line Interface (CLI), Windows Scripting Host (WSH) and Windows Management Instrumentation (WMI)
- Create a script that builds and tests an application
- Create a script that emails build result.
- Connect to a remote machine and execute commands remotely
- Add a scheduled task to run a script
Next available start dates
Online — Weekends
C# Automation
Total classroom hours
30 hours
Schedule
Online
Weekends, 10:00 AM - 1:00 PM, 10 Sa - 4/15/2023 - 6/17/2023
Quarter: Spring
Total cost
$945
Instructor: Dan Geiger
Dan is a well-rounded software professional with 20 years of experience in test, development, project management, and personnel management. After studying computer Science, he spent 11 years at Microsoft working on its online services providing tools for UI testing, performance monitoring, and developer productivity.
Notes
Online courses require an internet connection and the ability to interact both through audio and video using either a web cam/microphone, speakers/headset using a computer or via a mobile phone connection. Any costs associated with connectivity or equipment are the responsibility of the student.
Interested in custom learning solutions for your team?
Tombolo Institute Corporate Solutions offers tailor-made professional development programs to meet your organization’s goals.
Get started