JDemo - Lightweight Exploratory Developer Testing



Similar documents
Java course - IAG0040. Unit testing & Agile Software Development

Testing Tools Content (Manual with Selenium) Levels of Testing

Unit Testing webmethods Integrations using JUnit Practicing TDD for EAI projects

Introduction to Agile Software Development Process. Software Development Life Cycles

MarathonITE. GUI Testing for Java/Swing Applications

Effective unit testing with JUnit

Mobile Test Automation Framework

Continuous Integration in Kieker

Chapter 1: Web Services Testing and soapui

Jemmy tutorial. Introduction to Jemmy testing framework. Pawel Prokop. March 14,

Unit testing with JUnit and CPPUnit. Krzysztof Pietroszek

Unit Testing JUnit and Clover

Unit Testing with FlexUnit. by John Mason

We ( have extensive experience in enterprise and system architectures, system engineering, project management, and

+ Introduction to JUnit. IT323 Software Engineering II By: Mashael Al-Duwais

Testing. Chapter. A Fresh Graduate s Guide to Software Development Tools and Technologies. CHAPTER AUTHORS Michael Atmadja Zhang Shuai Richard

Continuous Delivery. Ariel Alonso, IPC

Agile Testing. What Students Learn

Agile Testing (October 2011) Page 1. Learning Objectives for Agile Testing

webmunit for WebMethods Integration Server

Quality Cruising. Making Java Work for Erlang. Erik (Happi) Stenman

JUnit. Introduction to Unit Testing in Java

Continuous Integration: Aspects in Automation and Configuration Management

Python as a Testing Tool. Chris Withers

TeleScope Digital Asset Management Solution Overview. Campaigns Can Only Move as Fast as Their Content

RUP. Development Process. Iterative Process (spiral) Waterfall Development Process. Agile Development Process. Well-known development processes

A-Team Tech Talk Series. SOA Unit Testing. Olivier LeDiouris, Oracle A-Team

Architecture Rules Enforcement and Governance Using Aspects

Automated Integration Testing & Continuous Integration for webmethods

Test Driven Development

Escaping the Works-On-My-Machine badge Continuous Integration with PDE Build and Git

Unit Testing. and. JUnit

The Agile Movement An introduction to agile software development

"Testing in the DevOps World of Continuous Delivery"

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

Table of Contents. LESSON: The JUnit Test Tool...1. Subjects...2. Testing What JUnit Provides...4. JUnit Concepts...5

Advanced Test-Driven Development

Effective feedback from quality tools during development

Author: Sascha Wolski Sebastian Hennebrueder Tutorials for Struts, EJB, xdoclet and eclipse.

AGILE vs. WATERFALL METHODOLOGIES

E-vote 2011 Version: 1.0 Testing and Approval Date: 26/10/2009. E-vote SSA-U Appendix 5 Testing and Approval Project: E-vote 2011

Agile.NET Development Test-driven Development using NUnit

Practical QA in a Nutshell

Continuous Delivery. Alejandro Ruiz

Organising Massive Test bol.com. Jeroen Ruijgers and Viktor Clerc

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

Domain Specific Languages for Selenium tests

Tutorial IV: Unit Test

Test-Driven Development and Unit Testing with Parasoft Concerto

Building Applications with Protégé: An Overview. Protégé Conference July 23, 2006

Testability of Dependency injection

TESTING WITH JUNIT. Lab 3 : Testing

Going Interactive: Combining Ad-Hoc and Regression Testing

Agile Testing Principles and Best Practices. Progress Software, Hyderabad, India

JUnit Automated Software Testing Framework. Jeff Offutt. SWE 437 George Mason University Thanks in part to Aynur Abdurazik. What is JUnit?

Test Driven Development

Unit Testing and JUnit

Testing in Agile methodologies easier or more difficult?

ICAgile Learning Roadmap Agile Testing Track

Apache OpenOffice Automated Testing. by Liu Zhe (presented by Herbert Dürr)

Agile Software Engineering Practice to Improve Project Success

Microsoft Modern ALM. Gilad Levy Baruch Frei

Case Studies of Running the Platform. NetBeans UML Servlet JSP GlassFish EJB

Testing, Debugging, and Verification

Automated Web Testing with Selenium

eform Suite for TeleForm Create and Process Intelligent eforms in PDF and HTML

Quality Assurance - Karthik

DATA DONE RIGHT. Applying Agile and XP Concepts. #DataDoneRight

Group Assignment Agile Development Processes 2012

Performance Analysis of webmethods Integrations using Apache JMeter Information Guide for JMeter Adoption

Agile Testing: The Agile Test Automation Pyramid

Agile Development Overview

Agile for Product Owners

QEx Whitepaper. Automation Testing Pillar: Selenium. Naveen Saxena. AuthOr:

AUTOMATING THE WEB APPLICATIONS USING THE SELENIUM RC

CHAPTER 3 : AGILE METHODOLOGIES. 3.3 Various Agile Software development methodologies. 3.4 Advantage and Disadvantage of Agile Methodology

Case Study. Software Product Reengineering, Maintenance, Support Services Java based Enterprise Product.

Approach of Unit testing with the help of JUnit

DevOps for. Developers. Michael Huttermann. Apress-

Challenges in adopting Agile

Automating Functional Tests Using Selenium

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

Role of Agile Methodology in Software Development

Topics covered. Agile methods Plan-driven and agile development Extreme programming Agile project management Scaling agile methods

Agile Power Tools. Author: Damon Poole, Chief Technology Officer

}w!"#$%&'()+,-./012345<ya

