Testware Architecture

Similar documents
BSIF. A Freeware Framework for. Integrated Business Solutions Modeling. Using. Sparx Systems. Enterprise Architect

Contents. Introduction Management issues. Technical issues. Dorothy Graham. Mark Fewster.

The RASTA Framework. Joel Becker October 3, 2001

Contents. Management issues. Technical issues. Mark Fewster.

Sample Questions ISTQB Foundation Answers

Building a New Rational Web Site with Rational Suite

Main challenges for a SAS programmer stepping in SAS developer s shoes

Training & Certification Guide

Automating IT Asset Visualisation

IT123: SABSA Foundation Training

Team-Based Collaboration in Simulink

Work smarter with. at your fingertips ENTER

SOFTWARE QUALITY ASSURANCE TOOLS & TECHNOLOGY PROFESSIONAL SERVICES ACADEMY. Technical Note. License Usage. Issue 2.0

Requirements Analysis (big part of Software Engineering) defines. Audience. Purpose. Constraints (e.g. download time limits, browsers to support)

Qualification Specification

IBM Planning Analytics

In this Lecture you will Learn: Testing in Software Development Process. What is Software Testing. Static Testing vs.

9 th CA 2E/CA Plex Worldwide Developer Conference 1

(p t y) lt d. 1995/04149/07. Course List 2018

Standard Glossary of Terms used in Software Testing. Version 3.2. Advanced Test Automation - Engineer Terms

QMS ISO 9001:2015 CERTIFIED COMPANY Software Testing TRAINING.

AN ISO 9001:2008 CERTIFIED COMPANY. Software Testing TRAINING.

WEB INTERACTIVITY AND ENGAGEMENT

DevOps Foundation Certification Training Course - Brochure

Table of Contents. 1. Introduction 1. 1 Overview Business Context Glossary...3

Fundamentals of Web Design

Agile Manifesto & XP. Topics. Rapid software development. Agile methods. Chapter ) What is Agile trying to do?

Sample Question Paper. Software Testing (ETIT 414)

Open2Test Test Automation Framework for Selenium Web Driver - Introduction

Why do architects need more than TOGAF?

Switching Basics. Module Descriptor.

Maintaining & Increasing Stakeholder Confidence in IT Architecture

Business Architecture Implementation Workshop

POWER AND WATER CORPORATION POLICY MANAGEMENT OF EXTERNAL SERVICE PROVIDERS

Web Site Development with HTML/JavaScrip

Verification and Validation. Verification and validation

Network and Security Administrator 2018

Seminar report Software reuse

Test How to Succeed in Test Automation Björn Hagström & Davor Crnomat, Testway AB

Unit title: Client Side Scripting for Web Applications (SCQF level 7)

Business Analysis in Practice

How Cisco IT Improved Development Processes with a New Operating Model

OPEN SOURCE TESTING IN SAUDI ARABIA 1

Utilizing Fast Testing to Transform Java Development into an Agile, Quick Release, Low Risk Process

CSE 333 Lecture 1 - Systems programming

Why Microsoft Azure is the right choice for your Public Cloud, a Consultants view by Simon Conyard

Business Advantage Through Structured Skills Development

PREPARE FOR TAKE OFF. Accelerate your organisation s journey to the Cloud.

CS2112 Fall Assignment 4 Parsing and Fault Injection. Due: March 18, 2014 Overview draft due: March 14, 2014

SkillsManager TM. Business advantage through IT skills management

ITIL Service Lifecycle Strategy

DSDM Agile Professional Candidate Guidelines October I do it right

Ch 1: The Architecture Business Cycle

TOGAF Certified (Level 1 and 2) 9.1. Lesson Plan. This course covers all learning materials for TOGAF v9.1. Mock Exam: Duration: Language:

Minsoo Ryu. College of Information and Communications Hanyang University.

Wholistic Matters. Wakefly. HEALTH AND WELLNESS

How Manual Testers can execute Test Automation. White Papers. Muthiah Director of Testing. Expedux on How Manual Testers

TOP DEVELOPERS MINDSET. All About the 5 Things You Don t Know.

Learn Atlassian and more with the experts

Deliver robust products at reduced cost by linking model-driven software testing to quality management.

Building a Customized Test Automation Framework Using Open Source Tools

Association for International PMOs. Expert. Practitioner. Foundation PMO. Learning.

KEY PROGRAMME INFORMATION. Originating institution(s) Bournemouth University. Faculty responsible for the programme Faculty of Science and Technology

Web Applications Development

SQA Advanced Unit specification. General information for centres. Unit title: Web Development Fundamentals. Unit code: HR7M 47

to the Enterprise Brussels - Tuesday 20th April 2004 Chris Greenslade Introducing Enterprise Architecture Introducing Enterprise Architecture

Qualification Specification for the Knowledge Modules that form part of the BCS Level 4 Software Developer Apprenticeship

