29
www.ibsolution.de © IBsolution GmbH // 28. Oktober 2014 // 14.00 15.00 Uhr // Moderator: Benjamin Dietz Webinar SAP BPM: Testautomatisierung für SAP BPM

SAP BPM: Testautomatisierung für SAP BPM

Embed Size (px)

DESCRIPTION

Die Durchführung von Regressionstests für BPM-Anwendungen stellt Unternehmen immer wieder vor Herausforderungen. Zahlreiche Testschritte müssen in gleichbleibender Qualität und in kontinuierlichem Umfang von Personen und Systemen durchgeführt werden. Wie Sie SAP BPM Prozesse über die Standard BPM API unter Zuhilfenahme weiterer freier Tools automatisiert testen können und somit einen reduzierten Testaufwand haben, zeigen wir Ihnen in diesem Webinar.

Citation preview

Page 1: SAP BPM: Testautomatisierung für SAP BPM

www.ibsolution.de © IBsolution GmbH

// 28. Oktober 2014

// 14.00 – 15.00 Uhr

// Moderator: Benjamin Dietz

WebinarSAP BPM: Testautomatisierung für SAP BPM

Page 2: SAP BPM: Testautomatisierung für SAP BPM

www.ibsolution.de © IBsolution GmbHSeite 2

IBsolution GmbH - Webinar

Willkommen zum Webinar„SAP BPM: Testautomatisierung für SAP BPM“

Die Unterlagen finden Sie nach dem Webinar unter: http://www.slideshare.net/IBSolutionGmbH http://www.youtube.com/IBSolution

Weitere Webinar-Termine: 30.10.2014 // SAP IdM: HR-basierte Identity-Lifecycle Prozesse 11.11.2014 // Best-Practices für Ihre SAP Migration 02.12.2014 // Best Practices für das Stammdatenmanagement im Bereich Accounting

Infos und Anmeldung sowie aktuelle Termine auf www.ibsolution.de/veranstaltungen

Page 3: SAP BPM: Testautomatisierung für SAP BPM

www.ibsolution.de © IBsolution GmbHSeite 3

Chat-Funktion für Fragen / Einstellungen

Teilnehmer sind während der Präsentation stumm geschaltet

Bitte nutzen Sie für Fragen die Chat-Funktion

Zum Ende des Webinars wird gesammelt auf die Fragen eingegangen

Page 4: SAP BPM: Testautomatisierung für SAP BPM

www.ibsolution.de © IBsolution GmbHSeite 4

Unsere Beratungsschwerpunkte

BusinessIntelligence

Prozess-optimierung

TechnologieBeratung

Page 5: SAP BPM: Testautomatisierung für SAP BPM

www.ibsolution.de © IBsolution GmbHSeite 5

Unser SpezialwissenB

usin

ess

In

tellig

en

ce

Pro

zess-

op

tim

ieru

ng

Tech

no

log

ieB

eratu

ng

SAP IdM

SAP GRC Access Control

Secude Single Sign On

SAP MDM

SAP MDGx

SAP BPM

SAP BO Data Services

SAP BO Information Stuart

SAP Composition Environment

Web Dynpro Java

Web Dynpro ABAP

SAP Portal

AGIMENDO

Sybase Unwired Plattform

Sybase Afaria

SAP BW

SAP Crystal Reports

SAP BO Web Intelligence

SAP BO Dashboards

SAP BO Analysis for Office

SAP BO Explorer

SAP BO-PC

Identity und Access Management

Compliant Identity Management

Materialstammprozesse

Lieferantenstammprozesse

Kundenstammprozesse

Produktkatalog

Mobile Lösungen

Cloud Computing

Custom Development

BI-Strategie

Reporting und Analyse

Dashboards und Visualisierung

Konzernberichtswesen/ Group Reporting

Integrierte Unternehmensplanung

Unternehmenssteuerung

Data Warehousing

Page 6: SAP BPM: Testautomatisierung für SAP BPM

www.ibsolution.de © IBsolution GmbHSeite 6

Unsere Standorte

Nordrhein-Westfalen

Neuss

Baden-Württemberg

Heilbronn

Bayern

München

Schweiz

ZürichBulgarien

Sofia

Page 7: SAP BPM: Testautomatisierung für SAP BPM

www.ibsolution.de © IBsolution GmbH

Agenda

1. Testmanagement / Testautomatisierung: Übersicht

2. SAP BPM Testautomatisierung: Motivation und Möglichkeiten

3. BPM Testautomatisierung über den Standard unter Einsatz weiterer Tools

4. Live-Demo

5. Q & A

Page 8: SAP BPM: Testautomatisierung für SAP BPM

www.ibsolution.de © IBsolution GmbH 28.10.2014Seite 8

Testmanagement / Testautomatisierung

Regressionstest

If something

hurts,do itmoreoften!

