We may earn an affiliate commission when you visit our partners.
Course image
Tarek Roshdy, Nezam Academy, and Nezam Team

Everything you need to learn Software Testing, all combined in one resource.

Read more

Everything you need to learn Software Testing, all combined in one resource.

Course objective is to provide you with all required knowledge that you need in order to land your first software testing job whether it is a full-time or a freelancing job.

Topics Covered in the Course:

-Manual Testing Basics [Tools used: Google Sheets-Trello-Zephyr Scale-Jira]

-Agile Testing Basics [Tools used: Jira-Trello]

-API & Webservice Testing [Tools used: postman]

-Performance Testing [Tools used: JMeter]

-Freelance testing websites [Websites explained: utest-testerwork-test.io-bugfinders]

-Manual Testing interview questions

-Test Automation [Tools used: Selenium IDE - Katalon Studio - Playwright]

-Black Box Test Techniques [Techniques covered: Equivalence partitioning-Boundary value analysis-Decision Table Testing-State transition testing]

-White Box Test Techniques [Statement Coverage-Decision Coverage-Condition Coverage-Path Coverage-MCDC-Loop Coverage]

-Career Tips [ISTQB Certificates-Writing a professional CV-Software Testing Status]

These are some of the reviews of the students who used this course to begin their software testing career:

"Great course full of information. As a beginner in software testing, i got plenty of useful information with a lot of practical knowledge which i can use to start working as a freelance software tester.Very nice teacher who explains everything in the way anyone can understand . I recommend to take this course. Thank you ,Tarek. "

Katrina Kulakova

"A developer, post-graduate in computer science and engineering who pursues research. I find this course material well organized and useful for learning Software Testing basics and why is it so important as a developer. Proper guidance to those who would like to become a certified tester. Worth the time and money spent."

Akshaya C

"Thank you, Tarek for this valuable Course, It was so beneficial for me as a new testing learner. It gave me the whole picture of testing, and then went down for every concept, tool, a skill I need to start testing and understand the testing market. It covers all topics in a simple fluent language, easy to understand for non-English Speakers. Tarek responds to each and every question you ask. The Course is Comprehensive, and this is My favorite point, it covers many aspects of testing, how to prepare your CV, and how to start working online in one course, so beginners can land their first job easily."

Reham Tammam

"Thank God I found this course. Really helps me preparing for my interview. Sample interview taught in this course are really the one they asked in the interview. I love the way he prepared the slides, presentation as well as his teaching. His accent is understandable and the captions really helps. Thank you Tareq."

Khairul Hilmi Bin Sidek

Enroll now

What's inside

Learning objectives

  • Basic concepts of software testing
  • Test case & bug report writing
  • Black-box test techniques
  • Requirements review & test scenarios writing using trello
  • Implementing the test process on a test management tool (testlink)
  • Basics of agile methodologies & agile testing
  • How to use application lifecycle management tool (jira)
  • How to become a freelance tester
  • White-box test techniques
  • Basics of api testing
  • Api testing using postman
  • Basics of performance testing using jmeter
  • How to write a professional qa resume
  • How to prepare for a qa interview
  • Different certificates in software testing field and how to apply on them
  • Show more
  • Show less

Syllabus

Introduction
Welcome to the course
About Course Content
About the Instructor
Read more
Note About Course Content
Roles in the Software Development Team
Course Study Plan
Requirements engineers

Requirements Engineers

Ui/UX Designers

UI/UX Designers

Front-End, Back-End, & Mobile Developers

Front-End, Back-End, & Mobile Developers

Project Manager & Scrum Master

Project Manager & Scrum Master

How Software is Developed - Software Development Lifecycle Models
Waterfall Model

Waterfall Model

V-Model

V-Model

Agile Software Development

Agile Software Development

Incremental & Iterative Development

Incremental & Iterative Development

Introduction to Scrum

Introduction to Scrum

Difference between Sequential, Iterative, & Incremental Development

Difference Between Sequential, Iterative, & Incremental Models

Summary
Basic Concepts of Software Testing [Beginner]
What is Software Testing?

What is Software Testing

Difference between Static & Dynamic Testing

Difference between Static & Dynamic Testing

Validation & Verification

Validation & Verification

Objectives of Testing

Objectives of Testing

Testing & Debugging

Testing & Debugging

Test Process
Test Process Quiz
Test Levels
Test Levels Quiz
Testing Types
Types of Testing Quiz
What's Next
Test Scenario Writing [Beginner]
Creating Test Scenarios
Tools to help in creating Test Scenarios

Tools to help in creating Test Scenarios

Setting Up Trello
Facebook Valid Sign Up Test Scenarios Part 1

