Refactoring of Acceptance Tests Master-Kolloquium Heiko Ordelt

Size: px
Start display at page:

Download "Refactoring of Acceptance Tests Master-Kolloquium Heiko Ordelt"

Transcription

1 Refactoring of Acceptance Tests Master-Kolloquium Heiko Ordelt

2 Extreme Programming (XP) Agile Method following the Agile Manifesto Software development process which focuses on problem solving rather than formalism Two kinds of testing Unit Testing Acceptance Testing Core practice Test Driven Development Unit Test Driven Development Executable Acceptance Test Driven Development 04/15/2008 2

3 Executable Acceptance Test Driven Development (EATDD) An acceptance test describes a feature and serves as requirement specification Created in collaboration of customer and developers Software development is driven by executable acceptance tests Test-First : Development of a feature starts when the corresponding acceptance test has been created 04/15/2008 3

4 FIT Tools supporting EATDD Framework to define and execute acceptance tests Additonal fixture support by FitLibrary mapping fail/pass public class Test extends Fixture { } call return Test Definition FitNesse Fixture System Multi user wiki system to manage and execute acceptance tests Tests are defined in wiki syntax defined by FitNesse 04/15/2008 4

5 FIT Fixtures Link between test definition and system under test Commonly used fixtures ColumnFixture (Testing of parametrized input/output) DoFixture (Testing of workflows) 04/15/2008 5

6 Acceptance Tests as Requirements Specification Acceptance tests specify system behaviour Modification of acceptance tests needed when requirements are changed Acceptance Test A Fixture A.1 System Requirement A Acceptance Test B Fixture A.2 Requirement B Fixture B Acceptance Test C Fixture C 04/15/2008 6

7 Effectiveness of Acceptance Tests Test definition defines the effectiveness of acceptance tests Characteristics by Jennitta Andrea 2007 Declarative Tests should be written in the language of the business domain rather than in a language of user interface elements Succinct Short tests are easier and quicker to understand than large test definitions Autonomous Acceptance tests should be self-contained and runnable without dependencies on other tests Sufficient Only testing of the main business processes and the most important test cases Locatable 04/15/2008 Related tests should be easy to find to serve as requirements 7 specification

8 Modification of Acceptance Tests Modifications are needed to reflect changed requirements to improve the effectiveness Manual test modification has disadvantages as follows time-consuming error-prone No regression safety-net like source code 04/15/2008 8

9 Refactoring von Akzeptanztests Modification of the test definition of an acceptance test Keeps test definition and fixture code consistent Behaviour of the refactored test can be changed by a refactoring Execution of a refactored test must result in either red or green Automated refactoring tool support can lower the test maintenance effort in the same way as code refactoring tools lower it for source code 04/15/2008 9

10 Refactoring Catalogue Created by analyzing the relationships between test definition and fixture of the FIT framework Rename Acceptance Test ColumnFixture Add Column Remove Column DoFixture Add Action Remove Action Rename Action 04/15/

11 FitClipse IDE for managing acceptance tests Integrated in Eclipse as plug-in with its own perspective 04/15/

12 Automated Refactoring Implementation Extension of FitClipse for automated refactoring support Every refactoring of catalogue implemented Used Eclipse plug-ins Java Development Tools (JDT) Language Toolkit (LTK) Integrated in the commonly known Eclipse refactoring workflow Supports multiple fixtures for multi-modal test execution Supports multiple test table in one test definition 04/15/

13 Automated Refactoring Architecture 04/15/

14 TestDefinitionParser Automated Refactoring Components Analyses test definition and extracts elements like tables, rows and cells FixtureParser Analyses and modifies Java fixtures, e.g. adding methods or fields etc. RefactoringTest Encapsulates a tests and contains methods needed by the various refactoring types RefactoringTestFactory Automatically detects the type of a test (Do- or ColumnFixture) and creates the proper RefactoringTest object 04/15/

15 Refactoring Process 04/15/

16 Refactoring Extension Test Structure Developed by following EATDD thus acceptance testing required Eclipse plug-ins not testable by FIT framework Extension built with PDE Junit as link between fixture and system public class Test extends Fixture { } call public class PDETest { } call true/false return Fixture PDE JUnit Test SUT 04/15/

17 Problems / Contributions Problems Less existing academic work Understanding of Eclipse framework Testing the refactoring extension Contributions Academic contribution Automated refactoring support of FitClipse Integration of the Eclipse refactoring framework making extending refactoring or fixture support easier 04/15/

18 Future Work Evaluation whether it is beneficial for following the EATDD process Support of more fixtures and refactoring types Support of HTML as test definition format Keeping a history of applied refactoring types Refactoring from Java file to test definition Improving the test structure of the refactoring extension Several test table of different types in one test definition 04/15/

19 Thanks 04/15/

20 Thanks for your attention Rocky Mountains /15/

Tutorial Methodologies for Test-Driven Development of OSGi enabled Embedded Devices

Tutorial Methodologies for Test-Driven Development of OSGi enabled Embedded Devices Tutorial Methodologies for Test-Driven Development of OSGi enabled Embedded Devices 2008 by Christine Mitterbauer, Marcus Harringer MicroDoc GmbH www.microdoc.com Or... 2 Methodologies for Test-Driven

