Are you ready to embark on a transformational journey into the world of Software Development Engineer in Test (SDET) using C#? Welcome to the most comprehensive and hands-on course designed to take you from a beginner to a proficient automation tester.
In today's fast-paced software industry, the demand for SDETs who can build robust and reliable test automation frameworks is skyrocketing. This course is your gateway to mastering C# for test automation, from the ground up.
What You Will Learn:
Are you ready to embark on a transformational journey into the world of Software Development Engineer in Test (SDET) using C#? Welcome to the most comprehensive and hands-on course designed to take you from a beginner to a proficient automation tester.
In today's fast-paced software industry, the demand for SDETs who can build robust and reliable test automation frameworks is skyrocketing. This course is your gateway to mastering C# for test automation, from the ground up.
What You Will Learn:
Foundations of Test Automation: Start with the fundamentals of test automation, including understanding the importance of automation testing in the software development lifecycle.
C# Programming: Dive into C#, one of the most powerful and versatile programming languages, and learn it from scratch. No prior coding experience is required.
Selenium WebDriver: Explore the world of Selenium WebDriver and harness its capabilities to automate web applications with precision.
Test Frameworks: Build scalable and maintainable test automation frameworks from the ground up, allowing you to efficiently test complex applications.
Page Object Model (POM): Implement the industry-standard POM design pattern to create clean and organized test scripts.
API Testing: Extend your skills to include API testing using C# and tools like RestSharp, preparing you for full-stack testing.
Real-World Projects: Apply your knowledge through hands-on projects and gain practical experience that mirrors real industry scenarios.
Best Practices: Discover industry best practices for writing maintainable, efficient, and scalable automation scripts.
Why Enroll in This Course?
Hands-On Learning: Gain practical experience through hands-on exercises, quizzes, and projects that reinforce your understanding.
Instructor Expertise: Learn from experienced instructors who have a proven track record in test automation and C# programming.
Career Advancement: Boost your career prospects by becoming proficient in a skill set highly sought after by leading tech companies.
Lifetime Access: Get lifetime access to course materials, updates, and a supportive online community.
Don't miss this opportunity to become a certified SDET with C# expertise. Enroll today, and take the first step toward a rewarding career in test automation.
Here is our agenda for today:
Learn what are the main benefits of this course.
See what are the future opportunities after the course's completion.
Today we will learn:
How we are going to communicate to make sure that the learning process is efficient
Where to ask questions
How to ask questions
Communication channels, where you can reach out to me.
In this video lesson you will learn how to use resources for the lectures.
In this lesson, I’ll show you how my students get exclusive, free, no sign-up access to a one-of-a-kind AI Bot I personally built to help you deeply learn the material, reinforce your knowledge, and gain a real advantage in interviews, real-world work and career growth.
Today we will learn:
What is API?
What is a web service?
Why are web services needed?
Where web services are used?
What are pros and cons of API?
Today we will learn:
What are the main existing API types?
What is REST API?
What is SOAP API?
What are the differences between REST and SOAP?
Today we will learn:
What is REST API?
What are its architectural properties?
Why is it needed in Web Applications?
Advantages of REST API
Today we will learn:
What is an HTTP method?
What are several main features of an HTTP method?
What are the main methods of REST API?
Why is each of them needed?
Today we will learn:
What is an HTTP status code?
What are the main types of API status codes?
Why each of them is needed?
What is the connection between HTTP methods and status codes?
Here is our agenda for today:
We will talk with you a bit about Postman history.
Consider main components of Postman.
Understand why we should learn Postman.
Afterwards we will discuss the role of the Postman in software testing process.
Today we will learn:
What is API testing tool?
What are the most popular API testing tools?
Why Postman?
How to install Postam to your machine?
How to perform basic configuration of Postman?
Today we will learn:
What is Trello?
Why is it selected for API testing?
How to create a test account in Trello?
How to set up Trello board for the course?
Today we will learn:
What is authorization in API?
Why is authorization needed?
Why will we need auth token in Trello?
How to generate auth token?
Where to store the generated token value?
Today we will learn:
What is GET method?
When is GET method needed?
Why is GET method needed?
What are the main features of GET method?
Today we will learn:
How can we create a GET method in Postman?
How can we execute a GET method in Postman?
How does the GET method response look like?
How do different GET methods look like?
The home task for today's lesson is the following:
Sign in to Trello
Open Trello API docs page.
Find Get Lists on a board request.
Execute this request for your Test board.
Find Get Cards in a List, Get a Card.
Execute these requests for any of the lists on your Test board.
Today we will learn:
What is JSON schema?
Why is JSON schema needed?
How can we validate a GET response schema?
Which tool can be used to generate a JSON schema?
Which tool can be used to validate a JSON schema?
The home task for today's lesson is the following:
Open https://jsonschema.net/ and https://jsonschemalint.com/ sites.
Execute Get Cards request from our previous home task.
Generate and validate JSON Schema for response array.
Execute Get Specific Card request from our previous home task.
Generate and validate JSON Schema for response object.
Today we will learn:
What is validation test?
How can we validate a GET endpoint?
What are common status codes for GET methods validation?
How to validate a GET endpoint in Postman?
The home task for today's lesson is the following:
Execute Get Specific Card request with valid data.
See that response status code and body are valid.
Validate card id path parameter with invalid format and value.
Validate unauthorized permission attempt.
Validate key, token, and fields query parameters.
Today we will learn:
What is POST method?
When is POST method needed?
Why is POST method needed?
What are the main features of POST method?
Today we will learn:
How can we create a POST request in Postman?
How can we execute a POST request in Postman?
How does the POST request’s response look like?
How to check POST request results?
The home task for today's lesson is the following:
Sign in to Trello and open Trello API docs page.
Find Create a new Card request.
Execute this request for your list.
Pass card name and idList fields in two different ways.
Check that card is added to list via API and UI.
Today we will learn:
How can we validate a POST endpoint?
What are status codes in POST methods validation?
How to validate a POST endpoint in Postman?
How to check that new resource is not created via API?
The home task for today's lesson is the following:
Execute Create a New Card request with valid data.
See that response status code and body are valid.
Validate idList query parameter with invalid format and value.
Do not provide idList query parameter at all.
Validate unauthorized permission attempt.
Validate key, and token query parameters.
Today we will learn:
What is PUT method?
When is PUT method needed?
Why is PUT method needed?
What are the main features of PUT method?
Today we will learn:
How can we create a PUT method in Postman?
How can we execute a PUT method in Postman?
How does the PUT method response look like?
How should we check PUT method work?
The home task for today's lesson is the following:
Sign in to Trello and open Trello API docs page.
Find Update a Card request.
Execute this request for your test card.
Pass card updated name field in two different ways.
Check that card is updated via API and UI.
Today we will learn:
How can we validate a PUT endpoint?
What are common status codes for PUT methods validation?
How to validate a PUT endpoint in Postman?
How to check resource not updated via API?
The home task for today's lesson is the following:
Execute Update a Card request with valid data.
See that response status code and body are valid.
Validate ID path parameter with invalid format and value.
Do not provide ID path parameter at all.
Validate unauthorized permission attempt.
Validate key, and token query parameters.
Today we will learn:
What is DELETE method?
When is DELETE method needed?
Why is DELETE method needed?
What are the main features of DELETE method?
Today we will learn:
How can we create a DELETE method in Postman?
How can we execute a DELETE method in Postman?
How does the DELETE method response look like?
How should we check DELETE method?
The home task for today's lesson is the following:
Sign in to Trello.
Open Trello API docs page.
Find Delete a Card request.
Execute this request for your Test board.
Verify that the card was deleted via API and UI.
Today we will learn:
How can we validate a DELETE endpoint?
What are common status codes for DELETE methods validation?
How to validate a DELETE endpoint in Postman?
How to check resource not deleted via Postman?
The home task for today's lesson is the following:
Execute DELETE Specific Card request with valid data.
See that response status code and body are valid.
Validate card id path parameter with invalid format and value.
Validate unauthorized permission attempt.
Validate key, and token query parameters.
Today we will learn:
What are Collection Variables in Postman?
What are Query Variables in Postman?
What are Environment Variables in Postman?
How to manage all of them?
Today we will learn:
How to create automated test in Postman?
How to check the response status code?
How to verify the response has a JSON body?
How to see and evaluate test results?
Today we will learn:
What is IDE?
What are the most popular IDEs for C# development?
Why Visual Studio?
How to install Visual Studio to your machine?
How to perform the basic configuration of Visual Studio?
Today we will learn:
.NET Versions – which one to use?
How to check the current .NET version.
How to download .NET installer.
How to install .NET via installer.
Here is our agenda for today:
We will talk with you a bit about Rest Sharp history.
Consider main components of Rest Sharp.
Understand why we should learn Rest Sharp.
Discuss the role of the Rest Sharp in the software testing process.
In today's lecture, we will learn:
Intricacies of Rest Sharp.
RestClient, RestRequest, and RestResponse
Practical RestSharp use cases.
Here is our agenda for today:
We will create a test project
Learn the basics of NuGet Packages
Set Rest Sharp client's base URL
Send GET request for Trello API base URL
Log information sent in the request
Your home task is to implement a simple test application for ‘google.com’ ping. What you should do is:
Create a project in Visual Studio
Add Rest Sharp dependency to client project.
Create a class with Main() method
Define google.com as your request base URL
Execute GET request for this URL
Today we will learn:
NUnit role in development.
Essential NUnit components.
NUnit Assert functions
Impeccable tests with NUnit.
Real-world NUnit use-cases.
Here is our agenda for today:
Check the response status code
Add new dependency to the project
See how to log the response received
Your home task is to add assertion to a simple test application for ‘google.com’ ping. What you should do is:
Open your project
Add statement printing your response to Console
Save the result of request execution to a separate variable
Check status code for your API call as the final line of code in the method
Here is our agenda for today:
Create NUnit test project
Get rid of RestSharpRunner class.
Create the first test class.
Generate first NUnit test method.
Set Rest Client in [OneTimeSetup] hook.
Your home task is to migrate your simple test application for ‘google dot com’ ping to test method. What you should do is:
Create a new NUnit 3 test project.
Copy the content of main method.
Remove RestSharpRunner class.
Create a test class with test method.
Set IRestClient inside a [OneTimeSetup] hook.
Here is our agenda for today:
We will add two test methods to our project.
Learn how to add query params to the request.
See how to use path params in requests.
Verify response body part.
Your home task is to cover GET Cards and GET Card API endpoints with happy path tests. What you should do is:
Add two test methods for each endpoint in your project.
Add authorization query params to each request.
Add {list_ID} and {card_ID} path params to requests.
Verify received card’s name.
Today we will learn:
Deep dive into Newtonsoft JSON.
Newtonsoft JSON Components.
This library’s Importance.
Newtonsoft Functionality.
Real-life cases of usage.
Here is our agenda for today:
We will add Newtonsoft Json Schema dependency.
Reduce the fields number returned by our GET endpoints.
Create Json files with our schemas stored.
Add JSON Schema validations
Your home task is to add JSON Schema validation for GET Cards and GET Specific Card Trello API requests. What you should do is:
Add Newtonsoft Json Schema dependency to your project.
Reduce fields count returned by GET endpoints to ID and name.
Create two files to store JSON schemas for your responses.
Put your schemas there.
Set Copy to Output Directory property’s value to Always Copy.
Add lines of code for each test method with JSON Schemas validation.
Here is our agenda for today:
We will add one more test class to our automation framework.
Create invalid board ID validation test.
Work on test checking GET Board endpoint access without authorization.
Automate check if trying to access someone’s personal data by another user credentials.
Your home task is to add validation tests for GET Specific Card Trello API requests. What you should do is:
Create a separate test class for validation tests.
Add a test method checking unauthorized permission request.
Create an automated test to access a card with invalid ID.
Build a verification method trying to access specific card with another user credentials.
OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.
Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.
Find this site helpful? Tell a friend about us.
We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.
Your purchases help us maintain our catalog and keep our servers humming without ads.
Thank you for supporting OpenCourser.