2
System verification testing includes: System level functional testing of hardware and software system components Design verification planning for customer acceptance Develop ‘Requirements Trace Matrix’ to verify operation of each testable requirement Develop software test cases to exercise all testable requirements Compliance to industry standards Third party interoperability Compatibility with various hardware and operating systems such as USB and Windows Complete test summary reports Develop problem tracking database QA Testing: Comprehensive design control Traceable design verification and validation Process validation Documents, records and change control systems Risk analysis and management Application of international standards Goals of the product: Functionality Robust Performance Optimization Portability Interoperability Extensibility Scalability Size Memory Management System Management Configurability Error Handling Ease-of-Use Security Testing Considerations: Obtain requirements, functional design, and internal design specifications and other necessary documents Obtain budget and schedule requirements Determine project-related personnel and their responsibilities, reporting requirements, required standards and processes (such as release processes, change processes, etc.) Identify application's higher-risk aspects, set priorities, and determine scope and limitations of tests Determine test approaches and methods - unit, integration, functional, system, load, usability tests, etc. Determine test environment requirements (hardware, software, communications, etc.) Determine testware requirements (record/playback tools, coverage analyzers, test tracking, problem/bug tracking, etc.) Determine test input data requirements Identify tasks, those responsible for tasks, and labor requirements Set schedule estimates, timelines, milestones Determine input equivalence classes, boundary value analyses, error classes Prepare test plan document and have needed reviews/approvals Write test cases Have needed reviews/inspections/approvals of test cases Prepare test environment and testware, obtain needed user manuals/reference documents/configuration guides/installation guides, set up test tracking processes, set up logging and archiving processes, set up or obtain test input data Obtain and install software releases Perform tests Evaluate and report results Track problems/bugs and fixes Retest as needed (Iterative) Maintain and update test plans, test cases, test environment, and testware through life cycle Basic Practices: Functional Specifications Reviews and Inspections Formal Entry & Exit Criteria Functional Testing Multiplatform Testing Internal Betas – User Acceptance Testing (UAT) Automation External User Test Programs – Betas Nightly Builds Foundational Practices: User Scenarios Usability Testing In-Process ODC (Orthogonal Defect Classification) Feedback Loops Multiple Release ODC Requirement Test Planning Automated Test Generation Orthogonal Defect Classification ODC is a measurement, ability to use the defect reporting stream to provide precise measurability into the product and process. Incremental Practices Tester/Developer teams (XP) Code Coverage Automated Environment Generation Testing to Ship on Demand State Task Diagram Memory Resource Failure Simulation

Basics of Software QA Testing Notes

  • Upload
    james

  • View
    5.090

  • Download
    7

Embed Size (px)

Citation preview

Page 1: Basics of Software QA Testing Notes

System verification testing includes:

System level functional testing of hardware and software system components

Design verification planning for customer acceptance

Develop ‘Requirements Trace Matrix’ to verify operation of each testable requirement

Develop software test cases to exercise all testable requirements

Compliance to industry standards Third party interoperability Compatibility with various hardware and

operating systems such as USB and Windows

Complete test summary reports Develop problem tracking database

QA Testing:

Comprehensive design control Traceable design verification and validation Process validation Documents, records and change control

systems Risk analysis and management Application of international standards

Goals of the product:

Functionality Robust Performance Optimization Portability Interoperability Extensibility Scalability Size Memory Management System Management Configurability Error Handling Ease-of-Use Security

Testing Considerations: Obtain requirements, functional design, and

internal design specifications and other necessary documents

Obtain budget and schedule requirements Determine project-related personnel and

their responsibilities, reporting

requirements, required standards and processes (such as release processes, change processes, etc.)

Identify application's higher-risk aspects, set priorities, and determine scope and limitations of tests

Determine test approaches and methods - unit, integration, functional, system, load, usability tests, etc.

Determine test environment requirements (hardware, software, communications, etc.)

Determine testware requirements (record/playback tools, coverage analyzers, test tracking, problem/bug tracking, etc.)

Determine test input data requirements Identify tasks, those responsible for tasks,

and labor requirements Set schedule estimates, timelines,

milestones Determine input equivalence classes,

boundary value analyses, error classes Prepare test plan document and have

needed reviews/approvals Write test cases Have needed reviews/inspections/approvals

of test cases Prepare test environment and testware,

obtain needed user manuals/reference documents/configuration guides/installation guides, set up test tracking processes, set up logging and archiving processes, set up or obtain test input data

Obtain and install software releases Perform tests Evaluate and report results Track problems/bugs and fixes Retest as needed (Iterative) Maintain and update test plans, test cases,

test environment, and testware through life cycle

Basic Practices: Functional Specifications Reviews and Inspections Formal Entry & Exit Criteria Functional Testing Multiplatform Testing Internal Betas – User Acceptance Testing

(UAT) Automation External User Test Programs – Betas Nightly Builds

Foundational Practices: User Scenarios Usability Testing

In-Process ODC (Orthogonal Defect Classification) Feedback Loops

Multiple Release ODC Requirement Test PlanningAutomated Test Generation

Orthogonal Defect ClassificationODC is a measurement, ability to use the defect reporting stream to provide precise measurability into the product and process.

Incremental Practices Tester/Developer teams (XP) Code Coverage Automated Environment Generation Testing to Ship on Demand State Task Diagram Memory Resource Failure Simulation Check-in Test w/ code Benchmarks trends Regression testing minimization