More information

Introduction to Automated Acceptance Testing

Introduction to Automated Acceptance Testing Introduction to Automated Acceptance Testing Micah Martin, 8th Light, Inc. micah@8thlight.com What are Acceptance Tests? What are Acceptance Tests? ATs vs UTs Acceptance Tests Unit Tests Written by Customer

More information

Presented By: RAVI KUMAR HCL Technologies Ltd. SREEKANTH TADIPATRI Independent Consultant

Presented By: RAVI KUMAR HCL Technologies Ltd. SREEKANTH TADIPATRI Independent Consultant Presented By: RAVI KUMAR HCL Technologies Ltd. & SREEKANTH TADIPATRI Independent Consultant Why IT Projects Fail? Traditional Models & Testing Agile Model & Testing Brian Marick s Test Categories Simple

More information

Index. Symbols. /**, symbol, 73 >> symbol, 21

Index. Symbols. /**, symbol, 73 >> symbol, 21 17_Carlson_Index_Ads.qxd 1/12/05 1:14 PM Page 281 Index Symbols /**, 73 @ symbol, 73 >> symbol, 21 A Add JARs option, 89 additem() method, 65 agile development, 14 team ownership, 225-226 Agile Manifesto,

More information

Fit for Developing Software

Fit for Developing Software Fit for Developing Software Framework for Integrated Tests Rick Mugridge Ward Cunningham 04) PRENTICE HALL Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal London Munich

More information

UNIVERSITY OF CALGARY. FitClipse: a Testing Tool for Supporting Executable Acceptance Test Driven. Development. Chengyao Deng A THESIS

UNIVERSITY OF CALGARY. FitClipse: a Testing Tool for Supporting Executable Acceptance Test Driven. Development. Chengyao Deng A THESIS UNIVERSITY OF CALGARY FitClipse: a Testing Tool for Supporting Executable Acceptance Test Driven Development by Chengyao Deng A THESIS SUBMITTED TO THE FACULTY OF GRADUATE STUDIES IN PARTIAL FULFILMENT

More information

02291: System Integration

02291: System Integration 02291: System Integration Week 3 Hubert Baumeister huba@dtu.dk DTU Compute Technical University of Denmark Spring 2018 Contents User Stories Activity Diagrams Acceptance Tests User stories Basic requirements

More information

Why is software development difficult. An Acceptance Testing Viewpoint

Why is software development difficult. An Acceptance Testing Viewpoint Why is software development difficult An Acceptance Testing Viewpoint Developers Don t Know. Where to start What to test What not to test How much to test. That testing is about DESIGN and SPECIFICATION

More information

Levels of Testing Testing Methods Test Driven Development JUnit. Testing. ENGI 5895: Software Design. Andrew Vardy

Levels of Testing Testing Methods Test Driven Development JUnit. Testing. ENGI 5895: Software Design. Andrew Vardy Testing ENGI 5895: Software Design Andrew Vardy Faculty of Engineering & Applied Science Memorial University of Newfoundland March 6, 2017 Outline 1 Levels of Testing 2 Testing Methods 3 Test Driven Development

More information

Acceptance Testing with Fitnesse

Acceptance Testing with Fitnesse Acceptance Testing with Fitnesse Alessandro Marchetto Fondazione Bruno Kessler - IRST Testing tools Jemmy/Abbot/JFCUnit/ FIT/Fitnesse (High level) Business Logic GUI Perfomance and Load Testing JMeter/JUnitPerf

More information

Levels of Testing Testing Methods Test Driven Development JUnit. Testing. ENGI 5895: Software Design. Andrew Vardy

Levels of Testing Testing Methods Test Driven Development JUnit. Testing. ENGI 5895: Software Design. Andrew Vardy Testing ENGI 5895: Software Design Andrew Vardy Faculty of Engineering & Applied Science Memorial University of Newfoundland March 6, 2017 Outline 1 Levels of Testing 2 Testing Methods 3 Test Driven Development

More information

An Automated Assistant for Reducing Duplication in Living Documentation

An Automated Assistant for Reducing Duplication in Living Documentation An Automated Assistant for Reducing Duplication in Living Documentation A dissertation submitted to the University of Manchester for the degree of Master of Science in the Faculty of Engineering and Physical

More information

SLIM and the future of FitNesse. Gojko Adzic

SLIM and the future of FitNesse. Gojko Adzic SLIM and the future of FitNesse Gojko Adzic http://gojko.net gojko@gojko.com http://twitter.com/gojkoadzic Is FIT dead? FIT/FitNesse were The acceptance testing toolkit Java FIT has not been developed

More information

Introduction to Eclipse

Introduction to Eclipse Introduction to Eclipse Getting started with Eclipse 05/02/2010 Prepared by Chris Panayiotou for EPL 233 1 What is Eclipse? o Eclipse is an open source project http://www.eclipse.org Consortium of companies,

More information

Test-Driven Porting. 1 Introduction

Test-Driven Porting. 1 Introduction Test-Driven Porting Ralph Bohnet ClearStream Consulting 3710 205 5 th Ave. SW Calgary, AB T2P 2V7 Canada 1-403-264-5840 ralph@clrstream.com Gerard Meszaros ClearStream Consulting 87 Connaught Dr NW Calgary,

More information

Advanced Testing. Testing Tools. Software Reliability and Testing

Advanced Testing. Testing Tools. Software Reliability and Testing Advanced Testing Testing Tools Software Reliability and Testing 2006 1 Testing activities and tools Some open source testing tools Some commercial/closed source testing tools Summary Plan Software Reliability

More information

Tools for Unit Test JUnit

Tools for Unit Test JUnit Tools for Unit Test JUnit Stuart Anderson JUnit is a framework for writing tests JUnit 1 Written by Erich Gamma (Design Patterns) and Kent Beck (extreme Programming) JUnit uses Java s reflection capabilities

More information

WHITEPAPER. API Testing with GreenPepper Challenges and Best Practices. A White Paper by: Dhaval Koradia / Ashwini Khaladkar September, 2013

WHITEPAPER. API Testing with GreenPepper Challenges and Best Practices. A White Paper by: Dhaval Koradia / Ashwini Khaladkar September, 2013 WHITEPAPER API Testing with GreenPepper Challenges and Best Practices A White Paper by: Dhaval Koradia / Ashwini Khaladkar September, 2013 www.datamatics.com Copyrights 2013 Datamatics Global Services

More information

Introduction to Eclipse

Introduction to Eclipse Introduction to Eclipse Ed Gehringer Using (with permission) slides developed by Dwight Deugo (dwight@espirity.com) Nesa Matic (nesa@espirity.com( nesa@espirity.com) Sreekanth Konireddygari (IBM Corp.)

More information

SAFEREFACTOR Tool for Checking Refactoring Safety

SAFEREFACTOR Tool for Checking Refactoring Safety SAFEREFACTOR Tool for Checking Refactoring Safety Gustavo Soares 1, Diego Cavalcanti 1, Rohit Gheyi 1, Tiago Massoni 1, Dalton Serey 1,Márcio Cornélio 2 1 Department of Systems and Computing UFCG 2 Department

More information

Preface p. 1 Who This Book Is For p. 2 Goals of This Book p. 3 What Is Not Covered p. 5 What Is Covered (Technologies and Process) p.

Preface p. 1 Who This Book Is For p. 2 Goals of This Book p. 3 What Is Not Covered p. 5 What Is Covered (Technologies and Process) p. Preface p. 1 Who This Book Is For p. 2 Goals of This Book p. 3 What Is Not Covered p. 5 What Is Covered (Technologies and Process) p. 5 How This Book Is Organized p. 6 About the Code For This Book p. 6

More information

TOOLS AND TECHNIQUES FOR TEST-DRIVEN LEARNING IN CS1

TOOLS AND TECHNIQUES FOR TEST-DRIVEN LEARNING IN CS1 TOOLS AND TECHNIQUES FOR TEST-DRIVEN LEARNING IN CS1 ABSTRACT Test-Driven Development is a design strategy where a set of tests over a class is defined prior to the implementation of that class. The goal

More information

XP Evolution Rachel Davies

XP Evolution Rachel Davies XP Evolution Rachel Davies Sept 10, 2005 2005 Agile Experience Ltd. 1 What is XP? 1.eXtreme Programming (XP) is so named because it raises practices that improve code quality to extreme levels 2. XP is

More information

Documentation of Eclipse Applications with DITA

Documentation of Eclipse Applications with DITA Experts in Information Management Solutions and Services Documentation of Eclipse Applications with DITA Eclipse Embedded Day Stuttgart 2010 Gunthilde Sohn, instinctools GmbH Agenda Challenges in Software

More information

Documentation of Eclipse Applications with DITA

Documentation of Eclipse Applications with DITA Experts in Information Management Solutions and Services Documentation of Eclipse Applications with DITA Eclipse Embedded Day Stuttgart 2010 Gunthilde Sohn, instinctools GmbH 24.06.10 Agenda Challenges

More information

TEST DRIVEN DEVELOPMENT

TEST DRIVEN DEVELOPMENT PERSONAL SOFTWARE ENGINEERING PROJECT: TEST DRIVEN DEVELOPMENT Kirsi Männistö kirsi.mannisto@welho.com 60114V PSEA_Test_driven_development.rtf Page 1 of 1 RoadRunners Change history Version Description

More information

API Testing with GreenPepper Challenges and Best Practices

API Testing with GreenPepper Challenges and Best Practices Pa g e 1 API Testing with GreenPepper Challenges and Best Practices Software Testing Conference, India, 2013 Dhaval S. Koradia Ashwini A. Khaladkar Datamatics Global Services Limited, Mumbai, India. Pa

More information

(800) Toll Free (804) Fax Introduction to Java and Enterprise Java using Eclipse IDE Duration: 5 days

(800) Toll Free (804) Fax   Introduction to Java and Enterprise Java using Eclipse IDE Duration: 5 days Course Description This course introduces the Java programming language and how to develop Java applications using Eclipse 3.0. Students learn the syntax of the Java programming language, object-oriented

More information

Analysis of the Test Driven Development by Example

Analysis of the Test Driven Development by Example Computer Science and Applications 1 (2013) 5-13 Aleksandar Bulajic and Radoslav Stojic The Faculty of Information Technology, Metropolitan University, Belgrade, 11000, Serbia Received: June 18, 2013 /

More information

TRex The Refactoring and Metrics Tool for TTCN-3 Test Specifications

TRex The Refactoring and Metrics Tool for TTCN-3 Test Specifications TRex The Refactoring and Metrics Tool for TTCN-3 Test Specifications Paul Baker, Dominic Evans Motorola Labs, Jays Close, Viables Industrial Estate, Basingstoke, Hampshire, RG22 4PD, UK {paul.baker,vnsd001}@motorola.com

More information

Object Oriented Software Design - I

Object Oriented Software Design - I Object Oriented Software Design - I Unit Testing Giuseppe Lipari http://retis.sssup.it/~lipari Scuola Superiore Sant Anna Pisa November 28, 2011 G. Lipari (Scuola Superiore Sant Anna) Unit Testing November

More information

CDT C++ Refactorings

CDT C++ Refactorings HSR University of Applied Sciences Rapperswil Departement of Computer Science - Institute for Software CDT C++ Refactorings Bachelor Thesis: Spring Term 2010 Matthias Indermühle mindermu@hsr.ch Roger Knöpfel

More information

Semantic Web T LS Update

Semantic Web T LS Update Semantic Web Tools Update Semantic Web T LS Update Presented at the DARPA DAML PI Conference 25 May 04 By Troy Self Jeremy Lerner Ryan Owens InfoEther Agenda Semantic Web Central Ryan Owens InfoEther Semantic

More information

Basic Keywords Practice Session

Basic Keywords Practice Session Basic Keywords Practice Session Introduction In this article from my free Java 8 course, we will apply what we learned in my Java 8 Course Introduction to our first real Java program. If you haven t yet,

More information

Behaviour Driven Development with Java. Nikolay Vasilev 15 July 2011

Behaviour Driven Development with Java. Nikolay Vasilev 15 July 2011 Behaviour Driven Development with Java Nikolay Vasilev 15 July 2011 Content What BDD is? Jbehave JBehave and Selenium Jbehave Pros and Cons Questions and Answers References 2 BDD 3 Test-Driven Development

More information

J, K F, G, H. Library/framework, 168 LIKE() predicate, 142 Load-balancing server (LBS), 120 Lock on check out (LOCO), 1

J, K F, G, H. Library/framework, 168 LIKE() predicate, 142 Load-balancing server (LBS), 120 Lock on check out (LOCO), 1 Index A ADO.NET driver coding implementation, 153 154 dr.read() method, 155 finally block, 155 IDataReader, 155 interface variables, 155 loose-coupling, 153 MySql assembly, 153 try-catch blocks, 155 using

More information

STQA Mini Project No. 1

STQA Mini Project No. 1 STQA Mini Project No. 1 R (2) C (4) V (2) T (2) Total (10) Dated Sign 1.1 Title Mini-Project 1: Create a small application by selecting relevant system environment/ platform and programming languages.

More information

Software Quality in a Modern Development Team. Presented by Timothy Bauguess and Marty Lewis

Software Quality in a Modern Development Team. Presented by Timothy Bauguess and Marty Lewis Software Quality in a Modern Development Team Presented by Timothy Bauguess and Marty Lewis High-Quality Software Who benefits? End users Development Stakeholders Components of Software Quality Structural

More information

Index. BigBadGuiTools (BBGT), 186 Business logic and data layer, 32 Business requirements

Index. BigBadGuiTools (BBGT), 186 Business logic and data layer, 32 Business requirements Index A ADO.NET, SQL driver documentation, 171 dr.read() method, 173 ExecuteNonQuery method, 173 IDbDataParameter interface, 174 Interface variables, 173 MySqlDataReader, 173 MySql reference, 170 placeholders,

More information

Understading Refactorings

Understading Refactorings Understading Refactorings Ricardo Terra terra@dcc.ufmg.br Marco Túlio Valente mtov@dcc.ufmg.br UFMG, 2010 UFMG, 2010 Understanding Refactorings 1 / 36 Agenda 1 Overview 2 Refactoring 3 Final Considerations

More information

TDD who pays? Test Driven Development in embedded java projects an unusual insight in usage scenarios and budgets

TDD who pays? Test Driven Development in embedded java projects an unusual insight in usage scenarios and budgets TDD who pays? Test Driven Development in embedded java projects an unusual insight in usage scenarios and budgets Christine Mitterbauer cbo@microdoc.com About us MicroDoc Founded in 1991, privately owned

More information

AgileBill Krebs. Agile3d Academy. Enterprise Open Distributed. Agile Quality. Years 30 Books 240. Certs 8. Badges 6. O, Rq, Pm, Qa, Ns, Agile 01

AgileBill Krebs. Agile3d Academy. Enterprise Open Distributed. Agile Quality. Years 30 Books 240. Certs 8. Badges 6. O, Rq, Pm, Qa, Ns, Agile 01 Agile3d Academy AgileBill Krebs Agile Quality Enterprise Open Distributed Years 30 Books 240 Certs 8 Badges 6 O, Rq, Pm, Qa, Ns, Agile 01 Agile Testing: A Practical Guide for Testers and Agile Teams By

More information

When Modeling meets Productivity. Sven Efftinge - itemis

When Modeling meets Productivity. Sven Efftinge - itemis When Modeling meets Productivity Sven Efftinge - itemis I Eclipse JDT I GIT So what s the Problem? It s the Language not the Tooling! Level of Abstraction Reuse existing, proven technology and apply

More information

Test suites Obviously you have to test your code to get it working in the first place You can do ad hoc testing (testing whatever occurs to you at

Test suites Obviously you have to test your code to get it working in the first place You can do ad hoc testing (testing whatever occurs to you at JUnit Test suites Obviously you have to test your code to get it working in the first place You can do ad hoc testing (testing whatever occurs to you at the moment), or You can build a test suite (a thorough

More information

SELENIUM. SELENIUM COMPONENTS Selenium IDE Selenium RC Selenium Web Driver Selenium Grid

SELENIUM. SELENIUM COMPONENTS Selenium IDE Selenium RC Selenium Web Driver Selenium Grid INTRODUCTION TO AUTOMATION Testing What is automation testing? Different types of Automation Tools 1. Functional Testing Tools 2. Test Management Tools 3. Performance Testing Tools Advantages of automation

More information

Automated Unit Testing A Practitioner's and Teacher's Perspective

Automated Unit Testing A Practitioner's and Teacher's Perspective Automated Unit Testing A Practitioner's and Teacher's Perspective Prof. Peter Sommerlad HSR - Hochschule für Technik Rapperswil Institute for Software Oberseestraße 10, CH-8640 Rapperswil peter.sommerlad@hsr.ch

More information

Outline. Tutorial III. Eclipse. Basics. Eclipse Plug-in Feature

Outline. Tutorial III. Eclipse. Basics. Eclipse Plug-in Feature Outline Tutorial III. Eclipse Basics Eclipse Plug-in feature, MVC How to build Plug-ins Exploring Eclipse source code for Editor Using CVS inside Eclipse Eclipse JDK Tips Basics Eclipse projects: Eclipse

More information

Test Driven Development TDD

Test Driven Development TDD Test Driven Development TDD Testing Testing can never demonstrate the absence of errors in software, only their presence Edsger W. Dijkstra (but it is very good at the latter). Testing If it's worth building,

More information

Learning Objectives of CP-SAT v 1.3

Learning Objectives of CP-SAT v 1.3 Learning Objectives of CP-SAT v 1.3 Knowledge with experience is power; certification is just a by-product What is CP-SAT? CP-SAT stands for Certified Practitioner Selenium Automation Testing certification

More information

Getting the Most from Eclipse

Getting the Most from Eclipse Getting the Most from Eclipse Darin Swanson IBM Rational Portland, Oregon Darin_Swanson@us.ibm.com March 17, 2005 What is Eclipse An extensible tools platform Out-of-box function and quality to attract

More information

Marthon User Guide. Page 1 Copyright The Marathon developers. All rights reserved.

Marthon User Guide. Page 1 Copyright The Marathon developers. All rights reserved. 1. Overview Marathon is a general purpose tool for both running and authoring acceptance tests geared at the applications developed using Java and Swing. Included with marathon is a rich suite of components

More information

Software Design and Analysis CSCI 2040

Software Design and Analysis CSCI 2040 Software Design and Analysis CSCI 2040 Introduce two important development practices in the context of the case studies: Test-Driven Development Refactoring 2 Logic is the art of going wrong with confidence

More information

Learning Objectives of CP-SAT v 1.31

Learning Objectives of CP-SAT v 1.31 Learning Objectives of CP-SAT v 1.31 Knowledge with experience is power; certification is just a by-product What is CP-SAT? CP-SAT stands for Certified Professional Selenium Automation Testing certification

More information

Building XML-based content for Eclipse Help: a real experience. Christian Kurzke Gustavo de Paula Daniel Moura

Building XML-based content for Eclipse Help: a real experience. Christian Kurzke Gustavo de Paula Daniel Moura Building XML-based content for Eclipse Help: a real experience Christian Kurzke Gustavo de Paula Daniel Moura 2008 by Motorola Inc.; made available under the EPL v1.0 Match 19th, 2008 Agenda MOTODEV for

More information

Refactoring. Paul Jackson. School of Informatics University of Edinburgh

Refactoring. Paul Jackson. School of Informatics University of Edinburgh Refactoring Paul Jackson School of Informatics University of Edinburgh Refactoring definition Refactoring (noun) is a change made to the internal structure of software to make it easier to understand,

More information

First Steps User s Guide

First Steps User s Guide First Steps User s Guide TTplugin-TTmex This user s guide helps you to download and install TTworkbench, and guides you through configuring and running the built-in example in TTmex plugin. 1. Requirements

More information

Technology Background Development environment, Skeleton and Libraries

Technology Background Development environment, Skeleton and Libraries Technology Background Development environment, Skeleton and Libraries Christian Kroiß (based on slides by Dr. Andreas Schroeder) 18.04.2013 Christian Kroiß Outline Lecture 1 I. Eclipse II. Redmine, Jenkins,

More information

Technischer Bericht. TRex The Refactoring and Metrics Tool for TTCN-3 Test Specifications

Technischer Bericht. TRex The Refactoring and Metrics Tool for TTCN-3 Test Specifications Georg-August-Universität Göttingen Institut für Informatik ISSN 1611-1044 Nummer IFI-TB-2006 02 Technischer Bericht TRex The Refactoring and Metrics Tool for TTCN-3 Test Specifications Benjamin Zeiss,

More information

Tools for Unit Test - JUnit

Tools for Unit Test - JUnit Tools for Unit Test - JUnit Conrad Hughes School of Informatics Slides thanks to Stuart Anderson 15 January 2010 Software Testing: Lecture 2 1 JUnit JUnit is a framework for writing tests Written by Erich

More information

Eclipse Introduction. Zeng Yu

Eclipse Introduction. Zeng Yu Eclipse Introduction Zeng Yu yuzeng@cn.ibm.com IBM Software Group 2004 5 21 1 Presentation Plan What is Eclipse Brief history of Eclipse Concept of Plug-ins Platform Architecture Workspace Workbench (SWT,

More information

How to generate new EMF model refactorings using Java code

How to generate new EMF model refactorings using Java code How to generate new EMF model refactorings using Java code Thorsten Arendt January 14, 2011 This manual presents the application of an EMF model refactoring using EMF Refactor. More precisely, we demonstrate

More information

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

Agile Manifesto & XP. Topics. Rapid software development. Agile methods. Chapter ) What is Agile trying to do? Topics 1) What is trying to do? Manifesto & XP Chapter 3.1-3.3 2) How to choose plan-driven vs? 3) What practices go into (XP) development? 4) How to write tests while writing new code? CMPT 276 Dr. B.

More information

Design of Acceptance Test Process with the Application of Agile Development Methodology. Abstract

Design of Acceptance Test Process with the Application of Agile Development Methodology. Abstract , pp.343-352 http://dx.doi.org/10.14257/ijca.2016.9.2.32 Design of Acceptance Test Process with the Application of Agile Development Methodology Jung-Ah Shim 1, Hyun-Jung Kwon 2, Hyun-ju Jung 3 and Moon-Sung

More information

DAT159 Refactoring (Introduction)

DAT159 Refactoring (Introduction) DAT159 Refactoring (Introduction) Volker Stolz 1, with contributions by: Larissa Braz 2, Anna M. Eilertsen 3, Fernando Macías 1, Rohit Gheyi 2 Western Norway University of Applied Sciences, Universidade

More information

Continuous Testing in Eclipse. David Saff, Michael D. Ernst MIT CSAIL etx 2004, Barcelona, Spain

Continuous Testing in Eclipse. David Saff, Michael D. Ernst MIT CSAIL etx 2004, Barcelona, Spain Continuous Testing in Eclipse David Saff, Michael D. Ernst MIT CSAIL etx 2004, Barcelona, Spain Continuous testing: inspired by continuous compilation Continuous compilation, as in Eclipse, notifies the

More information

Automated testing in Agile SW development

Automated testing in Agile SW development T-76.5613 Software Testing and Quality Assurance Automated testing in Agile SW development Seppo Sahi SoberIT seppo.sahi@soberit.hut.fi 2.10.2006 Introduction Agile methods have strong emphasis on practices

More information

Agile Engineering. and other stuff I m working on

Agile Engineering. and other stuff I m working on Agile Engineering and other stuff I m working on 2008 Gilb conference on Risk Ryan Shriver > Managing Consultant > rshriver@dominiondigital.com Leader in IT Performance Improvement > www.dominiondigital.com

More information

Designing a Development Environment for Logic and Multi-Paradigm Programming

Designing a Development Environment for Logic and Multi-Paradigm Programming Designing a Development Environment for Logic and Multi-Paradigm Programming Giulio Piancastelli 1 and Enrico Denti 2 1 DEIS Alma Mater Studiorum Università di Bologna via Venezia 52, I-47023 Cesena, FC,

More information

Eclipse Summit Europe Summary

Eclipse Summit Europe Summary Eclipse Summit Europe 2007 Symposia Integrating Test-Driven Development in the Development Process Summary Christine Mitterbauer, George Mesesan MicroDoc Computersysteme GmbH Elektrastrasse 6 D-81925 München

More information

Chapter 9. Introduction to High-Level Language Programming. INVITATION TO Computer Science

Chapter 9. Introduction to High-Level Language Programming. INVITATION TO Computer Science Chapter 9 Introduction to High-Level Language Programming INVITATION TO Computer Science 1 Objectives After studying this chapter, students will be able to: Explain the advantages of high-level programming

More information

Eclipse CDT refactoring overview and internals

Eclipse CDT refactoring overview and internals Eclipse CDT refactoring overview and internals Michael Rüegg Institute For Software University of Applied Sciences Rapperswil Parallel Tools Platform (PTP) Workshop, Chicago September, 2012 Outline 1 Refactoring

More information

The Eclipse Parallel Tools Platform

The Eclipse Parallel Tools Platform May 1, 2012 Toward an Integrated Development Environment for Improved Software Engineering on Crays Agenda 1. What is the Eclipse Parallel Tools Platform (PTP) 2. Tour of features available in Eclipse/PTP

More information

InsectJ: A Generic Instrumentation Framework for Collecting Dynamic Information within Eclipse

InsectJ: A Generic Instrumentation Framework for Collecting Dynamic Information within Eclipse InsectJ: A Generic Instrumentation Framework for Collecting Dynamic Information within Eclipse Arjan Seesing and Alessandro Orso Georgia Institute of Technology This work was supported in part by an IBM

More information

EECS 4313 Software Engineering Testing

EECS 4313 Software Engineering Testing EECS 4313 Software Engineering Testing Topic 03: Test automation / JUnit - Building automatically repeatable test suites Zhen Ming (Jack) Jiang Acknowledgement Some slides are from Prof. Alex Orso Relevant

More information

Object Constraint Language (MDT OCL) 1.3 Galileo Simultaneous Release Review

Object Constraint Language (MDT OCL) 1.3 Galileo Simultaneous Release Review Object Constraint Language (MDT OCL) 1.3 Galileo Simultaneous Release Review June 10, 2009 Agenda Talking Points Features Non-Code Aspects APIs Architectural Issues End-of-life Bugzilla Standards UI Usability

More information

MYETL: A JAVA SOFTWARE TOOL TO EXTRACT, TRANSFORM, & LOAD YOUR BUSINESS

MYETL: A JAVA SOFTWARE TOOL TO EXTRACT, TRANSFORM, & LOAD YOUR BUSINESS 10.1515/cris-2015-0011 MYETL: A JAVA SOFTWARE TOOL TO EXTRACT, TRANSFORM, & LOAD YOUR BUSINESS MICHELE NUOVO The project follows the development of a Java Software Tool that extracts data from Flat File

More information

COMP220: SOFTWARE DEVELOPMENT TOOLS COMP285: COMPUTER AIDED SOFTWARE DEVELOPMENT

COMP220: SOFTWARE DEVELOPMENT TOOLS COMP285: COMPUTER AIDED SOFTWARE DEVELOPMENT COMP220: SOFTWARE DEVELOPMENT TOOLS COMP285: COMPUTER AIDED SOFTWARE DEVELOPMENT Sebastian Coope coopes@liverpool.ac.uk www.csc.liv.ac.uk/~coopes/comp220/ www.csc.liv.ac.uk/~coopes/comp285/ COMP 285/220

More information

The Eclipse Rich Ajax Platform

The Eclipse Rich Ajax Platform The Eclipse Rich Ajax Platform Frank Appel RAP Tech Lead fappel@innoopract.com Eclipse RAP 1.1 Copyright Innoopract made available under the EPL 1.0 page: 1 The Innoopract pitch Integration & delivery

More information

Tuesday, November 15. Testing

Tuesday, November 15. Testing Tuesday, November 15 1 Testing Testing Waterfall model show testing as an activity or box In practice, testing is performed constantly There has never been a project where there was too much testing. Products

More information

Powering EII with MOA

Powering EII with MOA Powering EII with MOA Brad Wright Randall M. Hauch January 8, 2004 Topics What is an MOA and why is it important? EII as a case study for MOA MOA in action, a demonstration Attributes of an MOA Miscellaneous

More information

Software Quality. Richard Harris

Software Quality. Richard Harris Software Quality Richard Harris Part 1 Software Quality 143.465 Software Quality 2 Presentation Outline Defining Software Quality Improving source code quality More on reliability Software testing Software

More information

Compositional Model Based Software Development

Compositional Model Based Software Development Compositional Model Based Software Development Prof. Dr. Bernhard Rumpe http://www.se-rwth.de/ Seite 2 Our Working Groups and Topics Automotive / Robotics Autonomous driving Functional architecture Variability

More information

... is a Programming Environment (PE)?... is Generic Language Technology (GLT)?

... is a Programming Environment (PE)?... is Generic Language Technology (GLT)? Introduction to Generic Language Technology Today Mark van den Brand Paul Klint Jurgen Vinju Tools for software analysis and manipulation Programming language independent (parametric) The story is from

More information

Software Engineering. Unit Testing Gobo Eiffel Test and Clover

Software Engineering. Unit Testing Gobo Eiffel Test and Clover Chair of Software Engineering Software Engineering Prof. Dr. Bertrand Meyer March 2007 June 2007 Unit Testing Gobo Eiffel Test and Clover Agenda for Today 1. Testing 2. Main Concepts 3. Unit Testing Gobo

More information

Agile Tester Foundation E-learning Course Outline

Agile Tester Foundation E-learning Course Outline Foundation E-learning Course Outline General Description This course provides testers and test managers with an understanding of the fundamentals of testing on agile projects. Attendees will learn how

More information

EGF Creation Review. Benoît Langlois - Thales/TCS/EPM. April 22, 2009

EGF Creation Review. Benoît Langlois - Thales/TCS/EPM. April 22, 2009 EGF Creation Review Benoît Langlois - Thales/TCS/EPM April 22, 2009 Communication Channel URL: http://www.eclipse.org/newsportal/thread.php?group=eclipse.egf Agenda Executive Summary Requirements Mentors

More information

Software Engineering I (02161)

Software Engineering I (02161) Software Engineering I (02161) Week 3 Assoc. Prof. Hubert Baumeister DTU Compute Technical University of Denmark Spring 2013 Recap Requirements Engineering user- / system requirements functional- / non-functional

More information

Refactoring with Eclipse

Refactoring with Eclipse Refactoring with Eclipse Seng 371 Lab 8 By Bassam Sayed Based on IBM article Explore refactoring functions in Eclipse JDT by Prashant Deva Code Refactoring Code refactoring is a disciplined way to restructure

More information

Implementing evolution: Refactoring

Implementing evolution: Refactoring 2IS55 Software Evolution Sources Implementing evolution: Refactoring Alexander Serebrenik / SET / W&I 17-5-2010 PAGE 1 Last week Problem: changing code is difficult Assignment 6 Deadline: Today Assignment

More information

Eclipse Kick Start. Copyright 2005 by Sams Publishing. International Standard Book Number:

Eclipse Kick Start. Copyright 2005 by Sams Publishing. International Standard Book Number: Eclipse Kick Start Copyright 2005 by Sams Publishing International Standard Book Number: 0672326108 Warning and Disclaimer Every effort has been made to make this book as complete and as accurate as possible,

More information

A Comparison of Software Refactoring Tools

A Comparison of Software Refactoring Tools A Comparison of Software Refactoring Tools Jocelyn Simmonds Ecole des Mines de Nantes jocelyn.simmonds@eleve.emn.fr Tom Mens Vrije Universiteit Brussel tom.mens@vub.ac.be November 25, 2002 Abstract The

More information

A few more things about Agile and SE. Could help in interviews, but don t try to bluff your way through

A few more things about Agile and SE. Could help in interviews, but don t try to bluff your way through A few more things about Agile and SE Could help in interviews, but don t try to bluff your way through 1 Refactoring How to do it, where it fits in http://www.cse.ohio-state.edu/~crawfis/cse3902/index.htm

More information

Lab Exercise Test First using JUnit

Lab Exercise Test First using JUnit Lunds tekniska högskola Datavetenskap, Nov, 2017 Görel Hedin/Ulf Asklund EDAF45 Programvaruutveckling i grupp projekt Lab Exercise Test First using JUnit Goal This lab is intended to demonstrate basic

More information

Designed in collaboration with Infosys Limited

Designed in collaboration with Infosys Limited Proposal for Introduction of New Industry Course in Engineering Curriculum Agile Software Development - Deliver Software Better Everyday Designed in collaboration with Infosys Limited Version 1-2016 Contents

More information

SEAMLESS INTEGRATION OF METAEDIT+ AND ECLIPSE TO COMBINE MODELING AND CODING

SEAMLESS INTEGRATION OF METAEDIT+ AND ECLIPSE TO COMBINE MODELING AND CODING Olli Wirpi SEAMLESS INTEGRATION OF METAEDIT+ AND ECLIPSE TO COMBINE MODELING AND CODING Master s Thesis in Information Technology (Software engineering) University of Jyväskylä 10/18/2012 Department of

More information

2nd Belgian-Dutch workshop on Software Evolution

2nd Belgian-Dutch workshop on Software Evolution 2nd Belgian-Dutch workshop on Software Evolution BENEVOL 2004 8-9 July 2004 University of Antwerp Belgium Problem statement More and better tool support needed for software evolution traceability management

More information

Acceptance Testing. How CSlim and FitNesse Can Help You Test Your Embedded System. Doug Bradbury Software Craftsman, 8th Light

Acceptance Testing. How CSlim and FitNesse Can Help You Test Your Embedded System. Doug Bradbury Software Craftsman, 8th Light Acceptance Testing How CSlim and FitNesse Can Help You Test Your Embedded System Doug Bradbury Software Craftsman, 8th Light 1 Tutorial Environment git clone git://github.com/dougbradbury/c_learning.git

More information

Software Engineering I (02161)

Software Engineering I (02161) Software Engineering I (02161) Week 8 Assoc. Prof. Hubert Baumeister DTU Compute Technical University of Denmark Spring 2016 Last Week State machines Layered Architecture: GUI Layered Architecture: Persistency

More information

CMSC 132: OBJECT-ORIENTED PROGRAMMING II

CMSC 132: OBJECT-ORIENTED PROGRAMMING II CMSC 132: OBJECT-ORIENTED PROGRAMMING II Program Testing Department of Computer Science University of Maryland, College Park Debugging Is Harder Than Coding! Debugging is twice as hard as writing the code

More information

J2EEML: Applying Model Driven Development to Autonomic Enterprise Java Bean Systems

J2EEML: Applying Model Driven Development to Autonomic Enterprise Java Bean Systems J2EEML: Applying Model Driven Development to Autonomic Enterprise Java Bean Systems Jules White jules@dre.vanderbilt.edu Institute for Software Integrated Systems (ISIS) Vanderbilt University Nashville,

More information