Software Testing

Basic Principles of Software Testing

Requirements

  • A requirement must contain all information needed for developers and everyone else who uses it to do their jobs. Clearness. Requirements should be transparent and clear for everyone, with only one interpretation possible.

Description

Software Testing is a method to check whether the actual software product matches expected requirements and to ensure that software product is Defect free. It involves execution of software/system components using manual or automated tools to evaluate one or more properties of interest. The purpose of software testing is to identify errors, gaps or missing requirements in contrast to actual requirements. Some prefer saying Software testing as a White Box and Black Box Testing. In simple terms, Software Testing means the Verification of Application Under Test (AUT). This tutorial introduces testing software to the audience and justifies its importance.Software engineering is the only engineering discipline where product testing is a major technical and organizational concern, as well as an important cost factor. Software testing as an integral part of software quality assurance. We view software testing as part of a comprehensive strategy for software quality assurance, alongside many other techniques. The main emphasis is on principles and practices. Testing has attracted significant interest over the past decade, the compensation levels of testing functions are on the rise.Software engineering is the only engineering discipline where product testing is a major technical and organizational concern, as well as an important cost factor. Software testing as an integral part of software quality assurance. We view software testing as part of a comprehensive strategy for software quality assurance, alongside many other techniques. The main emphasis is on principles and practices. Testing has attracted significant interest over the past decade, the compensation levels of testing functions are on the rise.

Who this course is for:

  • The future of software testing is faster tests, faster results, and most importantly, tests that learn what really matters to users. Ultimately, all testing is designed to make sure the user experience is wonderful. … It’s likely that not all aspects of software development should be automa

Course content

1 section • 5 lectures • 1h 58m total length

Introduction5 lectures • 1hr 58min

  • Introduction36:15
  • STQA Lecture-217:59
  • STQA-314:45
  • STQA421:14
  • STQA-528:07

Software Testing

About this course

When writing software, destruction can be just as valuable as creation. Learn how to catch bugs and break software as you discover different testing methods that will help you build better software.

What you will learn

  1. Domains, Ranges, Oracles, and Kinds of Testing
    • How to think about the different elements of software testing.
  2. Code Coverage
    • How to find parts of a program that need more testing.
  3. Random Testing
    • How to automatically generate test cases that break code in unexpected ways.
  4. Advanced Random Testing
    • How to engineer a sophisticated random test case generator.
  5. Consequences
    • How to deal with lots of bugs, how to take a big input that triggers a bug and make it smaller, how to report a bug, and more!
  6. Conclusion

Prerequisites and requirements

Programming experience is required.