Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.

Innovation galinski-zambrovski-camunda bpm testing

1.282 Aufrufe

Veröffentlicht am

Innovation Talk BPMCon2013: Camunda BPM Testing incubation project.
lang: german
Speaker: Jan Galinski, Simon Zambrovski

Veröffentlicht in: Technologie, Business
  • Als Erste(r) kommentieren

Innovation galinski-zambrovski-camunda bpm testing

  1. 1. CAMUNDA BPM TESTING PROZESSMODELLE HOHER QUALITÄT Simon Zambrovski, Jan Galinski ( ) Martin Schimak ( ) Rafael Cordones ( ) Bernd Rücker ( ) Holisticon AG Plexiti rafael.cordones.me Camunda
  2. 2. CAMUNDA-BPM-TESTING FLUENT-ENGINE-API / FLUENT-ASSERTIONS ... newProcessInstance("job-announcement", new Move() { public void along() { testHappyPath(); } }).setVariable("jobAnnouncementId", jobAnnouncement.getId()) .startAndMoveTo("review"); ... assertThat(processInstance()).isWaitingAt("review"); assertThat(processInstance().task()).isAssignedTo("piggie"); processInstance().task().claim(USER_STAFF); processInstance().task().complete("approved", true); ...
  3. 3. CAMUNDA-BPM-TESTING CAMUNDA-BPM-NEEDLE ... @Rule public final ProcessEngineNeedleRule processEngineNeedleRule = fluentNeedleRu @Inject private HistoryService historyService; ... registerMockDelegate("serviceTask").onExecutionSetProcessVariables("world" newProcessInstance(PROCESS_KEY).setVariable("foo", Boolean.TRUE).start(); assertThat(processInstance().task()).isUnassigned(); processInstance().task().complete("bar", Boolean.FALSE, "hello", "jan" assertThat(processInstance()).isFinished(); Assert.assertThat(historyService.createHistoricActivityInstanceQuery().proc ...
  4. 4. VERHALTENSGETRIEBENE GESCHÄFTSPROZESSMODELLIERUNG Unit Tests testen ... Units - Prozesse sind keine Units Prozesstests müssen aufeinander aufbauen Intergrationstest von End-To-End Prozessen erst zum Ende des Projektes möglich
  5. 5. CAMUNDA-BPM-JBEHAVE Demo
  6. 6. WAS IST BDD/JBEHAVE Beschreibung einer fachlichen Anforderung in Form mehrerer Szenarien Glue-Code für die Ausführung der einzelnen "Steps" Ausführungsumgebung mit Reporting
  7. 7. SCENARIO Scenario: Automatic processing Given the process definition simple_example.bpmn And the contract is automatically processible And the contract processing succeeds When the process simple-process-example is started Then the contract is loaded And the contract is processed automatically And the process is finished with event event_contract_processed Scenario: Automatic processing not possible Given the process definition simple_example.bpmn And the contract is not automatically processible When the process simple-process-example is started Then the step task_process_contract_manually is reached
  8. 8. WHAT'S NEXT? 30.09.13 VUG "camunda-bpm-testing" - WebEx Session 26.11.13 Community Event Holisticon, Hamburg
  9. 9. VIELEN DANK!

×