πŸ§ͺ

Software Testing Fundamentals

Jun 11, 2025

Overview

The lecture covers the fundamentals of software testing, including definitions, career benefits, necessary skills, documentation, and using tools such as Azure DevOps for creating and managing test cases.

IT & QA Career Overview

  • IT careers often offer remote or hybrid opportunities and competitive salaries.
  • There are multiple advancement opportunities in QA, from tester to VP roles.
  • Benefits of IT include paid vacations, health insurance, and retirement plans.
  • Entry into QA does not require a specific certification, but certifications like ISTQB are desirable and can improve job prospects.

Mindset & Preparation for QA

  • Achieving success in QA requires consistency, hard work, goal-setting, and time management.
  • Sacrificing non-essential activities provides time for study and career change.
  • Certifications are helpful but not mandatory for most QA positions.
  • Recruiters may use certifications to shortlist candidates, but practical skills are essential.

Testing Fundamentals

  • Testing is the process of checking how well a product works by comparing expectations vs. reality.
  • In software, testing means verifying that applications meet expected conditions and reporting differences as bugs.
  • Key testing concepts: expected results, actual results, and requirement coverage.

Approaching Testing in Practice

  • Good testers start by learning the product and asking clarifying questions before designing test cases.
  • Testers rely on requirement documentation to understand what needs testing.
  • Test case coverage matters more than the number of test cases.

Requirement Documentation & Test Case Creation

  • Requirement documents (e.g., functional requirements, user stories) detail application features and functionalities.
  • Testers convert requirements into specific, actionable test cases.
  • Example: creating a "Login with correct username and password" test case using Azure DevOps.
  • Negative testing (e.g., incorrect login scenarios) is also essential for comprehensive test coverage.

Tools & Execution

  • Tools like Azure DevOps help manage and execute test cases efficiently.
  • Shared steps can be reused across multiple test cases to streamline the process.
  • Testers document actions, expected results, and execute tests, marking outcomes as pass or fail.

Qualities of a Good Tester

  • Rapid learning abilities to quickly understand new applications and features.
  • Continuous improvement of testing skills and staying updated with technology.
  • Curiosity to go beyond documentation and uncover hidden defects.
  • Strong communication skills for reporting defects and collaborating with team members.

Key Terms & Definitions

  • Testing β€” The process of checking how well a product or application functions.
  • Software Testing β€” Verifying that software applications meet specified requirements and reporting issues as bugs.
  • Bug/Defect β€” A difference between expected and actual application behavior.
  • Requirement Coverage β€” Ensuring all specified requirements are tested.
  • Test Case β€” A documented scenario detailing actions, inputs, and expected results for testing.
  • Negative Testing β€” Testing invalid or unexpected conditions to ensure the application handles them properly.
  • Shared Steps β€” Reusable steps used across multiple test cases in test management tools.

Action Items / Next Steps

  • Review requirement documentation for applications you are testing.
  • Practice creating and executing test cases using a test management tool like Azure DevOps.
  • Prepare for tomorrow’s lesson focused on defects and their life cycle.