TeCReVis: A Tool for Test Coverage and Test Redundancy Visualization



Similar documents
Creating an Automated Software Testing Center of Excellence

Java Software Quality Tools and techniques

Principles of integrated software development environments. Learning Objectives. Context: Software Process (e.g. USDP or RUP)

Practicing Continuous Delivery using Hudson. Winston Prakash Oracle Corporation

SA4 Software Developer Survey Survey Specification v2.2

Introduction to Automated Testing

VERIFICATION AND VALIDATION AUTOMATED TESTING TOOLS CLAUDIU ADAM

QA & Test Management. Overview.

Regression Testing Based on Comparing Fault Detection by multi criteria before prioritization and after prioritization

What is Enterprise Architect? Enterprise Architect is a visual platform for designing and constructing software systems, for business process

ASSURING SOFTWARE QUALITY USING VISUAL STUDIO 2010

HP Application Lifecycle Management

Microsoft Modern ALM. Gilad Levy Baruch Frei

Software Development In the Cloud Cloud management and ALM

International Journal of Advanced Engineering Research and Science (IJAERS) Vol-2, Issue-11, Nov- 2015] ISSN:

Build management & Continuous integration. with Maven & Hudson

A Software Development Platform for SOA

Continuous Integration For Real: The Perforce Java Platform. Hamish Reid Perforce Software Inc.

An Automated Testing Tool Using UI Structure

DAVE Usage with SVN. Presentation and Tutorial v 2.0. May, 2014

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

Sub Code: CP7007 Sub Name: SOFTWARE REQUIREMENTS ENGINEERING Branch / Year: ME CSE / I Year Staff in charge: Dr.M.Senthil Kumar

Industrial Adoption of Automatically Extracted GUI Models for Testing

Software Development and Testing: A System Dynamics Simulation and Modeling Approach

NXTware Remote. Advanced Development and Maintenance Environment for OpenVMS and other Strategic Platforms

Techniques and Tools for Rich Internet Applications Testing

Revel8or: Model Driven Capacity Planning Tool Suite

SECTION 4 TESTING & QUALITY CONTROL

Integration in Practice

TEACHING QUALITY ASSURANCE AND PROJECT MANGEMENT TO UNDERGRDUATE COMPUTING STUDENTS IN PAKISTAN

Performance Testing and Optimization in Web-Service Based Applications

WebRatio 5: An Eclipse-based CASE tool for engineering Web applications

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

SMZ. SocialMedia. Z olutions

Web Application Regression Testing: A Session Based Test Case Prioritization Approach

How To Do Continuous Integration

Towards a Framework for Generating Tests to Satisfy Complex Code Coverage in Java Pathfinder

Introducing Performance Engineering by means of Tools and Practical Exercises

Software Engineering. Software Testing. Based on Software Engineering, 7 th Edition by Ian Sommerville

Know the Difference. Unified Functional Testing (UFT) and Lean Functional Testing (LeanFT) from HP

Model-Driven Software Produces Truly Agile Solutions

Random Testing: The Best Coverage Technique - An Empirical Proof

Media and Information Provider Unifies Development Processes

Simplifying development through activity-based change management

TeamCity A Professional Solution for Delivering Quality Software, on Time

OpenAdmin Tool for Informix (OAT) October 2012

How Silk Central brings flexibility to agile development

Continuous Integration with Jenkins. Coaching of Programming Teams (EDA270) J. Hembrink and P-G. Stenberg [dt08jh8

Unit Testing & JUnit

South East of Process Main Building / 1F. North East of Process Main Building / 1F. At 14:05 April 16, Sample not collected

Coverage Criteria for Search Based Automatic Unit Testing of Java Programs

Quality Assurance Plan

Demonstration of an Automated Integrated Test Environment for Web-based Applications

HP ALM11 & MS VS/TFS2010

Continuous Integration and Delivery at NSIDC

Software infrastructure for Java development projects

Quality Procedure ISO 9001: 2008 Control of Documents

ALM2013VS_ACC: Application Lifecycle Management Using Visual Studio 2013

HP Fortify application security

Clarifying a vision on certification of MDA tools

Application Test Management and Quality Assurance

Model-based approach to design web application testing tool

Utilizing Domain-Specific Modelling for Software Testing

AGILE SOFTWARE TESTING

What is a life cycle model?

What is new for HP LoadRunner and Performance Center 11.52

Agile Web Service and REST Service Testing with soapui

Agile So)ware Development

Application Lifecycle Management Using Visual Studio 2013 (SCRUM)

Software Quality Testing Course Material

How To Improve Your Software

Continuous Integration

Development Testing for Agile Environments

Successfully managing geographically distributed development

Team Members: Adam Wroblaski Jared Kline Mark Reisinger Yu Chan. Advisor: Dr. Chen-Ching Liu Client: General Electric

The Role of Business Capabilities in Strategic Planning. Sneaking up on Quality Using Business Architecture in a learning corporation

2015 IBM Continuous Engineering Open Labs Target to better LEARNING

Model-based Testing of Automotive Systems

Model Driven Testing AGEDIS Architecture Interfaces and Tools

Name of chapter & details

MDA Overview OMG. Enterprise Architect UML 2 Case Tool by Sparx Systems by Sparx Systems