Facebook Valid Sign Up Test Scenarios Part 1

Facebook Valid Sign Up Test Scenarios Part 2

Facebook Valid Sign Up Test Scenarios Part 2

Facebook Invalid Sign Up Test Scenarios Part 1

Facebook Invalid Sign Up Test Scenarios Part 1

Facebook Invalid Sign Up Test Scenarios Part 2

Facebook Invalid Sign Up Test Scenarios Part 2

Facebook Invalid Sign Up Test Scenarios Part 3

Facebook Invalid Sign Up Test Scenarios Part 3

Facebook Login Valid Scenarios
Facebook Invalid Login Scenarios
Facebook Login Test Scenarios
Search Functionality [Udemy Test Scenarios]

Search Functionality [Udemy Test Scenarios]

Category Search [Udemy Test Scenarios]
Course Search [Udemy Test Scenarios]
Instructor Search [Udemy]
Search Functionality Test Scenarios
Test Scenario Conclusion
Black-Box Test Techniques
Introduction to Black-Box Techniques
Equivalence Partitioning Definition
Equivalence Partitioning
Equivalence Partitioning Examples
Equivalence Partitioning Practical Examples
Boundary-Value Analysis
Boundary-Value Analysis Example #1
Note About Next Lecture
Boundary-Value Analysis Example #2
Notes About Equivalence Partitioning & Boundary-Value Analysis
Important Notes About EP & BVA
Decision Table Testing
Decision Table Testing Example
State-Transition Testing
Pairwise Testing

Pairwise Testing

Black Box Techniques Summary
You will learn how to write a clear test case & bug report
Link to this section's slides
How to Write a Test Case
Test Case Writing

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Provides comprehensive skills for beginners who are interested in a new career
Helps learners join the Software Testing workforce
Provides a blend of practical knowledge and tools that are immediately applicable
Offers beginner-friendly content and a gentle learning curve

Save this course

Save The Complete 2024 Software Testing Bootcamp to your list so you can find it easily later:
Save

Reviews summary

Great intro to software testing

According to students, this course offers a well-rounded introduction to the principles and tools of software testing. Learners say the course is great for beginners, and covers key skills like writing test cases and bug reports. Students largely praise the course's engaging assignments and knowledgeable instructors.
Suitable for those new to testing
"It's a great course for anyone to learn the principles of software testing..."
Helpful and experienced professionals
Engaging assignments and projects
"...and know how to work on some important tools for writing test cases and bug reports"

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in The Complete 2024 Software Testing Bootcamp with these activities:
Practice writing test cases for common software functionality
Improve your ability to identify and write effective test cases, ensuring comprehensive testing.
Browse courses on Test Case Writing
Show steps
  • Select a piece of software functionality
  • Identify the different test cases that could be written for that functionality
  • Write out the test cases in a clear and concise manner
Create a mind map summarizing the different types of software testing
Gain a comprehensive understanding of the different types of testing and their applications.
Browse courses on Manual Testing
Show steps
  • List down the different types of software testing
  • Explain each type of testing and its purpose
  • Create a mind map to visualize the relationships between the different types of testing
Practice Writing Test Cases and Bug Reports
Exercise creating test cases and bug reports to improve understanding of testing practices.
Browse courses on Test Case Writing
Show steps
  • Review the course materials on test case and bug report writing.
  • Find a simple application or website.
  • Write test cases for various scenarios and input data.
  • Write bug reports for any issues encountered during testing.
  • Compare your work to examples or have it reviewed for feedback.
Seven other activities
Expand to see all activities and additional details
Show all ten activities
Participate in a peer code review session on software testing
Engage with peers to review and provide feedback on software testing code, enhancing your understanding and ability to write quality code.
Browse courses on Software Testing
Show steps
  • Find a peer or group to participate in a code review session
  • Select a piece of software testing code to review
  • Review the code and provide constructive feedback
Build a basic software testing framework
Develop a foundational understanding of how testing frameworks work and practical experience with a popular testing tool.
Browse courses on Selenium
Show steps
  • Choose a programming language and testing framework
  • Create a sample project to test
  • Write test cases using the framework
  • Run the tests and fix any bugs found
Join a Study Group for Black-Box Testing Techniques
Collaborate with peers to discuss and apply black-box testing techniques, enhancing understanding and problem-solving skills.
Browse courses on Software Testing
Show steps
  • Find or create a study group with other students in the course.
  • Choose a black-box testing technique to focus on.
  • Brainstorm and discuss different test scenarios.
  • Practice applying the technique to real-world applications.
  • Share insights and provide feedback within the group.