Data Governance Quick Start

School of Engineering & Built Environment

Final Paper/Best Practice/Tutorial Advantages OF BDD Testing

Dominic Jones. Senior UX engineer / product design / front end HELLO RESUME PORTFOLIO. Hi there

Data Scientists / Data Analysts (m/f) educational ackground university degree in data science, computer science, software engineering

Acknowledgements...xvii. Foreword...xix

Apprenticeships CYBER SECURITY ADVANCED TO TECHNICAL MODERN APPRENTICESHIP FROM NQ-LEVEL TO SKILLED SECURITY ENGINEER

Automated Testing of Tableau Dashboards

Rapid Software Testing Guide to Making Good Bug Reports

16474/08 JJ/ap 1 DGH4

ReqView Business Needs

IT Governance ISO/IEC 27001:2013 ISMS Implementation. Service description. Protect Comply Thrive

The Six Principles of BW Data Validation

Development of an automated testing tool for identifying discrepancies between model implementations

TEST AUTOMATION. Excel Global Solutions Inc. All Rights Reserved.

DESIGN HELPED A MAJOR AND HIGHER SOFTWARE CUSTOMER SUCCESS STORY ABOUT THE CLIENT

Quality Assurance & Standards

CTI Higher Certificate in Information Systems (Internet Development)

Business Process Testing

MSc Computing and Technology (Part-Time)

The ROI of UI Toolkit Standardization

Seven proven ways to ruin your Test Automation

Dataworks Development, Inc. P.O. Box 174 Mountlake Terrace, WA (425) fax (425)

Qualification Specification for the Knowledge Modules that form part of the BCS Level 3 Software Development Technician Apprenticeship

Caliber Visual Studio.NET Integration Visual Studio Integration

Cyber Security. Building and assuring defence in depth

MANAGED TALENT SOLUTIONS

Universal Model Framework -- An Introduction

SAP testing accelerators are a new trend from software testing vendors

NEW ZEALAND DIPLOMA IN WEB DEVELOPMENT AND DESIGN

Oracle Forms and Oracle APEX The Odd Couple

V-PWR Data Center Program Guide

STAFF REPORT. January 26, Audit Committee. Information Security Framework. Purpose:

Transcription:

1 Testware Architecture Tel: +44 1558 685180 Fax: +44 1558 685181 Prepared and presented by Mark Fewster Grove Consultants Llwyncynhwyra, Cwmdu Llandeilo, SA19 7EW, UK Email: mark@grove.co.uk www.grove.co.uk Testware Architecture Contents What is testware architecture? Benefits and characteristics Aspects of testware architecture How to achieve consistency

2 What is testware architecture? testware: the stuff of which tests are made! - data files, scripts, expected results, docs., etc. architecture: governs structure/arrangement - where stored and used - how grouped and referenced enterprise - company / organisation - bold undertaking! Testware examples Script (ascii) Input Data Script (binary) Client names Log Captured Screen Data Expected Screen Data Diffs Doc. Test Report Account types Client accounts Accounts Report Account details Expected Accounts Report

3 Terms - Testware artefacts Testware Test Materials Test Results Input Scripts Products By-Products Documentation Data Expected Outcome Actual Outcome Log Status Difference Report Is testware architecture important? testers work with testware - documents, data, scripts, expected results,... - run test cases, check results (repeatedly) - analyse failures, report faults (repeatedly) - write test logs, summary reports to work efficiently - easily find required artefacts - minimal effort to name, store and reference - choose correct versions and test sets first time

4 Testware Architecture Contents What is testware architecture? Benefits and characteristics Aspects of testware architecture How to achieve consistency Benefits of a single approach likely to be well thought out & documented - ad hoc approaches have serious limitations shorter learning curve - for new people, for inter-project transfers more reuse of testware - between projects and products better use of automation - automating more testing tasks, e.g. housework economies of scale

5 Achieving good testware architecture good for what? - testware architecture must support the objectives of testing confidence support regression testing go back to old versions of testware target faults support selective testing enable individual testers to use different subsets of tests efficiency maximise test coverage or thoroughness within resource Objectives for testware architecture durable testware - needs minimal maintenance reusable testware - can be re-used in different environments/projects - flexible, encouraging re-use reduce testing costs - increase efficiency (easy to access and work with) increase effectiveness - target faults, flexibility, traceability

6 Testware Architecture Contents What is testware architecture? Benefits and characteristics Aspects of testware architecture How to achieve consistency Aspects of testware architecture testware structure in-house tool support (utilities) commercial tool support configuration management (impact, interface) procedures and standards test definition others?

7 Testware structure issues - scale, re-use/sharing, multiple version, platform and environment independence logical structure - library, test suites, testware sets physical structure - folder/directory hierarchy - file grouping - naming conventions Test materials logical structure Baseline Test Suite Configuration Items Script Set Test Set Data Set Utility Set Testware Artefacts Scripts Input Documentation Expected Outcome Data Utilities