Advanced Test Manager E-learning Course Outline

Using the Cognitive Dimensions Framework to evaluate the usability of a class library

Transcription:

TeCReVis: A Tool for Test Coverage and Test Redundancy Visualization Negar Koochakzadeh Vahid Garousi Software Quality Engineering Research Group University of Calgary, Canada Acknowledging funding and support from: 1

Talk Outline Existing Code Coverage Tools The need for Test Visualization 1st Feature of TeCReVis: Code Coverage Visualization TeCReVis - Graphical User Interface 2nd Feature of TeCReVis: Test Redundancy Management TeCReVis - Implementation Details Usage Scenarios of the Tool Availability and Demo Videos Q/A 2

Existing Code Coverage Tools To support automated code coverage measurement and analysis test coverage values are conventionally shown in percentages and are visualized by progress-bar-like green/red boxes in the existing coverage tools e.g., the CodeCover plug-in for the Eclipse IDE 3

However (The need for Test Visualization) However with increasing size and complexity of code bases of both systems under test and also their automated test suites (e.g., based on JUnit) there is a need for visualization techniques to enable testers to analyze code coverage in higher levels of abstraction and in holistic manners e.g., which packages of the SUT are covered by a specific set of test cases? Two domains Test Suite SUT 4

Talk Outline Existing Code Coverage Tools The need for Test Visualization 1st Feature of TeCReVis: Code Coverage Visualization TeCReVis - Graphical User Interface 2nd Feature of TeCReVis: Test Redundancy Management TeCReVis - Implementation Details Usage Scenarios of the Tool Availability and Demo Videos Q/A 5

The Visualization Idea 1 st Feature: Test Coverage Graph (TCG) Test Artifact covers SUT Artifact Test Package Test Class Test Method (case) Package Class Method Coverable Item Statement Branch Condition Loop 6

TeCReVis - Graphical User Interface Various granularities can be selected for both groups of items (e.g., method, class or package). 7

Talk Outline Existing Code Coverage Tools The need for Test Visualization 1st Feature of TeCReVis: Code Coverage Visualization TeCReVis - Graphical User Interface 2nd Feature of TeCReVis: Test Redundancy Management TeCReVis - Implementation Details Usage Scenarios of the Tool Availability and Demo Videos Q/A 8

2 nd Feature of TeCReVis TeCReVis: A Tool for Test Coverage and Test Redundancy Visualization Test Redundancy Graph (TRG) The test redundancy metrics are defined in an earlier paper* N. Koochakzadeh, V. Garousi, and F. Maurer, "Test Redundancy Measurement Based on Coverage Information: Evaluation and Lessons Learned," in Proc. of Int. Conf. on Soft. Testing, Verification, and Validation (ICST), 2009. 9

Test Redundancy Management using TeCReVis For details see N. Koochakzadeh and V. Garousi A Tester-Assisted Methodology for Test Redundancy Detection, Journal on Advances in Software Engineering, Special Issue on Software Test Automation, 2010: pp. 1-13. 10

Talk Outline Existing Code Coverage Tools The need for Test Visualization 1st Feature of TeCReVis: Code Coverage Visualization TeCReVis - Graphical User Interface 2nd Feature of TeCReVis: Test Redundancy Management TeCReVis - Implementation Details Usage Scenarios of the Tool Availability and Demo Videos Q/A 11

TeCReVis - Implementation Details Simplified package diagram of CodeCover and the modified parts in TeCReVis instrumentation model eclipse metrics report Modified packages in TeReVis Visualization library Used in TeReVis 12

TeCReVis - Implementation Details Class Diagram of package org.codecover.eclipse.views 13

TeCReVis - Implementation Details Sample Code 14

Talk Outline Existing Code Coverage Tools The need for Test Visualization 1st Feature of TeCReVis: Code Coverage Visualization TeCReVis - Graphical User Interface 2nd Feature of TeCReVis: Test Redundancy Management TeCReVis - Implementation Details Usage Scenarios of the Tool Availability and Demo Videos Q/A 15

Usage Scenarios of the Tool Coverage (test adequacy) improvement Test suite maintenance as the SUT evolves An empirical study is reported in a TAIC PART 2010 fast abstract Fault localization An empirical study is reported in a TAIC PART 2010 fast abstract Test redundancy detection For details see N. Koochakzadeh and V. Garousi A Tester-Assisted Methodology for Test Redundancy Detection, Journal on Advances in Software Engineering, Special Issue on Software Test Automation, 2010: pp. 1-13. and N. Koochakzadeh, V. Garousi, and F. Maurer, "Test Redundancy Measurement Based on Coverage Information: Evaluation and Lessons Learned," in Proc. of Int. Conf. on Soft. Testing, Verification, and Validation (ICST), 2009. 16

Tool availability and Demo Videos www.softqual.ucalgary.ca/sw_tools.html 17

Talk Outline Existing Code Coverage Tools The need for Test Visualization 1st Feature of TeCReVis: Code Coverage Visualization TeCReVis - Graphical User Interface 2nd Feature of TeCReVis: Test Redundancy Management TeCReVis - Implementation Details Usage Scenarios of the Tool Availability and Demo Videos Q/A 18