Scripting Techniques Models and Analysis of Software Lecture 10 Copyright, 2003  Jerzy.

Slides:



Advertisements
Similar presentations
Extreme Programming Copyright, 1999 © Jerzy R. Nawrocki Personal Software Process Lecture.
Advertisements

The Baseline Personal Process Copyright, 1999 © Jerzy R. Nawrocki Jerzy Nawrocki Personal Software Process Lecture 3.
Procedures for CMM Level 2 Copyright, 2000 © Jerzy R. Nawrocki Quality Management.
Test Automation An Approach to Automated Software Regression Testing Presented by Adnet, Inc Feb 2015.
Automation Testing Presentation Phil Hunter Phil Hunter - Automation Presentation 1.
Programming Types of Testing.
RequisitePro (1) Copyright, 2001 © Jerzy R. Nawrocki Quality Management Lecture.
Sparse Matrix Storage Lecture #3 EEE 574 Dr. Dan Tylavsky.
Quality Assurance Copyright, 2002 © Jerzy R. Nawrocki Quality Management Auxiliary.
Copyright © 2006 Pearson Addison-Wesley. All rights reserved. Appendix B International Annual Time Series Data for Selected Countries: 1960– 2004.
Introduction to ISO 9001:2000 Copyright, 2002 © Jerzy R. Nawrocki Quality Management.
BPC.1 Basic Programming Concepts
“GENERIC SCRIPT” Everything can be automated, even automation process itself. “GENERIC SCRIPT” Everything can be automated, even automation process itself.
Bug Session Two. Session description In this session the use of algorithms is reinforced to help pupils plan out what they will need to program on their.
Adding Automated Functionality to Office Applications.
© 2006, Cognizant Technology Solutions. All Rights Reserved. The information contained herein is subject to change without notice. Automation – How to.
Capture-Replay and Test Automation Models and Analysis of Software Lecture 9 Copyright,
Introduction to Test Automation Models and Analysis of Software Lecture 8 Copyright,
© 2004 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice Automation Fundamental Concepts &
Automation Testing- QTP Rajesh Charles Batch No: Date: jan
V Avon High School Tech Club Agenda Old Business –Delete Files New Business –Week 16 Topics: Intro to HTML/CSS –Questions? Tech Club Forums.
RequisitePro (2) Copyright, 2001 © Jerzy R. Nawrocki Requirements Engineering.
This material is approved for public release. Distribution is limited by the Software Engineering Institute to attendees. Sponsored by the U.S. Department.
Rational Suite and CMM Level 2 Copyright, 2000 © Jerzy R. Nawrocki Requirements.
Requirements specification Copyright, 2001 © Jerzy R. Nawrocki Quality Management.
Higher Grade Computing Studies 2. Languages and Environments Higher Computing Software Development S. McCrossan 1 Classification of Languages 1. Procedural.
PMS /134/182 HEX 0886B6 PMS /39/80 HEX 5E2750 PMS /168/180 HEX 00A8B4 PMS /190/40 HEX 66CC33 By Adrian Gardener Date 9 July 2012.
Implications of Information Technology for the Audit Process
Winrunner Usage - Best Practices S.A.Christopher.
Standard SRS Copyright, 2001 © Jerzy R. Nawrocki Requirements Engineering Lecture.
Just as there are many human languages, there are many computer programming languages that can be used to develop software. Some are named after people,
Introduction to Rational Robot Copyright, 2001 © Jerzy R. Nawrocki Quality Management.
CMM Level 2: Repeatable Copyright, 2000 © Jerzy R. Nawrocki Quality Management.
Acceptance Testing (1) Copyright, 2006  Jerzy R. Nawrocki Requirements Engineering.
CPS120 Introduction to Computer Programming The Programming Process.
Automated Comparison Models and Analysis of Software Lecture 12 Copyright, 2003  Jerzy.
Acceptance Testing Copyright, 2004  Jerzy R. Nawrocki Requirements Engineering &
Implementing XP at PUT Copyright, 2000 © Jerzy R. Nawrocki Quality Management.
Introduction to SoDA Copyright, 2001 © Jerzy R. Nawrocki Requirements Engineering.
I Power Higher Computing Software Development Development Languages and Environments.
The Software Development Process
You Need an Interpreter!. Closing the GAP Thus far, we’ve been struggling to speak to computers in “their” language, maybe its time we spoke to them in.
CS5103 Software Engineering Lecture 02 More on Software Process Models.
The Use of “Virtual Field Trips” in the Electronic Classroom by D. E. Longer & Randy Gottfried.
Requirements Specification Copyright, 2001 © Jerzy R. Nawrocki Requirements Engineering.
Configuration Management at CMM Level 2 Copyright, 2000 © Jerzy R. Nawrocki Requirements.
Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 5: Looping.
DiscussionsDiscussions Copyright, 2001 © Jerzy R. Nawrocki Requirements Engineering.
Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Programming Logic & Design Second Edition by Tony Gaddis.
Introduction to Quality Management Copyright, 2000 © Jerzy R. Nawrocki Quality.
Quick Test Professional 9.2. Testing Process Preparing to Record Recording Enhancing a Test Debugging Running the Test and Analyzing the Results Reporting.
Quality Assurance at CMM Level 2 Copyright, 2000 © Jerzy R. Nawrocki Requirements.
Perfecto Mobile Automation
Introduction to SoDA Copyright, 2001 © Jerzy R. Nawrocki Quality Management Lecture.
Requirements Management and Changes Copyright, 2003 © Jerzy R. Nawrocki Requirements.
Introduction to Scratch We will be using the Scratch Environment today, so please log in to the Scratch website (scratch.mit.edu)
Principles of Demonstrative Instructional Video Peyton R. Glore Assistant Professor School of Information Technology Macon State College October 17, 2007.
Software Development – Topic 2 Types of Programming Language.
Automation Testing- QTP Rajesh Charles Batch No: Date: jan
Requirements Engineering Lecture 4
Requirements Engineering Lecture 2
Introduction to PRINCE 2
Chapter 5: Looping Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley.
Course Name: QTP Trainer: Laxmi Duration: 25 Hrs Session: Daily 1 Hr.
Requirements Engineering Lecture 2
CPS120: Introduction to Computer Science
Automation Of Software Test
Requirements Engineering Lecture 6
Scratch 7B IT 1.
Presentation transcript:

Scripting Techniques Models and Analysis of Software Lecture 10 Copyright, 2003  Jerzy R. Nawrocki

Plan wystąpienia Linear scripts Structured scripting Shared scripts Data-driven scripts Keyword-driven scripts

Linear scripts Linear script = A script obtained by recording a test case performed manually. Rational Robot & SQABasic User actions & result comparison 10’ manual test = 20’ – 120’ to automate (comparisons)

Linear scripts - Advantages No upfront work or planning. Quick starting. An audit trail of what was actually done. Programming skills not required. Good for demonstrations.

Linear scripts - Disadvantages Labor-intensive process (2-10 longer than manual testing. Low reusability and evolvability (‘from scratch’ each time). Low robustness (unexpected events).

Plan wystąpienia Linear scripts Structured scripting Shared scripts Data-driven scripts Keyword-driven scripts

Structured scripting Structured script = A script with structured programming instructions. Sequence, selection (if), iteration (for) SQABasic If Message = ‘Replace existing file?’ LeftMouseClick ‘Yes’

Structured scripts – Advantages and Disadvantages + More robust scripts (unexpected events under control). + Repeated things can be shortened with a loop statement. - More compicated (resemble programs and need debugging).

Plan wystąpienia Linear scripts Structured scripting Shared scripts Data-driven scripts Keyword-driven scripts

Shared scripts Shared script = A script used (shared) by more than one test case. SQABasic Call ScribbleOpen (‘countries’) FocusOn ‘Scribble’ SelectOption ‘List/Add Item’... Call ScribbleSaveAs (‘countries2’)

Plan wystąpienia Linear scripts Structured scripting Shared scripts Data-driven scripts Keyword-driven scripts

Data-driven scripts Data-driven scripting = Test inputs stored in a separate (data) file. countries, Sweden, USA, countries2 countries, France, Germany, test2 countries, Austria, Italy, test3

Data-driven scripts Data-driven scripting = Test inputs stored in a separate (data) file. OpenFile ‘ScribbleData’ For each record in ScribbleData Read INPUTFILE Read NAME1 Read NAME2 Read OUTPUTFILE Call ScribbleOpen (INPUTFILE) FocusOn ‘Scribble’ SelectOption ‘List/Add Item’ FocusOn ‘Add Item’ Type NAME1 LeftMouseClick ‘OK’... EndFor countries, Sweden, USA, countries2 countries, France, Germany, test2 countries, Austria, Italy, test3 ScribbleData Control script

A more sofisticated data-driven script OpenFile ‘ScribbleData’ Read INPUTFILE Call ScribbleOpen (INPUTFILE) Go to next record (ie row) For each record in ScribbleData Read ADDNAME If ADDNAME <> Blank Then { FocusOn ‘Scribble’ SelectOption ‘List/Add Item’ FocusOn ‘Add Item’ Type ADDNAME LeftMouseClick ‘OK} Read MOVEFROM Read MOVETO... EndFor ScribbleData countries Sweden USA 41 Norway 2 7 countries2 Control script

Data-driven scripts               Software under test Key automated regression test cases Additional automated regression test cases

Plan wystąpienia Linear scripts Structured scripting Shared scripts Data-driven scripts Keyword-driven scripts

Keyword-driven script = A data-driven scripts augmented with keywords representing user actions. SQABasic??? ScribbleOpen countries AddToList Sweden USA SaveAs countries2 For each TEST_ID OpenFile TEST_ID For each record in test file Read KEYWORD Call KEYWORD EndFor CloseFile TEST_ID EndFor Test file Control script ScribbleOpen... AddToList... SaveAs... Supporting scripts

Summary Most important: Keyword-driven scripting. Most important: Keyword-driven scripting. Self-documenting scripts Self-documenting scripts Script pre-processing: Script pre-processing: Beautifier Beautifier Static analysis Static analysis General substitution General substitution

Bibliography M. Fewster, D. Graham, Software Test Automation, Addison-Wesley, Harlow, M. Fewster, D. Graham, Software Test Automation, Addison-Wesley, Harlow, 1999.

Questions?

Quality assessment 1. What is your general impression? (1 - 6) 2. Was it too slow or too fast? 3. What important did you learn during the lecture? 4. What to improve and how?