(frequency reduces difficulty)

Test-

auto-matisierung

Page 9: SAP BPM: Testautomatisierung für SAP BPM

www.ibsolution.de © IBsolution GmbH 28.10.2014Seite 9

Testmanagement / Testautomatisierung

Softwareentwicklungsprozess

Anforderungs-Definition

SystemSpezifikation

SystemDesign

Code

Unit Test

Systemtest

Abnahmetest

Integrationstest

KomponentenDesign

Testmanagement im V-Modell

Page 10: SAP BPM: Testautomatisierung für SAP BPM

www.ibsolution.de © IBsolution GmbH 28.10.2014Seite 10

Testmanagement / Testautomatisierung

Warum Testautomatisierung?

Umfang der Testaktivitäten Etwa 40% bis >50% des gesamten Entwicklungsaufwands Testen ist eine komplexe Tätigkeit

Wann beginnt das Testen? So früh wie möglich Je früher Fehler identifiziert werden, desto weniger Aufwand

verursacht die Beseitigung

Testen ist eine umfangreiche, sich wiederholende Tätigkeit

http://www.dilbert.com/

Page 11: SAP BPM: Testautomatisierung für SAP BPM

www.ibsolution.de © IBsolution GmbH 28.10.2014Seite 11

Testmanagement / Testautomatisierung

Testautomatisierungspyramide

Nach Mike Cohn

Was lässt sich automatisiert testen

Page 12: SAP BPM: Testautomatisierung für SAP BPM

www.ibsolution.de © IBsolution GmbH 28.10.2014Seite 12

Testmanagement / Testautomatisierung

Nach Brian Marick

Was lässt sich automatisiert testen

Unit TestsPerformance, Skalierbarkeit, Sicherheit, …

Funktionale TestsUser Stories

Usecases

Explorative TestsUsability

User Acceptance

Technische Sicht

Anwendersicht

Krit

ik a

m P

ro

du

kt

Defi

nit

ion

des P

ro

du

kte

s

ManuellesTests

Automatisierte & Manuelle

Tests

Automatisierte Tests

Spezial ToolsAutomatisierte

Tests

Page 13: SAP BPM: Testautomatisierung für SAP BPM

www.ibsolution.de © IBsolution GmbH 28.10.2014Seite 13

Testmanagement / Testautomatisierung

TestszenarienTestautomatisierung

Manuelles Testen

Komponenten Tests

Regressionstests

Last / Stresstests

Integrationstests

Effiziente und kostensparende Test-Durchführung:

möglichst viele Test-Aktivitäten durch Werkzeuge unterstützen

Test-Aktivitäten automatisiert ablaufen lassen

Page 14: SAP BPM: Testautomatisierung für SAP BPM

www.ibsolution.de © IBsolution GmbH

Agenda

1. Testmanagement / Testautomatisierung: Übersicht

2. SAP BPM Testautomatisierung: Motivation und Möglichkeiten

3. BPM Testautomatisierung über den Standard unter Einsatz weiterer Tools

4. Live-Demo

5. Q & A

Page 15: SAP BPM: Testautomatisierung für SAP BPM

www.ibsolution.de © IBsolution GmbH 28.10.2014Seite 15

SAP BPM Testautomatisierung: Motivation und Möglichkeiten

Unit Tests lassen sich einfach automatisieren

Integration Tests / funktionale Tests sind komplexer

UI-Tests sind komplex – Simulation von Benutzereingaben

BPM Tests: Sowohl funktionale Systemtests als auch UI-Tests

Abhängige Features, langer Testpfad, änderungsanfällig

Ursache/Wirkung sind schwer zu korrelieren

Werden daher oft manuell ausgeführt

Probleme von manuellen Tests:

Zeitfaktor: Aufwändige Tätigkeit -> seltene Durchführung

Wiederholbare Testergebnisse -> reproduzierbarer Teststatus

Testwiederholungen verursachen gleichbleibende Aufwände

Manuelle Testausführung verursacht hohe Aufwände bei zu hinterfragender Qualität.

Motivation Testautomatisierung

Page 16: SAP BPM: Testautomatisierung für SAP BPM

www.ibsolution.de © IBsolution GmbH 28.10.2014Seite 16

SAP BPM Testautomatisierung: Motivation und Möglichkeiten

Effiziente Testdurchführung: Zeit für einen Testzyklus

Testaktivitäten automatisiert ablaufen lassen

Beschleunigte Durchführung – kürzere Testzyklen

Reproduzierbare Testergebnisse: exakt gleiche Testläufe

Beliebige Wiederholbarkeit von Testläufen ohne Mehraufwand

Erhöhung der Software-Qualität: Regressionstests / Continuous Integration

Reaktionsfähigkeit und Qualitätssteigerung bei sich ändernden Anforderungen

