一直有構建一個基於DSL的SIP自動化測試工具的想法。正好最近在學習DSL,順便考慮了一下測試腳本的語法:
creat userA set tel = 1002
creat userB set tel = 2001
userA send invite to userB set sdp_ip = 10.20.1.126, media = g711a
userB recv invite from userA where sdp_ip = 10.20.1.126, media = g711a
userA send voice to userB
wait 3s
userA send dtmf to userB set dtmf = 1002
userB recv dtmf from userA where dtmf = 1002
1、也可以考慮:send invite from userA to userB2、set表示設置sip消息中的字段值,對應sip庫的設置函數。
3、where表示檢查sip消息中的字段值,對應sip庫中的get函數。
4、100try消息應該也能夠在上層進行控制。
5、如何測試語音是否單通或者串音?利用隨機生成數字的DTMF語音來判斷。具體的做法是一端發生DTMF語音,一端接收DTMF語音,通過檢查接收時延來判斷語音延遲,通過檢查DTMF內容來判斷是否單通或者串音。
6、測試腳本的執行通過python 協程來實現。