• Like
  • Save
Projektvorstellung VoiceXML Test Framework
Upcoming SlideShare
Loading in...5
×
 

Projektvorstellung VoiceXML Test Framework

on

  • 621 views

Testgetriebene Entwicklung von sprachbasierten Applikationen mit XML und Java

Testgetriebene Entwicklung von sprachbasierten Applikationen mit XML und Java

Statistics

Views

Total Views
621
Views on SlideShare
621
Embed Views
0

Actions

Likes
0
Downloads
0
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

CC Attribution-NonCommercial-NoDerivs LicenseCC Attribution-NonCommercial-NoDerivs LicenseCC Attribution-NonCommercial-NoDerivs License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Projektvorstellung VoiceXML Test Framework Projektvorstellung VoiceXML Test Framework Presentation Transcript

    • Raphael Groner 1 / 13VoiceXML Test-FrameworkVoiceXML Test-FrameworkUnit Testing vonsprachbasierten ApplikationenProjektvorstellung
    • Raphael Groner 2 / 13Unit Testing● Elementarer Bestandteil von TDD und BDD● Wichtig für Extreme Programming und Scrum● Standards und Normen, ISTQB®● Komponententest (Entwickler)● Integrationstest (Neue Idee!)● JUnit → Assert… Methoden
    • Raphael Groner 3 / 13VoiceXML● Wozu? → Kommunikationstheorie– Natürliche Sprache– Interaktion Mensch – Maschine (per Sprache!)● Eigener W3C Standard, basiert auf XML– Version 2.1 ist aktuell– Version 3.0 als Entwurf● Deployment wie HTML● Editoren, Generatoren
    • Raphael Groner 4 / 13Einsatzgebiete● Logistik: „Pick by Voice“– Kommissionieren von Waren und Inventur im Lager– Sprachgesteuerte Weisung von Arbeitskräften– Kontrollen durch z.B. Abfrage von Prüfkennungen● Auskunft per Telefon und Ansagen– Fahrplan (z.B. Deutsche Bahn), Börse, Wetter, …– Call Center: Häufig auftretende Prozesse (FAQ)– Verkehrsleitung bei Navigationsgeräten
    • Raphael Groner 5 / 13Frameworks● Voxeo Phono (Javascript), Prophecy IVR Platform● OpenVXI (C): BladeWareVXML, publicVoiceXML● Voice-unit (Java, JUnit)● JWebUnit, HtmlUnit, HttpUnit (web unit tests)● Voice Prover, PAGI, Empirix Hammer(Last/Penetration)● SoftRobot (Systemtest)
    • Raphael Groner 6 / 13VoiceXML + Java = JVoiceXML● Verschiedene Implementierungen:– Spracherkennung und -ausgabe, Gestiken– JSAPI, JTAPI, Marc, Mary, Red5, Kinect, …● Textschnittstelle (interface TextListener)Methode Nachrichtstarted() Server gestartetconnected(InetSocketAddress) Verbindung hergestelltoutputSsml(SsmlDocument) Ausgabe (Parameterwert) empfangenexpectingInput() Bereit für eine EingabeinputClosed() Wartezeit für Eingabe überschrittendisconnected() Verbindung beendet
    • Raphael Groner 7 / 13Anforderungsanalyse
    • Raphael Groner 8 / 13Prototyp (Grobkonzept)
    • Raphael Groner 9 / 13Automat
    • Raphael Groner 10 / 13Beispiel - VoiceXML<?xml version="1.0" encoding="UTF-8"?><vxml xmlns="http://www.w3.org/2001/vxml" version="2.1"><form><field name="answer"><grammar src="yesno.srgs" type="application/srgs+xml"/><prompt>Do you like this example?</prompt><filled><if cond="answer==yes">You like this example.<else/>You do not like this example.</if></filled></field></form></vxml>
    • Raphael Groner 11 / 13Beispiel - TestCase@Testpublic void testInputYes() {createConversation("yes");supervisor.process();}@Testpublic void testInputNoFail() {createConversation("no");boolean failed = false;try {supervisor.process();} catch (AssertionFailedError e) {failed = true;}Assert.assertEquals(true,failed);}private void createConversation(String answer) {Conversation conversation = supervisor.init(call);conversation.addOutput("Do you like this example?");conversation.addInput(answer);conversation.addOutput("You like this example.");}
    • Raphael Groner 12 / 13Geplante Erweiterungen● Synchroner Durchlauf● Cucumber für BDD● Hamcrest für Pattern, XPath● Checkstyle● Simulation anderer Engines
    • Raphael Groner 13 / 13Danke!Fragen?Fragen?http://www.jvoicexml.org voicexmlunit@email.de