Fehler können früher im Entwicklungsprozess erkannt werden.

Ziele der Testautomatisierung

AufwandQualität

Entwicklungsprozess

Test

Page 17: SAP BPM: Testautomatisierung für SAP BPM

www.ibsolution.de © IBsolution GmbH

Agenda

1. Testmanagement / Testautomatisierung: Übersicht

2. SAP BPM Testautomatisierung: Motivation und Möglichkeiten

3. BPM Testautomatisierung über den Standard unter Einsatz weiterer Tools

4. Live-Demo

5. Q & A

Page 18: SAP BPM: Testautomatisierung für SAP BPM

www.ibsolution.de © IBsolution GmbH 28.10.2014Seite 18

BPM Testautomatisierung über den Standard unter Einsatz weiterer Tools

Anforderungen / Funktionalitäten um Prozesse und Tasks automatisiert zu testen

Framework Anforderungen:

Einen Prozess starten. -> Rückgabe der Prozessinstanz

Tasks zu einer Prozessinstanz ermitteln.

Auf Input / Output Daten von Tasks zugreifen.

Tasks zur Bearbeitung aufnehmen

Tasks abschließen

Task-Detaildaten wie z.B. Status lesen.

UI Tests: Ausfüllen von Benutzeroberflächen

Testplan/Szenario zusammenfassen und Ausführung ermöglichen.

Lösung:

- Schnittstelle zum Prozess: SAP BPM OData Services bzw. Java BPM API

- Selenium (OpenSource) zum Aufzeichnen und Ausführen von UI Tests

Schnittstellen zur Prozessausführung

Page 19: SAP BPM: Testautomatisierung für SAP BPM

www.ibsolution.de © IBsolution GmbH 28.10.2014Seite 19

BPM Testautomatisierung über den Standard unter Einsatz weiterer Tools

Schnittstellen zur Prozessausführung

SAP NetWeaver 7.3 EHP1

SAP NetWeaver Development Studio NWDS

Junit Test Framework / Runtime

OData Client Rest Client WebDriver

Testsuite

Unit Test

SAP NetWeaver BPM Process Engine

BPM API / EJB

OData Services Rest Webservice Facade

Page 20: SAP BPM: Testautomatisierung für SAP BPM

www.ibsolution.de © IBsolution GmbH 28.10.2014Seite 20

BPM Testautomatisierung über den Standard unter Einsatz weiterer Tools

Elegante Lösung: BPM OData Services

- Verwendung von odata4j als Client

- Aufruf aus JUnit Test heraus.

Versionsübersicht SAP BPM OData Services

Schnittstellen zur Prozessausführung

•Access to the Metadata of a BPM Task

•Access to the Input and Output Data of a BPM Task

•Claim a BPM Task

•Complete a BPM Task

SAP NetWeaver 7.3 EHP1 SP 09 and higher

•Support of complex types and collections

•Complete a BPM Task with a faultSAP NetWeaver 7.3 EHP1 SP 10 and higher

•Start a BPM process

•Advanced Error HandlingSAP NetWeaver 7.3 EHP1 SP 11 and higher

•Access to a collection of available BPM Tasks

•Access to a specific BPM Task

•Claim a BPM Task

•Release a BPM Task

•Forward a BPM Task

•Search for BPM end-users

•Access to BPM Task Definitions

•Access to custom attributes of a BPM Task

•Access to custom actions of a BPM Task

•Execute a custom action of a BPM Task

SAP NetWeaver 7.3 EHP1 SP 12 and higher

Page 21: SAP BPM: Testautomatisierung für SAP BPM

www.ibsolution.de © IBsolution GmbH 28.10.2014Seite 21

BPM Testautomatisierung über den Standard unter Einsatz weiterer Tools

Prozess starten -> Rückgabe der Prozessinstanz (7.3 EHP1 SP 11 )

Tasks zu Prozessinstanz ermitteln (7.3 EHP1 SP 12)

Auf Input / Output Daten von Tasks zugreifen (7.3 EHP1 SP 9 / > 7.3 EHP1 SP 10 )

Tasks zur Bearbeitung aufnehmen (7.3 EHP1 SP 9 )

Tasks abschließen mit Übergabe des Outputs (7.3 EHP1 SP 9 / >7.3 EHP1 SP 10 )

Task-Detaildaten z.B. Status lesen (7.3 EHP1 SP 9 )

UI Tests: Ausfüllen von Benutzeroberflächen

Eine aktuelle NetWeaver Version wird benötigt um über OData Services zu testen!

Workaround für ältere Versionen nötig!

Selbst implementierte Rest Services für:

Prozess starten

Zugehörige Aufgaben finden

Aufgaben abschließen

usw.

Schnittstellen zur Prozessausführung

Page 22: SAP BPM: Testautomatisierung für SAP BPM

