[Handout for L9P1] Quality Assurance: Testing and Beyond

Size: px
Start display at page:

Download "[Handout for L9P1] Quality Assurance: Testing and Beyond"

Transcription

1 CS0/-Aug0 [Handout for L9P] Quality Assurance: esting and Beyond Quality assurance (QA) is the process of ensuring that the software we build has the required quality levels. Quality Assurance = Validation + Verification QA involves checking of two aspects: a) Have we built the right system? i.e., Are the requirements correct? his is called validation. b) Have we built the system right? i.e., Have we implemented the requirements correctly? his is called verification. Whether something belongs under validation or verification is not that important. What is more important is we do both, instead of limiting to verification (i.e., remember that the requirements can be wrong too). In this handout, we first discuss testing the product as a whole, as opposed to developer testing that is performed on a partial system. esting is the most common way of assuring quality, however there are other complementary techniques such as formal verification. he second part of the handout gives a brief introduction to such QA techniques. Product testing System testing When we take a whole system instead of a part of the system and test it against the system specification, it is called system testing. System testing is typically done by a testing team (also called a QA team). We base the system test cases exclusively on the specified external behavior of the system. Sometimes, system tests go beyond the bounds defined in the specification. his is useful if we want to test whether the system fails gracefully when pushed beyond its limits. or example, let us assume the software under test (SU) is a browser and it should be able to handle web pages containing up to 5000 characters. One of our test cases can try to load a web page containing more than 5000 characters. he expected graceful behavior can be abort the loading of the page and show a meaningful error message. We can consider this test case as failed if the browser attempted to load the large file anyway and crashed. Note that system testing includes testing against non-functional requirements too. Here are some examples: Performance testing - to ensure the system responds quickly. Load testing (also called stress testing or scalability testing) - to ensure the system can work under heavy load. Security testing to test how secure is the system. Compatibility testing, interoperability testing to check whether the system can work with other systems. Usability testing to test how easy it is to use the system. Portability testing to test whether the system works on different platforms. 50

