[EclipseCon NA 2014] Integration tests for RCP made easy with SWTBot and Tycho

40 %
60 %
Information about [EclipseCon NA 2014] Integration tests for RCP made easy with SWTBot and...
Technology

Published on March 19, 2014

Author: mickaelistria

Source: slideshare.net

Description

https://www.eclipsecon.org/na2014/session/integration-tests-rcp-made-easy-swtbot-and-tycho



Although we live in a modular world, it will always make sense to write and run integration-tests that allow the testing of the whole application, and not just a module. These integration-tests are often the only way to test real usage scenarios that rely on multiple modules and that can be affected by other modules and by the packaging of your application.

Some recent improvements have happened in the Eclipse world to make it easier to produce and run integration tests for RCP applications, reducing significantly their cost while keeping their coverage high, and conformance to real use-cases and ability to spot bugs. This presentation will show how SWTBot Test Recorder can be used to speed up the creation of valid integration-tests against your RCP product, and how Tycho can be used to run it easily on any existing and packaged RCP application, the same as the one your users will get.

Integration-tests for RCP applications made easy with SWTBot and Tycho Mickael Istria @mickaelistria EclipseCon NA 2014 CC-BY 4.0

Integration-tests ● Run on the whole application ● Interact with application at the user-level, directly with exposed UI elements ● Basically can repeat and verify usage scenarios Synonyms/related? UI-test, Functional-test, usage-test, macro, scenario, bot, monkey...

RCP app already exists ● Challenges: – How to write tests targeting existing RCP app? PDE Target-Platform – Anything easier and more efficient to produce tests? SWTBot APIs, and Test Recorder & Generator – How to run tests against an existing RCP app? Tycho Surefire, or SWTBot/PDE Launch Configuration

RCP app already exists ● This talk answers: – How to write tests targeting existing RCP app? PDE Target-Platform – Anything easier and more efficient to produce tests? SWTBot APIs, and Test Recorder & Generator – How to run tests against an existing RCP app? Tycho Surefire, or SWTBot/PDE Launch Configuration

How to write tests targeting existing RCP app? The PDE way: ● Test cases are in bundles (or fragments) ● At dev-time, your “application under test (AUT)” is configured in the Target Platform, which lists available pieces to consume and available for PDE.

Target-Platform Test-specific APIs Your product

Anything easier and more efficient to produce tests? ● Provide easier Natural language ↔ Test Case translation ● Manipulates user-level UI concepts, so no need to know much of internals of Eclipse ● Black-box testing, using PDE tests http://www.eclipse.org/swtbot http://wiki.eclipse.org/SWTBot

SWTBot APIs in Action APIs for SWT, Forms, Workbench, GEF and family

Recording Monitor user activity and record it as a SWTBot test case Record == Generate Java code https://wiki.eclipse.org/SWTBot/Recorder

Dev IDE Your product

Target Application

Recording is just about Rules ● Rules match UI events (actions, widgets) and deduce related code ● It's easy to write and contribute a rule: https://wiki.eclipse.org/SWTBot/Recorder#Extending_it

Run tests on existing application ● When PDE Target-Platform is set, it's just a matter of using SWTBot Launch Configuration From IDE: Your product

Run tests on existing application From Tycho: Tycho-surefire-plugin allows to use an installed application https://wiki.eclipse.org/Tycho/Testing_with_Surefire#p2Installed_on_provisioned_RCP_application

Questions? Contribute during tonight Hackaton! Please give feedback at eclipsecon.org ! Mickael Istria @mickaelistria EclipseCon NA 2014 CC-BY 4.0

Add a comment

Related presentations

Presentación que realice en el Evento Nacional de Gobierno Abierto, realizado los ...

In this presentation we will describe our experience developing with a highly dyna...

Presentation to the LITA Forum 7th November 2014 Albuquerque, NM

Un recorrido por los cambios que nos generará el wearabletech en el futuro

Um paralelo entre as novidades & mercado em Wearable Computing e Tecnologias Assis...

Microsoft finally joins the smartwatch and fitness tracker game by introducing the...

Related pages

Integration tests for RCP made easy with SWTBot and Tycho ...

EclipseCon North-America 2014 ... Integration tests for RCP made easy ... valid integration-tests against your RCP product, and how Tycho can be ...
Read more

tycho | EclipseCon North-America 2014

Integration tests for RCP made easy with SWTBot and Tycho. ... Read more about Integration tests for RCP made easy ... Read more about Advanced tests in Tycho;
Read more

SWTBot/Automate test execution - Eclipsepedia

SWTBot/Automate test ... with Maven and Tycho. Tycho tests can be run in SWTBot as normal ... Platform made of your application + SWTBot ...
Read more

SWTBot/Articles And Tutorials - Eclipsepedia

SWTBot/Articles And Tutorials; ... Functional Testing made easy with SWTBot for ... SWTBot complete tutorial with GEF tests and add to continuous integration;
Read more

SWTBot - Mars Eclipse

What is SWTBot? SWTBot is an open ... Ant and Tycho, so it's easy to use in your IDE ... SWTBot also provide a Test Recorder and Generator that you can use ...
Read more

Red Hat Sessions at EclipseCon North America | Red Hat ...

Red Hat Sessions at EclipseCon North America. Posted on: March 10, ... Michael Istria: Integration tests for RCP made easy with SWTBot and Tycho Bayside ...
Read more

SWTBot | projects.eclipse.org

SWTBot is an Java based UI ... framework with SWTBot. SWTBot can record and playback tests and ... it easy to use in Continuous Integration..
Read more

JBoss Tools - Events

Home / Events. All Events. Devoxx 9-13 ... will talk about Integration with Red Hat JBoss Fuse ... on Integration tests for RCP made easy with SWTBot and ...
Read more