Follow a tutorial on using JMeter for performance testing
Gain practical experience with a performance testing tool, enabling you to evaluate software performance.
Browse courses on Performance Testing
Show steps
  • Find a reputable tutorial on JMeter
  • Follow the tutorial step-by-step
  • Create a simple performance test using JMeter
Practice API Testing with Postman
Engage in hands-on API testing exercises using Postman to strengthen practical implementation skills.
Browse courses on API Testing
Show steps
  • Install Postman and familiarize yourself with its interface.
  • Obtain API documentation or identify a target API.
  • Create test cases for various API endpoints.
  • Execute API calls using Postman and analyze the responses.
  • Identify and report any API defects or issues.
Attend a workshop on mobile app testing
Gain insights and practical skills in mobile app testing, a rapidly growing area in the industry.
Browse courses on Mobile App Testing
Show steps
  • Identify a workshop on mobile app testing
  • Register for the workshop
  • Attend the workshop and actively participate
Participate in a software testing competition or hackathon
Challenge yourself in a competitive environment, applying your software testing skills under pressure and gaining valuable feedback.
Show steps
  • Find a software testing competition or hackathon to participate in
  • Register for the competition
  • Prepare for the competition by practicing and studying

Career center

Learners who complete The Complete 2024 Software Testing Bootcamp will develop knowledge and skills that may be useful to these careers:
Software Test Engineer
A Software Test Engineer is responsible for the design, development, and maintenance of test plans for software applications. This role works with software developers, quality assurance (QA) teams, and other stakeholders to ensure that software meets user requirements and performs as expected. By taking this course, learners will gain the skills and knowledge to enter the field of software testing and work successfully as a Software Test Engineer. The course will provide learners with a comprehensive understanding of software testing concepts, tools, and techniques. They will learn how to develop test plans, write test cases, and execute tests. The course will also cover important topics such as agile testing, performance testing, and API testing.
Test Automation Engineer
A Test Automation Engineer is responsible for designing, developing, and maintaining automated test scripts and frameworks. This role works closely with software development teams to identify and resolve defects. The course will provide learners with the skills and knowledge needed to become a Test Automation Engineer, including programming skills, test automation techniques, and software development best practices. The course will also help learners to develop the problem-solving and critical thinking skills necessary to succeed in this role.
Freelance Software Tester
A Freelance Software Tester works independently to provide software testing services to clients. This role is responsible for designing, developing, and executing test plans for software applications. The course will provide learners with the skills and knowledge needed to become a successful Freelance Software Tester, including software testing techniques, test management tools, and business development skills. The course will also help learners to develop the time management and project management skills necessary to succeed in this role.
QA Manager
A QA Manager is responsible for leading and managing a team of software testers to ensure the quality of software products. This role develops and implements quality assurance processes, establishes testing standards, and collaborates with software development teams to identify and resolve defects. The course will provide learners with the skills and knowledge needed to succeed as a QA Manager, including software testing best practices, project management principles, and leadership skills. The course will also help learners to develop the communication and interpersonal skills necessary to work effectively with stakeholders.
Performance Tester
A Performance Tester is responsible for testing the performance of software applications under load. This role identifies and resolves performance bottlenecks and ensures that software applications meet performance requirements. The course will provide learners with the skills and knowledge needed to become a Performance Tester, including performance testing techniques, load testing tools, and performance analysis techniques. The course will also help learners to develop the problem-solving and critical thinking skills necessary to succeed in this role.
Security Tester
A Security Tester is responsible for testing the security of software applications. This role identifies and resolves security vulnerabilities and ensures that software applications meet security requirements. The course will provide learners with the skills and knowledge needed to become a Security Tester, including security testing techniques, security testing tools, and security best practices. The course will also help learners to develop the problem-solving and critical thinking skills necessary to succeed in this role.
Software Development Engineer in Test (SDET)
A Software Development Engineer in Test (SDET) is a hybrid role that combines software development and software testing skills. This role is responsible for designing, developing, and maintaining automated test scripts and frameworks. SDETs also work closely with software development teams to identify and resolve defects. The course will provide learners with the skills and knowledge needed to become an SDET, including programming skills, test automation techniques, and software development best practices. The course will also help learners to develop the problem-solving and critical thinking skills necessary to succeed in this role.
Software Quality Analyst
A Software Quality Analyst is responsible for ensuring the quality of software products. This role works with software development teams to identify and resolve defects, and ensures that software applications meet quality standards. The course will provide learners with the skills and knowledge needed to become a successful Software Quality Analyst, including software testing techniques, quality assurance best practices, and software development best practices. The course will also help learners to develop the problem-solving and critical thinking skills necessary to succeed in this role.
Technical Support Engineer
A Technical Support Engineer is responsible for providing technical support to users of software applications. This role identifies and resolves technical issues, provides documentation, and trains users on software products. The course will provide learners with the skills and knowledge needed to become a successful Technical Support Engineer, including technical support best practices, customer service skills, and software troubleshooting techniques. The course will also help learners to develop the communication and interpersonal skills necessary to succeed in this role.
Business Analyst
A Business Analyst is responsible for analyzing business needs and requirements, and translating them into software requirements. This role works closely with software development teams to ensure that software applications meet the needs of the business. The course will provide learners with the skills and knowledge needed to become a successful Business Analyst, including business analysis techniques, software development best practices, and communication skills. The course will also help learners to develop the problem-solving and critical thinking skills necessary to succeed in this role.
Project Manager
A Project Manager is responsible for planning, executing, and controlling software development projects. This role works with stakeholders to define project requirements, develop project plans, and manage project resources. The course will provide learners with the skills and knowledge needed to become a successful Project Manager, including project management best practices, risk management techniques, and communication skills. The course will also help learners to develop the leadership and interpersonal skills necessary to succeed in this role.
Quality Assurance Engineer
A Quality Assurance Engineer is responsible for ensuring the quality of software products. This role works with software development teams to identify and resolve defects, and ensures that software applications meet quality standards. The course will provide learners with the skills and knowledge needed to become a successful Quality Assurance Engineer, including software testing techniques, quality assurance best practices, and software development best practices. The course will also help learners to develop the problem-solving and critical thinking skills necessary to succeed in this role.
User Experience Designer
A User Experience Designer is responsible for designing the user interface and user experience for software applications. This role works with software development teams to create software products that are easy to use and enjoyable to interact with. The course will provide learners with the skills and knowledge needed to become a successful User Experience Designer, including user experience design best practices, software development best practices, and communication skills. The course will also help learners to develop the problem-solving and critical thinking skills necessary to succeed in this role.
Software Developer
A Software Developer is responsible for designing, developing, and maintaining software applications. This role works with software development teams to create software products that meet the needs of users. The course will provide learners with the skills and knowledge needed to become a successful Software Developer, including programming skills, software development best practices, and communication skills. The course will also help learners to develop the problem-solving and critical thinking skills necessary to succeed in this role.
Technical Writer
A Technical Writer is responsible for creating and maintaining technical documentation for software products. This role works with software development teams to document software requirements, design, and implementation. The course will provide learners with the skills and knowledge needed to become a successful Technical Writer, including technical writing best practices, software development best practices, and communication skills. The course will also help learners to develop the problem-solving and critical thinking skills necessary to succeed in this role.

