testing telephony: it's not all terrible

33
PAGE Testing Telephony - It’s not all terrible Ben Langfeld @benlangfeld [email protected] Lance Gleason @lgleasain [email protected]

Upload: mojo-lingo

Post on 18-Dec-2014

107 views

Category:

Technology


0 download

DESCRIPTION

Testing Telephony: It's Not All Terrible presented by Ben Langfeld at AdhearsionConf 2011

TRANSCRIPT

Page 1: Testing Telephony: It's Not All Terrible

P A G E

Testing Telephony - It’s not all terrible

Ben Langfeld@[email protected]

Lance Gleason@[email protected]

Page 2: Testing Telephony: It's Not All Terrible

P A G E

Page 3: Testing Telephony: It's Not All Terrible

P A G E

Page 4: Testing Telephony: It's Not All Terrible

P A G E

WTF GUYS?!

Page 5: Testing Telephony: It's Not All Terrible

P A G E

UNIT TESTING ADHEARSION APPLICATIONS

3

Page 6: Testing Telephony: It's Not All Terrible

P A G E

Adhearsion components can be unit tested like anything else

4

Page 7: Testing Telephony: It's Not All Terrible

P A G E

If using ActiveRecord or any other ORM, move as much domain logic as possible into your models

5

Page 8: Testing Telephony: It's Not All Terrible

P A G E

State-full telephony fits into a set of domain models

6

Page 9: Testing Telephony: It's Not All Terrible

P A G E

Specify the hell out of your models

7

Page 10: Testing Telephony: It's Not All Terrible

P A G E

When possible, encapsulate dialplan DSL methods and/or any other code which touches the voice platform for ease of

mocking

8

Page 11: Testing Telephony: It's Not All Terrible

P A G E

INTEGRATION TESTING

9

Page 12: Testing Telephony: It's Not All Terrible

P A G E

QA TELEPHONY APPLICATIONS IS HARD

10

Page 13: Testing Telephony: It's Not All Terrible

P A G E

MANY COMPLEX SCENARIOS

11

Page 14: Testing Telephony: It's Not All Terrible

P A G E

VERY COMPLEX BRANCHING FLOW

12

Page 15: Testing Telephony: It's Not All Terrible

P A G E

LOTS OF REGRESSIONS

13

Page 16: Testing Telephony: It's Not All Terrible

P A G E

14

Page 17: Testing Telephony: It's Not All Terrible

P A G E

AUTOMATED INTEGRATION TESTING

14

Page 18: Testing Telephony: It's Not All Terrible

P A G E

AUTOMATED INTEGRATION TESTING

14

NÜECHO

Page 19: Testing Telephony: It's Not All Terrible

P A G E

AUTOMATED INTEGRATION TESTING

14

$$$NÜECHO

Page 20: Testing Telephony: It's Not All Terrible

P A G E

AUTOMATED INTEGRATION TESTING

14

PROPRIETARY$$$NÜECHO

Page 21: Testing Telephony: It's Not All Terrible

P A G E

AUTOMATED INTEGRATION TESTING

14

TELTONE

PROPRIETARY$$$NÜECHO

Page 22: Testing Telephony: It's Not All Terrible

P A G E

AUTOMATED INTEGRATION TESTING

14

TELTONE

PROPRIETARY$$$NÜECHO

DITTO

Page 23: Testing Telephony: It's Not All Terrible

P A G E

15

Page 24: Testing Telephony: It's Not All Terrible

P A G E

CUCUMBER-VOIP

15

Page 25: Testing Telephony: It's Not All Terrible

P A G E

CUCUMBER-VOIP

15

Page 26: Testing Telephony: It's Not All Terrible

P A G E

CUCUMBER-VOIP

15

$0, OPEN SOURCE, EXTENSIBLE

Page 27: Testing Telephony: It's Not All Terrible

P A G E

16

Page 28: Testing Telephony: It's Not All Terrible

P A G E

17

Page 29: Testing Telephony: It's Not All Terrible

P A G E

(TOTALLY FAKED - THERE’S BUGS)

18

Page 30: Testing Telephony: It's Not All Terrible

P A G E

19

Page 31: Testing Telephony: It's Not All Terrible

P A G E

TEST THE ENTIRE STACK, INCLUDING THE VOICE INTERACTION AND MEDIA

20

Page 32: Testing Telephony: It's Not All Terrible

P A G E

GITHUB.COM/BENLANGFELD/CUCUMBER-VOIP

21

Page 33: Testing Telephony: It's Not All Terrible

P A G E

Quest ions?