8 Example Test Suite Enhancement Test Suite d_scribbletypical v2 d_scribblevolume s_scribbledocument v3 t_scribblebreadth t_scribblecheck t_scribbleformat t_scribblelist v3 t_scribbleprint t_scribblesave t_scribbletextedit v2 u_generalcompare Testware Library d_scribbletypical d_scribbletypical d_scribblevolume s_logging s_scribbledocument s_scribbledocument s_scribbledocument s_scribblenavigate t_scribblebreadth t_scribblecheck t_scribbleformat t_scribblelist t_scribblelist t_scribblelist t_scribbleprint t_scribblesave t_scribbletextedit t_scribbletextedit u_scribblefilters u_generalcompare v2 v2 v3 v2 v3 v2 In-house tool support typically small and very task specific - assume knowledge of testware structure - a few hours work to develop - command files or Perl, Python, JavaScript, etc. - examples audit, search/traceability, house-work, comparison Toolsmith specific role - has programming skills works with testers to identify new opportunities

9 Commercial tool support can be a significant undertaking - not too soon: get basic structure in place first - separate projects: selection and implementation don t short-cut these variety of tool types - execution automation most challenging - lots of other opportunities e.g. requirements analysis, static analysis, coverage measurement, test management Configuration management (CM) all testware must be under CM - no buts, no maybes, no excuses interface with CM should satisfy both sides - additional tool support may be necessary to bridge differences (typically in-house tools) principles - must help, not hinder - ideally CM invisible to testers

10 Testware library and CM Testware library = CM? - obvious place for configuration management - multiple versions - control access (at least prevent overwriting) Test suite CM? - unnecessary control - tester s s own domain - single version Procedures and standards applicable to all other aspects - fundamental to long term success - essential (not merely a nice to have ) prepare for rapid up-take - once benefits become apparent, improvements will sell themselves standardise form and style of documents - printed, on-line, HTML, etc.

11 Procedures and standards how to - add new tests, find existing ones - notify changes - impact analysis for proposed software changes naming conventions - for scripts, tests, data files, etc. information - guidelines to regime Test definition self contained description of each test case - test case specification purpose, test conditions inputs, test data (prerequisites), expected results environment information (e.g. file X must exist) - test procedure specification procedural execution instructions also may include - test planning, test design, execution preparation information, test logs

12 Test definition purpose to define test cases! - a single and complete source of information - can be any form text file, spreadsheet, database, other must be easy to work with (perhaps with tools) consistent layout/content - permits tools to access the information - increasing efficiency A test case Information Test input and instructions Prerequisites Expected results Actual results Artefact Test procedure Database Database data Test file Text file Database report Text file Database report Location d:\u\mark\testing\myapptests.doc c:\program files\myapp\database f:\myapp\envs\multi6.dat d:\u\mark\testing\test3.dat d:\u\mark\testing\exp\clients.dat d:\u\mark\testing\exp\report3.txt d:\u\mark\testing\clients.dat d:\u\mark\testing\db_report.txt

13 Example (partial) test definition ; TESTNAME: Save03 ; PURPOSE: Exercise save options. Name and purpose ; TEST MATERIALS SCRIPT Save.scp DATA EditMe.dcm DATA NoRead.dcm DATA d_scribbletypical\data\countries.dcm Test materials: required before start of test execution ; PRE-PROCESSING CopyFile EditMe.dcm CopyFile NoRead.dcm CopyFile d_scribbletypical\data\countries.dcm House work tasks to be completed before execution ; POST-PROCESSING DeleteFile NoRead.dcm ; TEST RESULTS SCRIB_NOCMP Countries.dcm SCRIB_DOC EditMe.dcm House work tasks to be completed after execution Actual and expected results and how they are to be compared Testware Architecture Contents What is testware architecture? Benefits and characteristics Aspects of testware architecture How to achieve consistency

14 Way forward main obstacle is the effort involved - ideally, everyone working with testware would spend a proportion of their time in developing a common testware architecture - this is likely to be chaotic! small, dedicated team - working in parallel with testers - providing the effort to analyse, build and sell - for small organisations, a team of one? Resources typical roles within the team - Testware Architect has overall view & vision of common architecture - Toolsmith experience programmer/analyst - Test Expert having good understanding of the testing undertaken across different areas people skills will also be important

15 Objectives of team to facilitate testers to test better by - providing a more effective environment - that is consistent across all project test teams - and is applicable, flexible, and extensible not to perform or automate tests - except as a means of furthering true objectives will have to sell the benefits of each change - persuade people to change working practices - demonstrate value to them Testware Architecture Summary Testware is the stuff of testing - architecture is getting organised to do the job Significant benefits can be achieved - requires a well thought out organisation Testware architecture as many facets - artefact placement, tool support, procedures, CM & TD Achieving consistency - a separate responsibility but with collective co-operation operation