Introduction to Testing

Last reviewed 13 Feb 2021 by Crispin Read

Description

A general introduction to testing for web development. We'll be looking at what different sorts of testing there are, why we test, what we test and how we test. We'll also look at how to develop a test plan and how to test websites practically, usefully and well.

Outcomes

At the end of this training you will be able to:

  1. Understand the importance of testing
  2. Understand different types of testing
  3. Create a front-end test plan

Learner Requirements

  1. Understanding of front-end web development

Outline

  1. What Testing is
  2. What Testing isn't
  3. Types of Testing
  4. Creating a Test Plan
    1. Tools
    2. Audience
    3. Scope
    4. Support levels
  5. How to report

Tasks

  1. Add testing terms to glossary
  2. Create Test plan for your blog

Further Tasks

  1. Create a test plan for something at work

Resources / Reference

  1. Slides: Intro to Testing
  2. Slides: Creating a Test Plan
  3. Template: Test Plan
  4. Ministry of Testing: What is Software testing?
  5. Software Testing Club: So What Is Testing ?
  6. Smashing Magazine: How To Create Your Own Front-End Website Testing Plan
  7. What Is Software Testing: Definition, Types, Methods, Approaches
  8. Tutorialspoint: Agile Testing
  9. Code Project: What are the different types of testing?
  10. Test Institute: Testing Roles and Responsibilities
  11. Software Testing Fundamentals: Differences Between Black Box Testing and White Box Testing

Skills, Knowledge, Behaviours and Values

Technical Skills

This workshop is designed to develop the following technical skills:

  • Testing

Core Skills

This workshop is designed to develop the following from our core skills directive

  • Estimation
  • Prioritisation
  • Presentation
  • Communication
  • Teamwork
  • Empathy

Apprenticeship Standard

This workshop will encourage the development of the following from the Software Developer Level 4 Standard

COMPETENCIES (Skills)

  • C4 - Test: can test code and analyse results to correct errors found using either V-model manual testing and/or using unit testing.
  • C5 - Problem solving: can apply structured techniques to problem solving, can debug code and can understand the structure of programmes in order to identify and resolve issues.
  • C7 - Analysis: can understand and create basic analysis artefacts, such as user cases and/or user stories.
  • C9 - Development lifecycle: can operate at all stages of the software development lifecycle, with increasing breadth and depth over time with initial focus on build and test.

BEHAVIOURS

  • B1 - Logical and creative thinking skills.
  • B2 - Analytical and problem-solving skills.
  • B3 - Ability to work independently and to take responsibility.
  • B4 - Can use own initiative.
  • B5 - A thorough and organised approach.
  • B6 - Ability to work with a range of internal and external people.
  • B7 - Ability to communicate effectively in a variety of situations.
  • B8 - Maintain productive, professional and secure working environment.

Knowledge

  • K1 - Understands and operates at all stages of the software development lifecycle.
  • K2 - Understands the similarities and differences (taking into account positives and negatives of both approaches) between agile and waterfall software development methodologies
  • K3 - Understands how teams work effectively to produce software and contributes appropriately.
  • K4 - Understands and applies software design approaches and patterns and can interpret and implement a given design, compliant with security and maintainability requirements.

Values

Themes in this session explore the following values:

  • The rule of law