Presentation is loading. Please wait.

Presentation is loading. Please wait.

Automated Test Framework for SIP Elements SIP Protocol Compliance.

Similar presentations


Presentation on theme: "Automated Test Framework for SIP Elements SIP Protocol Compliance."— Presentation transcript:

1 Automated Test Framework for SIP Elements SIP Protocol Compliance

2 2 Motivation SIP is complex Many distributed components Features interact Extreme Programming –Frequent integration / releases –Continuous / Automated testing SIP is open – many 3 rd party components

3 3 Goals of the Framework Rapid test execution / verification Test protocol compliance Support rapid production of test suites –Translation from calls flows to executable Robust to variation in timing/parallelism Incorporate provisioning Programmer friendly Can be completely automated Open to manual endpoint operation Tests can be realized by non-programmers

4 4 Features Automated Write tests quickly Parallel events Easy to elaborate Provisioning Embedded Proxy Negative tests Retransmissions Useful feedback on failure Full compliance with 3261 and many drafts UDP,TCP,TLS S/MIME Portable to other stacks

5 5 Sequence Notation

6 6

7 7 Simple Example WarningLog(<<"*!testRegisterBasic!*"); TestUser jason(Uri("sip:jason@localhost"), "jason", "jason"); Seq(jason.registerUser(60, jason.getDefaultContacts()), jason.expect(REGISTER/407,from(proxy),WaitForResponse,jason.digestRespond()), jason.expect(REGISTER/200, from(proxy), WaitForResponse, jason.noAction()), WaitForEndOfTest); ExecuteSequences();

8 8 Primitives Expect Actions –invite, subscribe, ring, ring183, ack –ackReferred, bye, ok, cancel –send404, send486, send487, send202, etc. –notify200, send100, digestRespond, etc. –reinvite, note, inviteReferReplaces, pause,Chain Provisioning –Endpoints, –Hunt Groups, etc. –Forwarding rules –Dial Plans –Companies Actions –register, invite, notify, subscribe, Chain Predicates –from, messageType, timely, Chain

9 9 Primitives Contd. Custom actions –Parameter validation –Extended header validation Conditioners –Insert/modify parameters and headers on the fly Free-form messages –For doing torture tests Message retransmissions

10 10 Development Process Build up tests against known bugs, tricky cases Write a test before developing a new feature Build up library of actions, predicates Translate RFC call flows Add an automated test whenever a bug is found – then fix the bug. Programmers run automated tests everyday


Download ppt "Automated Test Framework for SIP Elements SIP Protocol Compliance."

Similar presentations


Ads by Google