Reading list

We've selected 11 books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in The Complete 2024 Software Testing Bootcamp.
Offers a deep dive into black-box and white-box testing techniques, providing insights into their strengths and limitations. It valuable resource for those looking to gain a thorough understanding of these testing approaches.
Delves into various software testing techniques, including black-box and white-box testing, performance testing, and security testing. It valuable reference for those looking to expand their knowledge of testing techniques.
Provides a comprehensive overview of software testing, covering various aspects such as testing principles, methodologies, and tools. It serves as a valuable reference for both beginners and experienced testers.
Is an excellent reference for software testing theory, principles, and techniques as well as best practices and current trends in the industry.
Is useful for covering fundamentals of software testing, the role of testers in the IT industry, and how testing fits into the software development life cycle.
Provides valuable information about agile testing from a practical perspective.
Emphasizes risk-based software testing approaches. It provides guidance on identifying and prioritizing risks, and developing effective testing strategies accordingly. It is particularly useful for those looking to improve the efficiency and effectiveness of their testing efforts.
Introduces the concept of test-driven development (TDD), an agile software development approach that emphasizes writing tests before writing code. It valuable resource for those looking to explore TDD and improve their testing practices.
Provides a practical guide to software testing, covering various aspects such as test planning, test case design, and test execution. It is particularly useful for those looking to gain hands-on experience in software testing.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to The Complete 2024 Software Testing Bootcamp.
VMWare for Absolute Beginners
Interviewing Skills for Jobs: Ace the Job Interview
SDET Training: Selenium WebDriver, Java Project & Code...
Introduction to Software Testing
Master the Coding Interview: Big Tech (FAANG) Interviews
Testing Django Applications
Automated Software Testing: Unit Testing, Coverage...
50 days of LeetCode in python: Algorithms coding interview
Data Structures and Algorithms Bootcamp
Our mission

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.

Affiliate disclosure

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.

© 2016 - 2024 OpenCourser