Test Driven Development Part III: Continuous Integration Venkat Subramaniam

DMM301 Benefits and Patterns of a Logical Data Warehouse with SAP BW on SAP HANA

Transcription:

JDemo Lightweight Exploratory Developer Testing Ilja Preuß preuss@disy.net disy Informationssysteme GmbH, Karlsruhe, Germany Agile 2008

Motivation Introduction to JDemo Demonstration Experiences Demos as Tests More Features Summary and Advice

Motivation Rich client application with complex user interface.

Motivation hard to test (automatically): aesthetics usability

Motivation manual (exploratory) testing

Motivation seeing your creation in action motivator

Motivation problem: to see a specific component in action start application prepare needed scenario

Motivation known solutions: interactive unit tests hack, not permanent, brittle write main methods lots of boiler plate code, unorganized

Questions: What would a JUnit-like framework for exploratory testing look like? What would using such a framework be like?

JUnit vs. JDemo JUnit JDemo TestCase... DemoCase test... demo...

JUnit vs. JDemo JUnit arrange act assert JDemo arrange show explore

Let s try it! The Test/Code Cycle in XP William C. Wake http://www.xp123.com/xplor/xp0001/index.shtml

Experience writing demos increases flow fosters decoupling and reusability creates executable documentation gives feedback on usability

Case Study 27 demos

Case Study startup/arrangement times: application: 45s demo: 4s

Case Study 61 demo-starts, 62 application starts 1 application start (hypothetical)

Demos as Smoketests problem: demos are executed in chunks unused code breaks demos break over time

Demos as Smoketests idea: tests are executed regularly, as part of continuous integration automatically convert demos to smoke tests and execute them as part of the projects test suite

More Features setup / teardown suites of demos @Demo annotation specification of timeout show source code run with different look and feels

Even More Features demos for AWT, SWT, files, sound... automated creation of screen shots via Ant task

Open Questions collaboration with QA/technical writers demos for web applications web demo runner (applet?)

Summary exploratory testing is a valuable part of the development cycle tool support can help integrate exploratory testing more tightly into the development work JDemo is a lightweight open source framework for Java that is aimed at providing that support

Some Small Advice first learn Test Driven Development then learn to test-drive user interfaces only then take a look at JDemo

Thanks! preuss@disy.net www.jdemo.de