How to perform static vs dynamic testing in software QA

1.6M views
•
January 18, 2021
by
SDET- QA
YouTube video player
How to perform static vs dynamic testing in software QA

TL;DR

Static testing reviews documents and ensures accuracy and completeness before software runs. Dynamic testing validates the actual software by running inputs and checking outputs against customer requirements. Verification focuses on process correctness while validation confirms the software meets needs through tests like unit, integration, system, and UAT. These concepts are taught via reviews, walkthroughs, and inspections.

Transcript

so before starting uh today's session let's recap  what we have seen till today till yesterday so in the previous session uh we have seen v model  especially v model right so in the v model   we have discussed about what is verification and  validation and also we have discussed about static testing and dynamic testing so when i talk about  static ... Read More

Key Insights

  • Static testing verifies documentation first, ensuring accuracy and completeness before any code runs. This includes reviews of requirements, design, and test plans.
  • Walkthroughs are informal, collaborative reviews without formal meetings or minutes, enabling authors to discuss documents with peers and gather quick feedback.
  • Reviews can cover multiple artifacts beyond docs, including code, test plans, and defect histories, and are not limited to testers but can involve developers and managers.
  • Verification checks how well processes are followed, while validation tests whether the software meets customer needs through dynamic execution.
  • White box testing examines internal logic and is usually done by developers, whereas black box testing concentrates on external functionality and user interaction, aiding testers who do not need internal code knowledge.
  • Static techniques include three approaches: review, walkthrough, and inspection, each with different formality and participation requirements.
  • Dynamic testing techniques cover unit, integration, system testing, and user acceptance testing to validate software behavior against requirements.
  • The V-model framework supports aligning verification activities with validation tests through a structured progression from requirements to testing.
  • More videos from this channel:
  • More from this channel: SDET- QA

Explore YouTube Video Summarizer or Get YouTube Transcript Extractor

Questions & Answers

Q: What is static testing and why is it important in software QA

Static testing is the process of reviewing documentation and code without executing the software to verify correctness and completeness. It is important because it catches issues early, reduces downstream defects, and ensures alignment with customer requirements before dynamic testing begins. By focusing on documents like requirements, design, and test plans, teams can identify gaps and ambiguities that would be expensive to fix later.

Q: What is dynamic testing and how does it differ from static testing

Dynamic testing involves executing the software with inputs to observe actual behavior and outputs, ensuring it meets customer requirements. It differs from static testing in that it validates functionality through run-time interaction, not just documentation or code review. This approach confirms the software behaves correctly under real usage scenarios and supports validation against user needs.

Q: How do verification and validation relate to testing techniques

Verification is about ensuring the process and artifacts are correct and followed, including reviews, walkthroughs, and inspections of documents and code. Validation is about confirming that the software itself meets customer requirements through dynamic testing, such as unit, integration, system, and user acceptance tests. Together they provide a complete quality assurance approach.

Q: What are reviews, walkthroughs, and inspections in static testing

Reviews are activities to verify correctness and completeness of documents and artifacts, including requirements, design, and test plans, and can be performed by anyone on the team. Walkthroughs are informal, collaborative reviews without formal agendas or minutes, where authors discuss content with peers. Inspections are formal, structured reviews with defined roles and data collection to identify defects systematically.

Q: Who can perform a walkthrough and what makes it informal

A walkthrough can be performed by the author of the document and peers who participate to listen and provide feedback. It is informal because it does not require a formal plan, scheduled meeting, or minutes, and can be conducted as needed to review specific content and clarify understanding. The key is collaborative discussion rather than rigid process.

Q: What is white box testing and who typically conducts it

White box testing examines the internal logic and structure of the software, requiring visibility into the code and implementation details. It is typically performed by developers who have knowledge of the programming language and architecture, enabling targeted checks for syntax, logic, and coding standards. This approach complements black box testing by validating internal correctness.

Q: What is black box testing and what does it focus on

Black box testing focuses on the external functionality of the software from the user perspective, without knowledge of internal code or structure. Testers design and execute tests to verify that features, flows, and user interfaces meet requirements and behave as expected under various inputs and scenarios. It complements white box testing by validating overall behavior.

Q: What levels of dynamic testing are covered in the course and why

The course covers unit testing to validate individual components, integration testing to ensure correct interaction between modules, system testing to verify the complete, integrated product, and user acceptance testing to confirm the software satisfies customer needs. Each level builds on the previous one to ensure quality throughout the development lifecycle and alignment with requirements.

Summary & Key Takeaways

  • A detailed overview of static testing techniques centers on documentation reviews to ensure completeness and correctness, including requirements and design documents, code reviews, and test plan reviews. The process emphasizes catching issues early before code execution.

  • Dynamic testing targets the software itself through actual execution, using unit, integration, system, and user acceptance testing to verify behavior aligns with customer requirements, with testers applying black box and white box approaches as appropriate.

  • The static and dynamic testing paradigm is framed within verification and validation concepts, complemented by review, walkthrough, and inspection practices to improve quality and ensure processes are followed correctly throughout development.


Read in Other Languages (beta)

Share This Summary 📚

Explore More Summaries from SDET- QA 📚