Freitag, 4. April 2014

BedCon 2014 - Apache Cordova

1. create website, e.g. with errai ( HTML UI, but with Java compiles to JavaScript )
2. commandline: create cordova app with link to website folder
3. commandline: add platforms to app, like ios, android
4. commandline: add some plugins to app
    include cordova.js to website to use plugins


AeroGear UnifiedPush
- send messages to all ( or selected ) app instances at mobile devices from one server
- has a web ui
- client app can register via JS

BedCon 2014 Monitoring jenseits von grep und tail

Richtig loggen

- java.util.logging formatiert Zahlen je nach locale!
- Zeiten loggen in UTC!
- Zahlen mit Einheiten, immer kleinst mögliche Einheit

Java libs / Tools
- Metrics
  Java-Lib zum erfassen/loggen von Metriken

- Logstash
 Input ( log-Dateien ) --> Filter ( Deklarativ ) --> Output

- collectd
  Sammelt Daten des Servers ( Load, Speicherauslastung, CPU .... )

Auswertung:
- Kibana ( Web-Oberfläche, Bestandteil von ElasticSearch )
- GrayLog ( Web-Oberfläche, basierend auf Lucene )

Donnerstag, 3. April 2014

BedCon 2014 Testen im EE-Umfeld

BedCon 2014

Feige sein!
Testen im EE-Umfeld


- Integrationstests auf produktiv-gleichen Application-Server
- Apache DeltaSpike als CDI Container Wrapper in (Multi-)Unit-Tests
- BUnit für Testdatenbereitstellung in die Datenbank ( kleinere Datenmengen )
- Testdaten einspielen:
  - vor dem Test: erst löschen
  - dann einspielen
 - nach dem Test: stehen lassen ( zur möglichen Kontrolle )

- Integrationstest: Arquillian ( JBoss )

BedCon2014 - ATDD

BedCon2014

Acceptance Test Driven Development

- Cucumber
  - feste Szenario Syntax in beliebigen Sprachen
  - Java Testcode Methoden pro TestSyntax-Satz in anderer Klasse, Kopplung per Annotation
  - als Junit Test ausführbar
  - Ausführung des gleichen Tests mit verschiedenen Parametern per Parameter-Liste als ASCII Tabelle

- Jnario
 - gleiche Szenario Syntax
  - Test-Code wird nicht per Annotation an den Testsatz gebunden ( Cubumber ) sondern direkt in das Szenario Dokument. Daher: Keine Wiederverwendbarkeit von Test-Code-Snippets!
- weiteres Feature: Spezifikations-Tests als DSL, auch als JUnit ausführbar

- Nat-Spec ( kommerziell! )
   - gleiche Szenario Syntax als DSL, Sprache beliebig
  - Java Testcode Methoden pro Test-Satz in anderer Klasse, Kopplung per Annotation
  - als Junit Test ausführbar
  - neue Test-Sätze sind automatisch generierbar per Eclipse Hilfe
  - Ausführung des gleichen Tests mit verschiedenen Parametern per Parameter-Liste als ASCII Tabelle
  - Weiteres Feature:
    - Geschäftsregeln definieren,
    - Datenmodell generieren,
    - Oberflächen generieren