✅

Testing: Unit & Integration

40 cards · 🇺🇸 English

Unit testing, integration testing, mocking, and testing best practices.

Study all 40 cards for free

Flashcards, quizzes, pixel-art games and a daily review that remembers for you.

Study this deck free

Try the first 10 cards

1 / 10
Question

Software testing

Knew itLearning

Tap the card for the answer · swipe right if you knew it, left if not

Already have an account? Sign in

Cards

  1. 1Software testing
    The act of checking whether software meets its intended objectives and satisfies expectations, providing objective information about quality and risk
  2. 2Unit testing
    A form of software testing by which isolated source code (components or modules) is tested to validate expected behavior
  3. 3Integration testing
    Testing where multiple software components, modules, or services are tested together to verify they work as expected when combined, focusing on interactions and data exchange
  4. 4'test pyramid' approach
    A testing strategy where most tests are unit tests, followed by fewer integration tests, and finally a small number of end-to-end (e2e) tests
  5. 5static vs dynamic testing
    Static testing involves reviewing code without executing it (reviews, inspections); dynamic testing involves running the program with test cases
  6. 6White-box testing
    Testing that verifies internal structures or workings of a program using knowledge of source code and programming skills to design test cases
  7. 7Black-box testing
    Designing test cases without knowledge of implementation or source code, based only on what the software is supposed to do
  8. 8Grey-box testing
    Testing that uses knowledge of internal data structures and algorithms while executing tests at the user/black-box level
  9. 9Regression testing
    Testing that focuses on finding defects after major code changes, seeking to uncover software regressions where previously working features stop working correctly
  10. 10Smoke testing
    Minimal attempts to operate software designed to determine if there are basic problems that will prevent it from working at all
  11. 11Sanity testing
    Testing to determine whether it is reasonable to proceed with further testing
  12. 12Acceptance testing
    System-level testing to ensure software meets customer expectations, often performed as part of hand-off between development phases
  13. 13verification vs validation
    Verification: 'Have we built the software right?' (does it implement requirements). Validation: 'Have we built the right software?' (do deliverables satisfy the customer)
  14. 14Code coverage
    A software metric that measures the completeness of a test suite by reporting what percentage of code (functions, statements, branches) has been executed
  15. 15Three main types of code coverage
    Function coverage (functions executed), Statement coverage (lines executed), Decision coverage (True and False branches executed)
  16. 16Exploratory testing
    A testing approach emphasizing simultaneous learning, test design, and test execution, where testers have personal freedom to optimize their work throughout the project
  17. 17Test-driven development (TDD)
    A unit testing practice where unit-level testing is performed while writing the product code, with test code maintained and run continuously
  18. 18Functional testing
    Testing activities that verify a specific action or function of the code, usually found in requirements documentation, answering 'can the user do this?'
  19. 19Non-functional testing
    Testing aspects of software not related to specific functions, such as scalability, performance, security, or behavior under constraints
  20. 20Performance testing
    Testing executed to determine how a system performs in terms of responsiveness and stability under a particular workload
  21. 21Load testing
    Testing primarily concerned with whether the system can continue to operate under a specific load (large quantities of data or users)
  22. 22Stress testing
    Testing reliability under unexpected or rare workloads to determine the breaking point where extremes lead to unstable execution
  23. 23Alpha testing
    Simulated or actual operational testing by potential users or an independent test team at the developers' site, before beta testing
  24. 24Beta testing
    External user acceptance testing where versions (beta versions) are released to a limited audience outside the programming team
  25. 25Continuous testing
    Executing automated tests as part of the software delivery pipeline to obtain immediate feedback on business risks associated with a release candidate
  26. 26Mutation testing
    A white-box testing technique that intentionally introduces faults to gauge the efficacy of testing strategies
  27. 27API testing
    Testing of an application using public and private APIs (application programming interfaces)
  28. 28Component interface testing
    A variation of black-box testing focusing on data values passed between subsystem components, checking the handling of data beyond just related actions
  29. 29Compatibility testing
    Testing to ensure software is compatible with other application software, operating systems, or target environments different from the original
  30. 30Usability testing
    Testing to check if the user interface is easy to use and understand, requiring actual human users monitored by skilled UI designers

And 10 more cards. Study the whole deck free

Articles about this deck

More Programming decks

See all
Study all 40 cards free