www.ibsolution.de © IBsolution GmbH 28.10.2014Seite 22

BPM Testautomatisierung über den Standard unter Einsatz weiterer Tools

JUnit – Einfaches Framework für ModultestsJUnit zum ausführen von Tests innerhalb des NWDS geeignet.

Eclipse/ NWDS integriert

Modulare Tests

Tests sind unabhängig

Mehrere Test in TestSuiteszusammengefasst

Unit Tests

Validierung der Korrektheitvon Software Modulenz.B. von einzelnen Klassen

Für Integrationstest bzw. BPM Tests feste Testreihenfolge nötig:

(startProcess, claimTask, completeTask usw.)

Feste Testreihenfolge über die Funkionalität @FixMethodOrder

JUnit als Testframework

Page 23: SAP BPM: Testautomatisierung für SAP BPM

www.ibsolution.de © IBsolution GmbH

Testwerkzeug für GUI Tests: Selenium

Selenium ist eine Testumgebung für Webanwendungen

Als freie Software unter der Apache-2.0-Lizenz veröffentlicht.

Es ist ein weit verbreitetes Tool für automatisierte Tests von Webanwendungen

Zählt zu den bekanntesten quelloffenen UI-Testwerkzeugen.

28.10.2014Seite 23

BPM Testautomatisierung über den Standard unter Einsatz weiterer Tools

GUI Tests

Page 24: SAP BPM: Testautomatisierung für SAP BPM

www.ibsolution.de © IBsolution GmbH 28.10.2014Seite 24

BPM Testautomatisierung über den Standard unter Einsatz weiterer Tools

Mit Selenium IDE

Aufzeichnen von GUI Test im Browser

Add-On für den Firefox Browser

Weiterverwenden der Aufzeichnungsdaten in Tests

Und Selenium WebDriver für automatisierte Tests

Automatisiertes Ausführung von Tests

In JUnit Tests integrierbar

Ausführung erfolgt über Fernsteuerung des Browsers

Webdriver ermöglicht Java basierten Zugriff auf den Browser

GUI Tests

…WebDriver driver = new FirefoxDriver();driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);

driver.get(host+„/ irj/portal ");driver.findElement(By.id("logonuidfield")).clear();driver.findElement(By.id("logonuidfield")).sendKeys(properties.getProperty("username"));driver.findElement(By.id("logonpassfield")).clear();driver.findElement(By.id("logonpassfield")).sendKeys(properties.getProperty("password"));driver.findElement(By.name("logonForm")).submit();…

Page 25: SAP BPM: Testautomatisierung für SAP BPM

www.ibsolution.de © IBsolution GmbH

Agenda

1. Testmanagement / Testautomatisierung: Übersicht

2. SAP BPM Testautomatisierung: Motivation und Möglichkeiten

3. BPM Testautomatisierung über den Standard unter Einsatz weiterer Tools

4. Live-Demo

5. Q & A

Page 26: SAP BPM: Testautomatisierung für SAP BPM

www.ibsolution.de © IBsolution GmbH 28.10.2014Seite 26

Demo

BPM Testautomatisierung

Eclipse Junit zur Testausführung BPM Odata Services / Rest Services GUI Tests Selenium IDE Selenium Webdriver

Bsp.: Starten eines Prozesses Task aufnehmen und beenden Simulation von Benutzerinteraktionen Prozess abschließen und Ergebnisprüfung

http://help.sap.com/javadocshttp://help.sap.com/javadocs/NW73EHP1/SPS09/CE/bpem/com.sap.bpem/index.htmlhttp://scn.sap.com/community/bpm/blog/2013/05/03/building-eclipse-based-junit-tests-to-autoamte-process-model-testinghttp://scn.sap.com/community/gateway/blog/2012/10/12/how-to-handle-csrf-while-consuming-gateway-services-using-odata4jhttp://scn.sap.com/community/bpm/blog/2013/10/10/custom-uis-with-the-bpm-odata-service

Page 27: SAP BPM: Testautomatisierung für SAP BPM

www.ibsolution.de © IBsolution GmbH

Agenda

1. Testmanagement / Testautomatisierung: Übersicht

2. SAP BPM Testautomatisierung: Motivation und Möglichkeiten

3. BPM Testautomatisierung über den Standard unter Einsatz weiterer Tools

4. Live-Demo

5. Q & A

Page 28: SAP BPM: Testautomatisierung für SAP BPM

www.ibsolution.de © IBsolution GmbH 28.10.2014Seite 28

Haben Sie Fragen?

Fragen und Feedback

Page 29: SAP BPM: Testautomatisierung für SAP BPM

www.ibsolution.de © IBsolution GmbH

IBsolution GmbH

Im Zukunftspark 8

D - 74076 Heilbronn

www.ibsolution.de

KONTAKT

T +49 7131 / 27 11 – 3000

[email protected]