2 GUI CS0/-Aug0 Acceptance testing Acceptance testing, also called User Acceptance esting (UA), is a validation type testing carried out to show that the delivered system meets the requirements of the customer. his too, similar to the System testing, uses the whole system, but the testing is done against the requirements specification, not against the system specification. Note the two specifications need not be necessarily same. or example, requirements specification could be limited to how the system behaves in normal working conditions while the system specification can also include details on how it will fail gracefully when pushed beyond limits, how to recover, additional APIs not available for users (for the use of developers/testers), etc. Acceptance testing comes after system testing. It is usually done by a team that represents the customer, and it is usually done on the deployment site or on a close simulation of the deployment site. UA test cases are often defined at the beginning of the project, usually based on the use case specification. Successful completion of UA is often a prerequisite to the project signoff. Acceptance tests gives an assurance to the customer that system does what it is intended to do. Besides, acceptance testing is important because a system could work perfectly on the development environment, but fail in the deployment environment due to subtle differences between the two environments. Alpha and Beta testing Alpha testing is performed by the users, under controlled conditions set by the software development team. Beta testing is performed by a selected subset of target users of the system in their natural work setting. An open beta release is the release of not-yet-production-qualitybut-almost-there software to the general population. or example, Google s Gmail was in beta for years before the label was finally removed. GUI testing If a software product has a GUI, all product-level testing (i.e. the types of testing mentioned above) need to be done using the GUI. However, GUI testing is much harder than CLI (command line interface) testing or API testing, for the following reasons: Manual testing Automated API tester Most GUIs contain a large number of different operations, many of which can be performed in any order. GUI operations are more difficult to automate than API testing. Reliably automating GUI operations and automatically verifying whether the GUI behaved as expected is harder than calling an operation and comparing its return value with an expected value. herefore, automated regression testing of GUIs is rather difficult. However, there are testing tools that can automate GUI testing. or example, Selenium ( can be used to automate testing of Web application UIs while certain editions for VisualStudio supports record replay type GUI test automation. he appearance of a GUI (and sometimes even behaviour) can be different across platforms and even environments. or example, a GUI can behave differently based on whether it is minimized or maximized, in focus or out of focus, and in a high resolution display or a low resolution display. Logic One approach to overcome the challenge of testing GUIs is to minimize logic aspects in the GUI. hen, we bypass the GUI to test the rest of the system using automated API testing. While this still requires the GUI to be tested manually, we can reduce the number of such manual test cases because most of the 5

3 CS0/-Aug0 system has already been tested using automated API testing. est coverage In the context of testing, coverage is a metric used to measure the extent to which testing exercises the code. Here are some examples of different coverage criteria: unction/method coverage measures the coverage in terms of functions executed e.g. testing executed 90 out of 00 functions. Statement coverage measures coverage in terms of the number of line of code executed e.g. testing executed k out of 5k LOC. Decision/branch coverage measures coverage in terms of decision points e.g. an if statement evaluated to both true and false. Condition coverage measures coverage in terms of boolean sub-expressions evaluated both to true and false. Condition coverage is not the same as the decision coverage; e.g. if(x> && x<) is considered one decision point but two conditions. or 00% branch or decision coverage, we will need test cases: (x> && x<) == true : [ e.g. x = ] (x> && x<) == false : [ e.g. x = 00] or 00% condition coverage, we will need test cases (x>) == true, (x<) == true : [e.g. x = ] (x<) == false : [ e.g. x = 00] (x>) == false : [ e.g. x = 0] Path coverage measures coverage in terms of possible paths through a given part of the code executed. 00% path coverage means all possible paths have been executed. A commonly used notation for path analysis is called Control low Graphs (CG). If you are not familiar with CGs, the side-note below introduces you to CGs. Entry/exit coverage measures coverage in terms of possible calls to and exits from the operations in the SU. Measuring coverage is often done using coverage analysis tools. We can use coverage measurements to improve E&E of our testing. or example, if a set of test cases does not achieve 00% branch coverage, we need to add more test cases to cover missed branches. [Side-Note] Control low Graphs (CG) CG is a graphical representation of the execution paths of a code fragment. A CG consists of: Nodes: Each node represents one or more sequential statements with no branches Directed Edges: Each edge represents a branch, a possible execution path Given below is the CG notation : A set of sequential statements (without any branches) is represented as a single node. E.g. x=; //node y=; //node z=x+y; //node print (z); //node 5

4 CS0/-Aug0 Conditional statements: E.g. if (x < 0) then //node z = x + y; //node else z = x y; //node z = z + ; //node Loops: E.g. x++; //node 0 while (x < 0) { //node 0 z = x+ y; //node x++; //node resetx(); //node Multi-way branching: E.g. x++; //node 0 switch (x){ //node case 0: z = x; break; //node case : case : 0 Note how the same edge represents both case and case. 5 z = y; break; //node default: z = x-y; //node z = x+y ; //node 5 he figure below shows the complete CG for the min function given below. void min(int[] A){ int min = A[0]; //node int i = ; //node int n = A.length; //node while (i < n){ //node if (A[i] < min) //node min = A[i]; //node 6 5 i++; //node 5 print(min); //node 6 5

5 CS0/-Aug0 It is recommended to have exactly one entry edge and exactly one exit edge for each CG. Sometimes we have to add a logical node (i.e. a node that does not represent an actual program statement) to enforce exactly one exit edge rule. Node 5 in the figure below is a logical node. void foo(){ int min = A[0]; //node if (A[i] < min) //node min = A[i]; //node else i++; //node 5 A path is a series of nodes that can be traversed from the entry edge to the exit edge in the direction of the edges that link them. or example, ---5 in the above CG is a path. Other QA techniques here are many QA techniques that do not involve executing the SU. Given next are some such techniques that can complement the testing techniques we have discussed so far. Inspections & reviews Inspections involve a group of people systematically examining a project artefact to discover defects. Members of the inspection team play various roles during the process, such as the author - the creator of the artefact, the moderator - the planner and executer of the inspection meeting, the secretary - the recorder of the findings of the inspection, and the inspector/reviewer - the one who inspects/reviews the artefact. All participants are expected to have adequate prior knowledge of the artefact inspected. An inspection often requires more than one meeting. or example, the first meeting is called to brief participants about the artefact to be inspected. he second meeting is called once the participants have studied the artefact. his is when the actual inspection is carried out. A third meeting could be called to re-inspect the artefact after the defects discovered as an outcome of the inspection are fixed. An advantage of inspections is that it can detect functionality defects as well as other problems such as coding standard violations. urthermore, inspections can verify non-code artefacts and incomplete code, and do not require test drivers or stubs. A disadvantage is that an inspection is a manual process and therefore, error prone. ormal verification ormal verification uses mathematical techniques to prove the correctness of a program. An advantage of this technique over testing is that it can prove the absence of errors. However, one of the disadvantages is that it only proves the compliance with the specification, but not the actual utility of the software. Another disadvantage is that it requires highly specialized notations and knowledge which makes it an expensive technique to administer. herefore, formal verifications are more commonly used in safety-critical software such as flight control systems. 5

6 CS0/-Aug0 Static analyzers hese are tools that automatically analyze the code to find anomalies such as unused variables and unhandled exceptions. Detection of anomalies helps in improving the code quality. Most modern IDEs come with some inbuilt static analysis capabilities. or example, an IDE will highlight unused variables as you type the code into the editor. Higher-end static analyzers can check for more complex (and sometimes user-defined) anomalies, such as overwriting a variable before its current value is used. ---End of Document--- 55

Software Testing Interview Questions

Software Testing Interview Questions Software Testing Interview Questions 1. What s the Software Testing? A set of activities conducted with the intent of finding errors in software. 2.What is Acceptance Testing? Testing conducted to enable

More information

APPROACHES TO SOFTWARE TESTING PROGRAM VERIFICATION AND VALIDATION

APPROACHES TO SOFTWARE TESTING PROGRAM VERIFICATION AND VALIDATION 1 APPROACHES TO SOFTWARE TESTING PROGRAM VERIFICATION AND VALIDATION Validation: Are we building the right product? Does program meet expectations of user? Verification: Are we building the product right?

More information

Module 10. Coding and Testing. Version 2 CSE IIT, Kharagpur

Module 10. Coding and Testing. Version 2 CSE IIT, Kharagpur Module 10 Coding and Testing Lesson 26 Debugging, Integration and System Testing Specific Instructional Objectives At the end of this lesson the student would be able to: Explain why debugging is needed.

More information

Software Testing. Quality & Testing. Software Testing

Software Testing. Quality & Testing. Software Testing Software Testing Software Testing Error: mistake made by the programmer/developer Fault: a incorrect piece of code/document (i.e., bug) Failure: result of a fault Goal of software testing: Cause failures

More information

Chapter 8 Software Testing

Chapter 8 Software Testing Chapter 8 Software Testing Summary 1 Topics covered Development testing Test-driven development Release testing User testing 2 Program testing Testing is intended to show that a program does what it is

More information

Software Testing. Definition: Testing is a process of executing a program with data, with the sole intention of finding errors in the program.

Software Testing. Definition: Testing is a process of executing a program with data, with the sole intention of finding errors in the program. Software Testing Definition: Testing is a process of executing a program with data, with the sole intention of finding errors in the program. Testing can only reveal the presence of errors and not the

More information

Software testing. Objectives

Software testing. Objectives Software testing cmsc435-1 Objectives To discuss the distinctions between validation testing and defect testing To describe the principles of system and component testing To describe strategies for generating

More information

Software Testing & Analysis (F22ST3): Static Analysis Techniques 2. Andrew Ireland

Software Testing & Analysis (F22ST3): Static Analysis Techniques 2. Andrew Ireland Software Testing & Analysis (F22ST3) Static Analysis Techniques Andrew Ireland School of Mathematical and Computer Science Heriot-Watt University Edinburgh Software Testing & Analysis (F22ST3): Static

More information

Introduction to Software Testing Chapter 8.1 Building Testing Tools Instrumentation. Chapter 8 Outline

Introduction to Software Testing Chapter 8.1 Building Testing Tools Instrumentation. Chapter 8 Outline Introduction to Software Testing Chapter 8. Building Testing Tools Instrumentation Paul Ammann & Jeff Offutt www.introsoftwaretesting.com Chapter 8 Outline. Instrumentation for Graph and Logical Expression

More information

Formal Software Testing. Terri Grenda, CSTE IV&V Testing Solutions, LLC www.ivvts.com

Formal Software Testing. Terri Grenda, CSTE IV&V Testing Solutions, LLC www.ivvts.com Formal Software Testing Terri Grenda, CSTE IV&V Testing Solutions, LLC www.ivvts.com Scope of Testing Find defects early Remove defects prior to production Identify Risks Unbiased opinion When Should Testing

More information

Presentation: 1.1 Introduction to Software Testing

Presentation: 1.1 Introduction to Software Testing Software Testing M1: Introduction to Software Testing 1.1 What is Software Testing? 1.2 Need for Software Testing 1.3 Testing Fundamentals M2: Introduction to Testing Techniques 2.1 Static Testing 2.2

More information

Standard for Software Component Testing

Standard for Software Component Testing Standard for Software Component Testing Working Draft 3.4 Date: 27 April 2001 produced by the British Computer Society Specialist Interest Group in Software Testing (BCS SIGIST) Copyright Notice This document

More information

Smarter Balanced Assessment Consortium. Recommendation

Smarter Balanced Assessment Consortium. Recommendation Smarter Balanced Assessment Consortium Recommendation Smarter Balanced Quality Assurance Approach Recommendation for the Smarter Balanced Assessment Consortium 20 July 2012 Summary When this document was

More information

SOFTWARE REQUIREMENTS

SOFTWARE REQUIREMENTS SOFTWARE REQUIREMENTS http://www.tutorialspoint.com/software_engineering/software_requirements.htm Copyright tutorialspoint.com The software requirements are description of features and functionalities

More information

Oracle Insurance Policy Administration System Quality Assurance Testing Methodology. An Oracle White Paper August 2008

Oracle Insurance Policy Administration System Quality Assurance Testing Methodology. An Oracle White Paper August 2008 Oracle Insurance Policy Administration System Quality Assurance Testing Methodology An Oracle White Paper August 2008 Oracle Insurance Policy Administration System Quality Assurance Testing Methodology

More information

Improved Software Testing Using McCabe IQ Coverage Analysis

Improved Software Testing Using McCabe IQ Coverage Analysis White Paper Table of Contents Introduction...1 What is Coverage Analysis?...2 The McCabe IQ Approach to Coverage Analysis...3 The Importance of Coverage Analysis...4 Where Coverage Analysis Fits into your

More information

Latest Trends in Testing. Ajay K Chhokra

Latest Trends in Testing. Ajay K Chhokra Latest Trends in Testing Ajay K Chhokra Introduction Software Testing is the last phase in software development lifecycle which has high impact on the quality of the final product delivered to the customer.

More information

Chapter 5. Regression Testing of Web-Components

Chapter 5. Regression Testing of Web-Components Chapter 5 Regression Testing of Web-Components With emergence of services and information over the internet and intranet, Web sites have become complex. Web components and their underlying parts are evolving

More information

An Automated Testing Tool Using UI Structure

An Automated Testing Tool Using UI Structure , March 12-14, 2014, Hong Kong An Automated Testing Tool Using UI Structure Nutharat Harnvorawong, Taratip Suwannasart, Member, IAENG Abstract Testers usually run a new version of software against existing

More information

SECTION 4 TESTING & QUALITY CONTROL

SECTION 4 TESTING & QUALITY CONTROL Page 1 SECTION 4 TESTING & QUALITY CONTROL TESTING METHODOLOGY & THE TESTING LIFECYCLE The stages of the Testing Life Cycle are: Requirements Analysis, Planning, Test Case Development, Test Environment

More information

Techniques and Tools for Rich Internet Applications Testing

Techniques and Tools for Rich Internet Applications Testing Techniques and Tools for Rich Internet Applications Testing Domenico Amalfitano Anna Rita Fasolino Porfirio Tramontana Dipartimento di Informatica e Sistemistica University of Naples Federico II, Italy

More information

Levels of Software Testing. Functional Testing

Levels of Software Testing. Functional Testing Levels of Software Testing There are different levels during the process of Testing. In this chapter a brief description is provided about these levels. Levels of testing include the different methodologies

More information

Software Testing Tutorial

Software Testing Tutorial Software Testing Tutorial SOFTWARE TESTING TUTORIAL Simply Easy Learning by tutorialspoint.com tutorialspoint.com i C O P Y R I G H T & D I S C L A I M E R N O T I C E All the content and graphics on this

More information

Testing Introduction. IEEE Definitions

Testing Introduction. IEEE Definitions Testing Introduction IEEE Definitions Software testing is the process of analyzing a software item to detect the differences between existing and required conditions (that is, bugs) and to evaluate the

More information

Developers and the Software Supply Chain. Andy Chou, PhD Chief Technology Officer Coverity, Inc.

Developers and the Software Supply Chain. Andy Chou, PhD Chief Technology Officer Coverity, Inc. Developers and the Software Supply Chain Andy Chou, PhD Chief Technology Officer Coverity, Inc. About Andy CTO at Coverity since 2010 Co-founder at Coverity, 2003 From five guys in a garage to 280 employees

More information

DIFFERENT PRAGMATIC APPROACHES OF TESTING THE CLOUD APPLICATION USING SIMULATORS/EMULATORS

DIFFERENT PRAGMATIC APPROACHES OF TESTING THE CLOUD APPLICATION USING SIMULATORS/EMULATORS DIFFERENT PRAGMATIC APPROACHES OF TESTING THE CLOUD APPLICATION USING SIMULATORS/EMULATORS Ms. Vaishali Jawale Assistant Professor ASM s Institute of Computer Studies Pimpri - Pune, Abstract: Computer

More information

ISTQB Advanced Level. Certification Exam. Self Study E-Book

ISTQB Advanced Level. Certification Exam. Self Study E-Book ISTQB Advanced Level Certification Exam Self Study E-Book Chapter Chapter Title Page No. 1 Testing during the Lifecycle 3 2 Test Process Generic Test Process Test Planning Test Specification 13 Test Execution

More information

STUDY AND ANALYSIS OF AUTOMATION TESTING TECHNIQUES

STUDY AND ANALYSIS OF AUTOMATION TESTING TECHNIQUES Volume 3, No. 12, December 2012 Journal of Global Research in Computer Science RESEARCH PAPER Available Online at www.jgrcs.info STUDY AND ANALYSIS OF AUTOMATION TESTING TECHNIQUES Vishawjyoti * and Sachin

More information

Adaptive Automated GUI Testing Producing Test Frameworks to Withstand Change

Adaptive Automated GUI Testing Producing Test Frameworks to Withstand Change Adaptive Automated GUI Testing Producing Test Frameworks to Withstand Change Abstract Although QA and Development managers may see many challenges in creating an automated GUI testing framework, it is

More information

An Introduction to. Metrics. used during. Software Development

An Introduction to. Metrics. used during. Software Development An Introduction to Metrics used during Software Development Life Cycle www.softwaretestinggenius.com Page 1 of 10 Define the Metric Objectives You can t control what you can t measure. This is a quote

More information

Automation using Selenium

Automation using Selenium Table of Contents 1. A view on Automation Testing... 3 2. Automation Testing Tools... 3 2.1 Licensed Tools... 3 2.1.1 Market Growth & Productivity... 4 2.1.2 Current Scenario... 4 2.2 Open Source Tools...

More information

How to Choose Right Mobile Development Platform BROWSER, HYBRID, OR NATIVE

How to Choose Right Mobile Development Platform BROWSER, HYBRID, OR NATIVE How to Choose Right Mobile Development Platform BROWSER, HYBRID, OR NATIVE Solutions Introduction: Enterprises around the globe are mobilizing mission-critical services. Businesses get streamlined due

More information

14 Model Validation and Verification

14 Model Validation and Verification 14 Model Validation and Verification 14.1 Introduction Whatever modelling paradigm or solution technique is being used, the performance measures extracted from a model will only have some bearing on the

More information

Tonight s Speaker. Life of a Tester at Microsoft Urvashi Tyagi Software Test Manager, Microsoft

Tonight s Speaker. Life of a Tester at Microsoft Urvashi Tyagi Software Test Manager, Microsoft Tonight s Speaker Life of a Tester at Microsoft Urvashi Tyagi Software Test Manager, Microsoft You will learn about what a software tester does at Microsoft, how the role interfaces with program managers

More information

Basic Testing Concepts and Terminology

Basic Testing Concepts and Terminology T-76.5613 Software Testing and Quality Assurance Lecture 2, 13.9.2006 Basic Testing Concepts and Terminology Juha Itkonen SoberIT Contents Realities and principles of Testing terminology and basic concepts

More information

Quality Assurance - Karthik

Quality Assurance - Karthik Prevention is better than cure Quality Assurance - Karthik This maxim perfectly explains the difference between quality assurance and quality control. Quality Assurance is a set of processes that needs

More information

ISTQB Certified Tester. Foundation Level. Sample Exam 1

ISTQB Certified Tester. Foundation Level. Sample Exam 1 ISTQB Certified Tester Foundation Level Version 2015 American Copyright Notice This document may be copied in its entirety, or extracts made, if the source is acknowledged. #1 When test cases are designed

More information

FSW QA Testing Levels Definitions

FSW QA Testing Levels Definitions FSW QA Testing Levels Definitions 1. Overview This document is used to help determine the amount and quality of testing (or its scope) that is planned for or has been performed on a project. This analysis

More information

A Static Analyzer for Large Safety-Critical Software. Considered Programs and Semantics. Automatic Program Verification by Abstract Interpretation

A Static Analyzer for Large Safety-Critical Software. Considered Programs and Semantics. Automatic Program Verification by Abstract Interpretation PLDI 03 A Static Analyzer for Large Safety-Critical Software B. Blanchet, P. Cousot, R. Cousot, J. Feret L. Mauborgne, A. Miné, D. Monniaux,. Rival CNRS École normale supérieure École polytechnique Paris

More information

Introduction to Computers and Programming. Testing

Introduction to Computers and Programming. Testing Introduction to Computers and Programming Prof. I. K. Lundqvist Lecture 13 April 16 2004 Testing Goals of Testing Classification Test Coverage Test Technique Blackbox vs Whitebox Real bugs and software

More information

Designing with Exceptions. CSE219, Computer Science III Stony Brook University http://www.cs.stonybrook.edu/~cse219

Designing with Exceptions. CSE219, Computer Science III Stony Brook University http://www.cs.stonybrook.edu/~cse219 Designing with Exceptions CSE219, Computer Science III Stony Brook University http://www.cs.stonybrook.edu/~cse219 Testing vs. Debugging Testing Coding Does the code work properly YES NO 2 Debugging Testing

More information

Essentials of the Quality Assurance Practice Principles of Testing Test Documentation Techniques. Target Audience: Prerequisites:

Essentials of the Quality Assurance Practice Principles of Testing Test Documentation Techniques. Target Audience: Prerequisites: Curriculum Certified Software Tester (CST) Common Body of Knowledge Control Procedures Problem Resolution Reports Requirements Test Builds Test Cases Test Execution Test Plans Test Planning Testing Concepts

More information

Test Specification. Introduction

Test Specification. Introduction Test Specification Introduction Goals and Objectives GameForge is a graphical tool used to aid in the design and creation of video games. A user with little or no experience with Microsoft DirectX and/or

More information

Data Model Bugs. Ivan Bocić and Tevfik Bultan

Data Model Bugs. Ivan Bocić and Tevfik Bultan Data Model Bugs Ivan Bocić and Tevfik Bultan Department of Computer Science University of California, Santa Barbara, USA bo@cs.ucsb.edu bultan@cs.ucsb.edu Abstract. In today s internet-centric world, web

More information

IEEE ComputerSociety 1 Software and Systems Engineering Vocabulary

IEEE ComputerSociety 1 Software and Systems Engineering Vocabulary IEEE ComputerSociety 1 Software and Systems test item. (1) system or software item that is an object of testing (IEEE 829-2008 IEEE Standard for Software and System Test Documentation, 3.1.48) (2) work

More information

1 White-Box Testing by Stubs and Drivers

1 White-Box Testing by Stubs and Drivers White-box testing is a verification technique software engineers can use to examine if their code works as expected. In this chapter, we will explain the following: a method for writing a set of white-box

More information

Introduction to Automated Testing

Introduction to Automated Testing Introduction to Automated Testing What is Software testing? Examination of a software unit, several integrated software units or an entire software package by running it. execution based on test cases

More information

Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53

Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53 Preface xvi Part I Introduction and System Engineering 1 Chapter 1 Introduction 2 1.1 What Is Software Engineering? 2 1.2 Why Software Engineering? 3 1.3 Software Life-Cycle Activities 4 1.3.1 Software

More information

Sample Exam. 2011 Syllabus

Sample Exam. 2011 Syllabus ISTQ Foundation Level 2011 Syllabus Version 2.3 Qualifications oard Release ate: 13 June 2015 ertified Tester Foundation Level Qualifications oard opyright 2015 Qualifications oard (hereinafter called

More information

Test Data Management Best Practice

Test Data Management Best Practice Test Data Management Best Practice, Inc. 5210 Belfort Parkway, Suite 400 Author: Stephanie Chace Quality Practice Lead srchace@meridiantechnologies.net, Inc. 2011 www.meridiantechnologies.net Table of

More information

Optimizations. Optimization Safety. Optimization Safety. Control Flow Graphs. Code transformations to improve program

Optimizations. Optimization Safety. Optimization Safety. Control Flow Graphs. Code transformations to improve program Optimizations Code transformations to improve program Mainly: improve execution time Also: reduce program size Control low Graphs Can be done at high level or low level E.g., constant folding Optimizations

More information

Chapter 11, Testing, Part 2: Integration and System Testing

Chapter 11, Testing, Part 2: Integration and System Testing Object-Oriented Software Engineering Using UML, Patterns, and Java Chapter 11, Testing, Part 2: Integration and System Testing Overview Integration testing Big bang Bottom up Top down Sandwich System testing

More information

Data Center Virtualization and Cloud QA Expertise

Data Center Virtualization and Cloud QA Expertise Data Center Virtualization and Cloud QA Expertise Highlights Broad Functional QA Experience Deep understanding of Switching and Routing Protocols Strong hands on experience in multiple hyper-visors like

More information

HP ALM Best Practices Series

HP ALM Best Practices Series HP ALM Best Practices Series For ALM Practitioners Business Process Models Best Practices Document Release Date: June 2015 Legal Notices Warranty The only warranties for HP products and services are set

More information

Test-Driven Development. SC12 Educator s Session November 13, 2012

Test-Driven Development. SC12 Educator s Session November 13, 2012 Test-Driven Development Educator s Session November 13, 2012 Outline Software Quality Overview of Testing Automated Testing Tools Test-Driven Development Educator's Session 2 SOFTWARE QUALITY Educator's

More information

Co-Presented by Mr. Bill Rinko-Gay and Dr. Constantin Stanca 9/28/2011

Co-Presented by Mr. Bill Rinko-Gay and Dr. Constantin Stanca 9/28/2011 QAI /QAAM 2011 Conference Proven Practices For Managing and Testing IT Projects Co-Presented by Mr. Bill Rinko-Gay and Dr. Constantin Stanca 9/28/2011 Format This presentation is a journey When Bill and

More information

ISTQB Foundation Sample Question Paper No. 6

ISTQB Foundation Sample Question Paper No. 6 ISTQB Foundation Sample Question Paper No. 6 1. Which of the following is a major task of test planning? A Determining the test approach. B Preparing test specifications. C Evaluating exit criteria and

More information

ecommerce and Retail Rainforest QA enables ecommerce companies to test highly visual user interfaces and customer experience and flow.

ecommerce and Retail Rainforest QA enables ecommerce companies to test highly visual user interfaces and customer experience and flow. ecommerce and Retail Rainforest QA enables ecommerce companies to test highly visual user interfaces and customer experience and flow. ecommerce lives and dies by a great user experience, which in turn

More information

European Commission. <Project Name> Test Management Plan. Date: 23/10/2008 Version: 1.002 Authors: Revised by: Approved by: Public: Reference Number:

European Commission. <Project Name> Test Management Plan. Date: 23/10/2008 Version: 1.002 Authors: Revised by: Approved by: Public: Reference Number: EUROPEAN COMMISSION DIRECTORATE-GENERAL INFORMATICS Information systems Directorate European Commission Test Management Plan Date: 23/10/2008 Version: 1.002 Authors: Revised by: Approved

More information

BDD FOR AUTOMATING WEB APPLICATION TESTING. Stephen de Vries

BDD FOR AUTOMATING WEB APPLICATION TESTING. Stephen de Vries BDD FOR AUTOMATING WEB APPLICATION TESTING Stephen de Vries www.continuumsecurity.net INTRODUCTION Security Testing of web applications, both in the form of automated scanning and manual security assessment

More information

Acceptance Criteria. Software Engineering Group 6. 0/3/2012: Acceptance Criteria, v2.0 March 2012 - Second Deliverable

Acceptance Criteria. Software Engineering Group 6. 0/3/2012: Acceptance Criteria, v2.0 March 2012 - Second Deliverable Acceptance Criteria Software Engineering Group 6 0/3/2012: Acceptance Criteria, v2.0 March 2012 - Second Deliverable 1 Contents: Page no: Introduction...3 Test Environment...4 Acceptance Tests...5 Types

More information

How To Improve Software Quality

How To Improve Software Quality Software Qualities Quality Assurance Maintainer Go Documentation Readable Ce Go Design Functionality Ease of use Ease of learning User Reliability Correctness Efficiency Low Cost Portability Increased

More information

Automated Testing Best Practices

Automated Testing Best Practices Automated Testing Best Practices This document includes best practices to consider before implementing automated software testing. These best practices are strategic and are applicable regardless of the

More information

SOFTWARE TESTING - QUICK GUIDE SOFTWARE TESTING - OVERVIEW

SOFTWARE TESTING - QUICK GUIDE SOFTWARE TESTING - OVERVIEW http://www.tutorialspoint.com/software_testing/software_testing_quick_guide.htm What is Testing? SOFTWARE TESTING - QUICK GUIDE SOFTWARE TESTING - OVERVIEW Copyright tutorialspoint.com Testing is the process

More information

Software Testing. Motivation. People are not perfect We make errors in design and code

Software Testing. Motivation. People are not perfect We make errors in design and code Motivation Software Testing People are not perfect We make errors in design and code Goal of testing: given some code, uncover as many errors are possible Important and expensive activity Not unusual to

More information

Alternate Data Streams in Forensic Investigations of File Systems Backups

Alternate Data Streams in Forensic Investigations of File Systems Backups Alternate Data Streams in Forensic Investigations of File Systems Backups Derek Bem and Ewa Z. Huebner School of Computing and Mathematics University of Western Sydney d.bem@cit.uws.edu.au and e.huebner@cit.uws.edu.au

More information

Standard Glossary of Terms Used in Software Testing. Version 3.01

Standard Glossary of Terms Used in Software Testing. Version 3.01 Standard Glossary of Terms Used in Software Testing Version 3.01 Terms Used in the Expert Level Test Automation - Engineer Syllabus International Software Testing Qualifications Board Copyright International

More information

Essential Visual Studio Team System

Essential Visual Studio Team System Essential Visual Studio Team System Introduction This course helps software development teams successfully deliver complex software solutions with Microsoft Visual Studio Team System (VSTS). Discover how

More information

Testing, Debugging, and Verification

Testing, Debugging, and Verification Testing, Debugging, and Verification Testing, Part II Moa Johansson 10 November 2014 TDV: Testing /GU 141110 1 / 42 Admin Make sure you are registered for the course. Otherwise your marks cannot be recorded.

More information

HP ALM. Software Version: 12.50. Tutorial

HP ALM. Software Version: 12.50. Tutorial HP ALM Software Version: 12.50 Tutorial Document Release Date: December 2015 Software Release Date: December 2015 Legal Notices Warranty The only warranties for HP products and services are set forth in

More information

Why? A central concept in Computer Science. Algorithms are ubiquitous.

Why? A central concept in Computer Science. Algorithms are ubiquitous. Analysis of Algorithms: A Brief Introduction Why? A central concept in Computer Science. Algorithms are ubiquitous. Using the Internet (sending email, transferring files, use of search engines, online

More information

Chapter 11: Integrationand System Testing

Chapter 11: Integrationand System Testing Object-Oriented Software Engineering Using UML, Patterns, and Java Chapter 11: Integrationand System Testing Integration Testing Strategy The entire system is viewed as a collection of subsystems (sets

More information

Critical Systems Validation. Objectives

Critical Systems Validation. Objectives Critical Systems Validation Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 24 Slide 1 Objectives To explain how system reliability can be measured and how reliability growth models can

More information

Satisfying ASIL Requirements with Parasoft C++test Achieving Functional Safety in the Automotive Industry

Satisfying ASIL Requirements with Parasoft C++test Achieving Functional Safety in the Automotive Industry Satisfying Requirements with Parasoft C++test Achieving Functional Safety in the Automotive Industry Introduction Safety functions are increasingly being carried out by electrical, electronic, or programmable

More information

Different Approaches to White Box Testing Technique for Finding Errors

Different Approaches to White Box Testing Technique for Finding Errors Different Approaches to White Box Testing Technique for Finding Errors Mohd. Ehmer Khan Department of Information Technology Al Musanna College of Technology, Sultanate of Oman ehmerkhan@gmail.com Abstract

More information

TEST PLAN Issue Date: <dd/mm/yyyy> Revision Date: <dd/mm/yyyy>

TEST PLAN Issue Date: <dd/mm/yyyy> Revision Date: <dd/mm/yyyy> DEPARTMENT OF HEALTH AND HUMAN SERVICES ENTERPRISE PERFORMANCE LIFE CYCLE FRAMEWORK CHECKLIIST TEST PLAN Issue Date: Revision Date: Document Purpose The purpose of

More information

Web Applications Testing

Web Applications Testing Web Applications Testing Automated testing and verification JP Galeotti, Alessandra Gorla Why are Web applications different Web 1.0: Static content Client and Server side execution Different components

More information

Towards a Next- Generation Inter-domain Routing Protocol. L. Subramanian, M. Caesar, C.T. Ee, M. Handley, Z. Mao, S. Shenker, and I.

Towards a Next- Generation Inter-domain Routing Protocol. L. Subramanian, M. Caesar, C.T. Ee, M. Handley, Z. Mao, S. Shenker, and I. Towards a Next- Generation Inter-domain Routing Protocol L. Subramanian, M. Caesar, C.T. Ee, M. Handley, Z. Mao, S. Shenker, and I. Stoica Routing 1999 Internet Map Coloured by ISP Source: Bill Cheswick,

More information

SIEMENS. Teamcenter 11.2. Change Manager PLM00140 11.2

SIEMENS. Teamcenter 11.2. Change Manager PLM00140 11.2 SIEMENS Teamcenter 11.2 Change Manager PLM00140 11.2 Contents What is Change Manager?.............................................. 1-1 Related topics........................................................

More information

Going Interactive: Combining Ad-Hoc and Regression Testing

Going Interactive: Combining Ad-Hoc and Regression Testing Going Interactive: Combining Ad-Hoc and Regression Testing Michael Kölling 1, Andrew Patterson 2 1 Mærsk Mc-Kinney Møller Institute, University of Southern Denmark, Denmark mik@mip.sdu.dk 2 Deakin University,

More information

Keywords: SQA,Black Box Testing( BBT), White Box testing(wbt).

Keywords: SQA,Black Box Testing( BBT), White Box testing(wbt). Volume 3, Issue 10, October 2013 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Enhancing Software

More information

Testing is the process of evaluating a system or its component(s) with the intent to find whether it satisfies the specified requirements or not.

Testing is the process of evaluating a system or its component(s) with the intent to find whether it satisfies the specified requirements or not. About the Tutorial Testing is the process of evaluating a system or its component(s) with the intent to find whether it satisfies the specified requirements or not. Testing is executing a system in order

More information

The goal with this tutorial is to show how to implement and use the Selenium testing framework.

The goal with this tutorial is to show how to implement and use the Selenium testing framework. APPENDIX B: SELENIUM FRAMEWORK TUTORIAL This appendix is a tutorial about implementing the Selenium framework for black-box testing at user level. It also contains code examples on how to use Selenium.

More information

Minimizing code defects to improve software quality and lower development costs.

Minimizing code defects to improve software quality and lower development costs. Development solutions White paper October 2008 Minimizing code defects to improve software quality and lower development costs. IBM Rational Software Analyzer and IBM Rational PurifyPlus software Kari

More information

Static vs. Dynamic Testing How Static Analysis and Run-Time Testing Can Work Together. Outline

Static vs. Dynamic Testing How Static Analysis and Run-Time Testing Can Work Together. Outline Static vs. Dynamic Testing How Static Analysis and Run-Time Testing Can Work Together S. Tucker Taft and Brian Lesuer SQGNE December 2006 Outline The Challenges Facing Software Testing A Software Testing

More information

Know or Go Practical Quest for Reliable Software

Know or Go Practical Quest for Reliable Software Know or Go Practical Quest for Reliable Software Dr.-Ing. Jörg Barrho Dr.-Ing. Ulrich Wünsche AVACS Project meeting 25.09.2014 2014 Rolls-Royce Power Systems AG The information in this document is the

More information

Enabling Continuous Delivery by Leveraging the Deployment Pipeline

Enabling Continuous Delivery by Leveraging the Deployment Pipeline Enabling Continuous Delivery by Leveraging the Deployment Pipeline Jason Carter Principal (972) 689-6402 Jason.carter@parivedasolutions.com Pariveda Solutions, Inc. Dallas,TX Table of Contents Matching

More information

Choosing A Load Testing Strategy Why and How to Optimize Application Performance

Choosing A Load Testing Strategy Why and How to Optimize Application Performance Choosing A Load Testing Strategy Why and How to Optimize Application Performance What Is Load Testing? Systematic exposure of an application to real world, expected usage conditions before deployment Analyzes

More information

What is the best automation testing approach?

What is the best automation testing approach? ? 1. Record & Playback We are regularly called upon for advice on designing and deploying testing automation tools and frameworks. Choosing the right automation approach is vital for ensuring proper testing,

More information

Automated Software Testing by: Eli Janssen

Automated Software Testing by: Eli Janssen 1. What is automated testing? Automated Software Testing by: Eli Janssen Automated testing is, much like the name implies, getting the computer to do the remedial work of ensuring that inputs yield expected

More information

Application Code Development Standards

Application Code Development Standards Application Code Development Standards Overview This document is intended to provide guidance to campus system owners and software developers regarding secure software engineering practices. These standards

More information

Advantech WebAccess Device Driver Guide. BwSNMP Advantech WebAccess to SNMP Agent (Simple Network Management Protocol) Device Driver Guide

Advantech WebAccess Device Driver Guide. BwSNMP Advantech WebAccess to SNMP Agent (Simple Network Management Protocol) Device Driver Guide BwSNMP Advantech WebAccess to SNMP Agent (Simple Network Management Protocol) Device Driver Guide Version 5.0 rev 1 Advantech Corp., Ltd. Table of Contents BwSNMP Advantech WebAccess to SNMP Agent (Simple

More information

Library Management System

Library Management System Library Management System UNDER THE GUIDANCE OF Mr. E.mitra Submitted to :-Head of training & Placement dept Submitted By: -Seema jajoria ACKNOWLEDGEMENT We are extremely grateful and remain indebted to

More information

Integrated Error-Detection Techniques: Find More Bugs in Java Applications

Integrated Error-Detection Techniques: Find More Bugs in Java Applications Integrated Error-Detection Techniques: Find More Bugs in Java Applications Software verification techniques such as pattern-based static code analysis, runtime error detection, unit testing, and flow analysis

More information

Using TechExcel s DevSuite to Achieve FDA Software Validation Compliance For Medical Software Device Development

Using TechExcel s DevSuite to Achieve FDA Software Validation Compliance For Medical Software Device Development Using TechExcel s DevSuite to Achieve FDA Software Validation Compliance For Medical Software Device Development The FDA requires medical software development teams to comply with its standards for software

More information

How To Test A Web Based System

How To Test A Web Based System Testing Web-Based Systems-Checklists Testing Web-Based Systems -Checklist Overview-: Web-based testing should be RISK ORIENTED. This article describes the risks, presents the types of testing that can

More information

CSTE Mock Test - Part III Questions Along with Answers

CSTE Mock Test - Part III Questions Along with Answers Note: This material is for Evaluators reference only. Caters to answers of CSTE Mock Test - Part III paper. 1. Independence is important in testing is mostly due to the fact that (Ans: C) a. Developers

More information

Coverity White Paper. Effective Management of Static Analysis Vulnerabilities and Defects

Coverity White Paper. Effective Management of Static Analysis Vulnerabilities and Defects Effective Management of Static Analysis Vulnerabilities and Defects Introduction According to a recent industry study, companies are increasingly expanding their development testing efforts to lower their

More information

Automated Validation & Verification of Software Paper Presentation

Automated Validation & Verification of Software Paper Presentation Regression Test Selection for Java Software Salvador Valencia Rodríguez Automated Validation & Verification of Software Paper Presentation Paper authors Mary Jean Harrold James A. Jones Tongyu Li Donglin

More information

Agile Development and Testing Practices highlighted by the case studies as being particularly valuable from a software quality perspective

Agile Development and Testing Practices highlighted by the case studies as being particularly valuable from a software quality perspective Agile Development and Testing Practices highlighted by the case studies as being particularly valuable from a software quality perspective Iteration Advantages: bringing testing into the development life

More information