CF102 Software Testing Methodology Course Outline

Lesson #1 Software Quality Assurance and Software Testing

Lecture 1

    • Software Testing as a professional discipline
    • Testing Skills and Attitude
    • Software Development Life Cycle
    • Software Quality Assurance place in Software Development Life Cycle
    • Verification Testing
    • Validation Testing
    • Limitations and Objectives of Testing
    • Ad-Hoc Testing

Assignment 1

    • Ad-hoc testing of build #1 of training application

Lesson #2 Software Quality and Categories of Software Errors

Lecture 2

    • Definition of Software Quality
    • Definition of Software Error
    • Categories of Software Errors
    • Reporting and Analyzing bugs
    • Defect Tracking System

Assignment 2

    • Regression Testing on build #2 of training application
    • Working with a defect tracking system

Lesson #3 Understanding Documentation

Lecture 3

    • Necessity of Documentation
    • Requirements Specification
    • Functional Design Specification
    • Internal Design Specification

Assignment 3

    • Regression Testing on build #3 of training application
    • Using external documentation as input for test case design

Lesson #4 Test Planning

Lecture 4

    • Test Plan
    • Traceability Matrix
    • Test Planning Lists
    • Prioritizing Test Tasks

Assignment 4

    • Regression Testing on build #4 of training application
    • Create Test Plan for training application
    • Create traceability matrix for a specific area of application

Lesson #5 The Art of Writing Test Cases

Lecture 5

    • Definition of a Test Case
    • Object-Oriented approach for Test Design
    • Equivalence Partitioning technique
    • Boundary Conditions technique
    • Decision Table technique
    • State-Transition technique

Assignment 5

    • Regression Testing on build #5 of training application
    • Write test cases for training application

Lesson #6 Test Execution

Lecture 6

    • Smoke Testing
    • Function Testing
    • Regression Testing
    • System Testing
    • Acceptance Testing
    • When testing should be stopped

Assignment 6

    • Regression Testing on build #6 of training application
    • Performing structured function testing

Lesson #7 Fundamentals of Web Applications Architecture

Lecture 7

    • Mainframe Application Architecture
    • Desktop Application Architecture
    • Client-Server Application Architecture
    • Components of Web-Based System
    • White-box Testing

Assignment 7

    • Control Flow Diagrams
    • Code Coverage Exercises

Lesson #8 Testing Web Applications

Lecture 8

    • Usability Testing
    • Compatibility Testing
    • Security Testing
    • Accessibility Testing

Assignment 8

    • Testing Web Applications

Lesson #9 Testing Mobile Applications

Lecture 9

    • Mobile Technology
    • Testing Mobile Applications – Android Devices
    • Testing Mobile Applications – iOS Devices

Assignment 9

    • Testing training application on emulators and simulators

Lesson #10 Test Management Utilities

Lecture 10

    • Overview of best test management tools on the market
    • Working with a test management tools

Assignment 10

    • Creating test plans, test suites and test cases in test management tool

Lesson #11 CF102 Summary and Final Exam

Lecture 10

    • Software Testing Life Cycle Summary

CF102 Exam