SlideShare a Scribd company logo
1 of 27
Download to read offline
Overcoming the Challenges in
Testing WebRTC Services
Tsahi Levent-Levi
November 2015
Let me tell you a little secret
People don’t usually test
WebRTC implementations…
Why is that?
• WebRTC is still niche/experimental to their
business
• They are a startup with limited resources
• Adding features takes priority over stability
• Is this VoIP or Web?
At an intersection of worlds
4
Our
Internet
Web
Traditional
VoIP
The world of VoIP testing
• Focused on DUTs (Devices Under Test)
• Rely heavily on slow moving standards and
implementations
• Vast majority of testing solutions are on
premise
• Assume limited geographies
5
The world of Web testing
• Focused on different browsers
• Rely heavily on the GUI
• Responsive design causes GUI changes
• GUI and API testing treated as separate
• Geography doesn’t matter for functionality
6
5 Major Challenges
When trying to test your WebRTC service
Browser version
changes
Do you know if your service will not break next
week?
#1
Browsers update cycle in 2015
This translates to a regression test needed on a monthly
basis – not taking into account changes you make to the
service
40
41
42
43
44
45
46
35
36
37
38
39
40
Dec-14 Feb-15 Apr-15 May-15 Jul-15 Sep-15 Oct-15 Dec-15
Chrome
Firefox
Stable, Beta, Dev and Canary
Stable What your customers are using
Beta What you should expect in the next release
Dev
Where you can complain about breakage – and expect fixes
in time
Canary
A nightly build of whatever is available at that moment in
time
Testing only against the Stable version of browsers means you find out
issues only after the service breaks for your customers.
BrowserYour app
A Word about Mobile
At what pace do you update you app’s WebRTC lib?
WebRTC WebRTC
6-8 weeks update cycle
NAT traversal
How does your service fair in varying network
conditions?
#2
WebRTC isn’t always P2P
Anywhere between 5-50% of your calls get
relayed via TURN servers
client client
Web
server
TURN
server
Have you setup your relays
properly?
• Support for UDP
• Support for TCP
Location, Location, Location
When a call in Paris gets relayed through a TURN server
in the US – you lose a customer…
Server scale
Have you tested your service with 10 browsers?
100? 1,000? More?
#3
What do you test at scale?
• Signaling?
• Media relays?
• Backend media processing?
• Single session multiparty scale?
• End-to-end service scale?
• Do you add variance to your scale testing?
“
A typical conversation…
Oh, it should work for 100 people in the
same conference. We did test it with 12
people – the number of machines we had
available – and it worked perfectly fine.
Service uptime
Do you know if your service is really running?
#4
What people monitor today
Memory
Storage
CPU
Network
Ping
End-to-end
• There are many moving parts in your service
• WebRTC requires 3 or more servers to operate
• You need to make sure it runs end-to-end
Orchestration
How do you automate the mechanics of
communications in your service?
#5
Web testing is simpler (most of
the time)
1. Write your script for a browser
2. Run it once
3. Run it in parallel on 10,000 browsers at once
4. You’re done
WebRTC is about coordinating
people
1. A user and an agent
2. A user and a PSTN/mobile call
3. N users joining in on a single call
4. Automatic/dynamic/manual pairing of the
users
5. …
Don’t take WebRTC
testing lightly
About testRTC
Come check us out at testRTC.com
Thank You!
Tsahi Levent-Levi
tsahil@testRTC.com
@tsahil

More Related Content

Viewers also liked

Securing Business Operations and Critical Infrastructure: Trusted Technology,...
Securing Business Operations and Critical Infrastructure: Trusted Technology,...Securing Business Operations and Critical Infrastructure: Trusted Technology,...
Securing Business Operations and Critical Infrastructure: Trusted Technology,...Dana Gardner
 
Webrtc - rich communication - quobis - victor pascual
Webrtc  - rich communication - quobis - victor pascualWebrtc  - rich communication - quobis - victor pascual
Webrtc - rich communication - quobis - victor pascualAlan Quayle
 
The Missing WebRTC Infrastructure
The Missing WebRTC InfrastructureThe Missing WebRTC Infrastructure
The Missing WebRTC InfrastructureTsahi Levent-levi
 
Quality Assurance for WebRTC Services
Quality Assurance for WebRTC ServicesQuality Assurance for WebRTC Services
Quality Assurance for WebRTC ServicesTsahi Levent-levi
 
Three Lessons Global CEOs Can Learn From Grassroots Activists
Three Lessons Global CEOs Can Learn From Grassroots ActivistsThree Lessons Global CEOs Can Learn From Grassroots Activists
Three Lessons Global CEOs Can Learn From Grassroots ActivistsGaurav Mishra
 
WebRTC on Mobile | Kranky Geek SF 2016
WebRTC on Mobile | Kranky Geek SF 2016WebRTC on Mobile | Kranky Geek SF 2016
WebRTC on Mobile | Kranky Geek SF 2016Tsahi Levent-levi
 
How WebRTC ushers the next wave of e-Learning innovation
How WebRTC ushers the next wave of e-Learning innovationHow WebRTC ushers the next wave of e-Learning innovation
How WebRTC ushers the next wave of e-Learning innovationTsahi Levent-levi
 
Baby Steps: A WebRTC Tutorial
Baby Steps: A WebRTC TutorialBaby Steps: A WebRTC Tutorial
Baby Steps: A WebRTC TutorialTsahi Levent-levi
 
Considerations for Moving a Database to the Public Cloud - Pythian's Chris Pr...
Considerations for Moving a Database to the Public Cloud - Pythian's Chris Pr...Considerations for Moving a Database to the Public Cloud - Pythian's Chris Pr...
Considerations for Moving a Database to the Public Cloud - Pythian's Chris Pr...Pythian
 
DevOps and Continuous Delivery reference architectures for Docker
DevOps and Continuous Delivery reference architectures for DockerDevOps and Continuous Delivery reference architectures for Docker
DevOps and Continuous Delivery reference architectures for DockerSonatype
 
The Art Of Writing A Business Plan (Zafar)
The Art Of Writing A Business Plan (Zafar)The Art Of Writing A Business Plan (Zafar)
The Art Of Writing A Business Plan (Zafar)Naeem Zafar
 

Viewers also liked (11)

Securing Business Operations and Critical Infrastructure: Trusted Technology,...
Securing Business Operations and Critical Infrastructure: Trusted Technology,...Securing Business Operations and Critical Infrastructure: Trusted Technology,...
Securing Business Operations and Critical Infrastructure: Trusted Technology,...
 
Webrtc - rich communication - quobis - victor pascual
Webrtc  - rich communication - quobis - victor pascualWebrtc  - rich communication - quobis - victor pascual
Webrtc - rich communication - quobis - victor pascual
 
The Missing WebRTC Infrastructure
The Missing WebRTC InfrastructureThe Missing WebRTC Infrastructure
The Missing WebRTC Infrastructure
 
Quality Assurance for WebRTC Services
Quality Assurance for WebRTC ServicesQuality Assurance for WebRTC Services
Quality Assurance for WebRTC Services
 
Three Lessons Global CEOs Can Learn From Grassroots Activists
Three Lessons Global CEOs Can Learn From Grassroots ActivistsThree Lessons Global CEOs Can Learn From Grassroots Activists
Three Lessons Global CEOs Can Learn From Grassroots Activists
 
WebRTC on Mobile | Kranky Geek SF 2016
WebRTC on Mobile | Kranky Geek SF 2016WebRTC on Mobile | Kranky Geek SF 2016
WebRTC on Mobile | Kranky Geek SF 2016
 
How WebRTC ushers the next wave of e-Learning innovation
How WebRTC ushers the next wave of e-Learning innovationHow WebRTC ushers the next wave of e-Learning innovation
How WebRTC ushers the next wave of e-Learning innovation
 
Baby Steps: A WebRTC Tutorial
Baby Steps: A WebRTC TutorialBaby Steps: A WebRTC Tutorial
Baby Steps: A WebRTC Tutorial
 
Considerations for Moving a Database to the Public Cloud - Pythian's Chris Pr...
Considerations for Moving a Database to the Public Cloud - Pythian's Chris Pr...Considerations for Moving a Database to the Public Cloud - Pythian's Chris Pr...
Considerations for Moving a Database to the Public Cloud - Pythian's Chris Pr...
 
DevOps and Continuous Delivery reference architectures for Docker
DevOps and Continuous Delivery reference architectures for DockerDevOps and Continuous Delivery reference architectures for Docker
DevOps and Continuous Delivery reference architectures for Docker
 
The Art Of Writing A Business Plan (Zafar)
The Art Of Writing A Business Plan (Zafar)The Art Of Writing A Business Plan (Zafar)
The Art Of Writing A Business Plan (Zafar)
 

More from Tsahi Levent-levi

Common WebRTC mistakesand how to avoid them (RTC Expo 2019)
Common WebRTC mistakesand how to avoid them (RTC Expo 2019)Common WebRTC mistakesand how to avoid them (RTC Expo 2019)
Common WebRTC mistakesand how to avoid them (RTC Expo 2019)Tsahi Levent-levi
 
Kranky Geek SF 2018: AI in RTC
Kranky Geek SF 2018: AI in RTCKranky Geek SF 2018: AI in RTC
Kranky Geek SF 2018: AI in RTCTsahi Levent-levi
 
WebRTC is READY. What's Next?
WebRTC is READY. What's Next?WebRTC is READY. What's Next?
WebRTC is READY. What's Next?Tsahi Levent-levi
 
WebRTC Developer Tools Landscape
WebRTC Developer Tools LandscapeWebRTC Developer Tools Landscape
WebRTC Developer Tools LandscapeTsahi Levent-levi
 
WebRTC Timeline and Forecast
WebRTC Timeline and ForecastWebRTC Timeline and Forecast
WebRTC Timeline and ForecastTsahi Levent-levi
 
WebRTC State of the Market, Dec 2014
WebRTC State of the Market, Dec 2014WebRTC State of the Market, Dec 2014
WebRTC State of the Market, Dec 2014Tsahi Levent-levi
 
Harnessing the potential of WebRTC
Harnessing the potential of WebRTCHarnessing the potential of WebRTC
Harnessing the potential of WebRTCTsahi Levent-levi
 
VoIP Architectures in a WebRTC World
VoIP Architectures in a WebRTC WorldVoIP Architectures in a WebRTC World
VoIP Architectures in a WebRTC WorldTsahi Levent-levi
 
Kranky Geek WebRTC Show: WebRTC in the Real World
Kranky Geek WebRTC Show: WebRTC in the Real WorldKranky Geek WebRTC Show: WebRTC in the Real World
Kranky Geek WebRTC Show: WebRTC in the Real WorldTsahi Levent-levi
 
Kranky Geek WebRTC Show: Krank It Up!
Kranky Geek WebRTC Show: Krank It Up!Kranky Geek WebRTC Show: Krank It Up!
Kranky Geek WebRTC Show: Krank It Up!Tsahi Levent-levi
 
To Build or Not to Build Your WebRTC Infrastructure
To Build or Not to Build Your WebRTC InfrastructureTo Build or Not to Build Your WebRTC Infrastructure
To Build or Not to Build Your WebRTC InfrastructureTsahi Levent-levi
 
WebRTC Audio Codec: Opus and processing requirements
WebRTC Audio Codec: Opus and processing requirementsWebRTC Audio Codec: Opus and processing requirements
WebRTC Audio Codec: Opus and processing requirementsTsahi Levent-levi
 
WebRTC for Telco: Informa's WebRTC Global Summit Preconference
WebRTC for Telco: Informa's WebRTC Global Summit PreconferenceWebRTC for Telco: Informa's WebRTC Global Summit Preconference
WebRTC for Telco: Informa's WebRTC Global Summit PreconferenceTsahi Levent-levi
 
The Evolving WebRTC Ecosystem | all about WebRTC event, Google's TLV Campus
The Evolving WebRTC Ecosystem | all about WebRTC event, Google's TLV CampusThe Evolving WebRTC Ecosystem | all about WebRTC event, Google's TLV Campus
The Evolving WebRTC Ecosystem | all about WebRTC event, Google's TLV CampusTsahi Levent-levi
 
WebRTC and Paris: a Love Story
WebRTC and Paris: a Love StoryWebRTC and Paris: a Love Story
WebRTC and Paris: a Love StoryTsahi Levent-levi
 

More from Tsahi Levent-levi (20)

Common WebRTC mistakesand how to avoid them (RTC Expo 2019)
Common WebRTC mistakesand how to avoid them (RTC Expo 2019)Common WebRTC mistakesand how to avoid them (RTC Expo 2019)
Common WebRTC mistakesand how to avoid them (RTC Expo 2019)
 
Kranky Geek SF 2018: AI in RTC
Kranky Geek SF 2018: AI in RTCKranky Geek SF 2018: AI in RTC
Kranky Geek SF 2018: AI in RTC
 
WebRTC is READY. What's Next?
WebRTC is READY. What's Next?WebRTC is READY. What's Next?
WebRTC is READY. What's Next?
 
WebRTC Developer Tools Landscape
WebRTC Developer Tools LandscapeWebRTC Developer Tools Landscape
WebRTC Developer Tools Landscape
 
WebRTC Codec Wars: Rebooted
WebRTC Codec Wars: RebootedWebRTC Codec Wars: Rebooted
WebRTC Codec Wars: Rebooted
 
WebRTC in the Real World
WebRTC in the Real WorldWebRTC in the Real World
WebRTC in the Real World
 
WebRTC - a History Lesson
WebRTC - a History LessonWebRTC - a History Lesson
WebRTC - a History Lesson
 
WebRTC Timeline and Forecast
WebRTC Timeline and ForecastWebRTC Timeline and Forecast
WebRTC Timeline and Forecast
 
WebRTC State of the Market, Dec 2014
WebRTC State of the Market, Dec 2014WebRTC State of the Market, Dec 2014
WebRTC State of the Market, Dec 2014
 
A WebRTC Overview
A WebRTC OverviewA WebRTC Overview
A WebRTC Overview
 
Harnessing the potential of WebRTC
Harnessing the potential of WebRTCHarnessing the potential of WebRTC
Harnessing the potential of WebRTC
 
VoIP Architectures in a WebRTC World
VoIP Architectures in a WebRTC WorldVoIP Architectures in a WebRTC World
VoIP Architectures in a WebRTC World
 
Kranky Geek WebRTC Show: WebRTC in the Real World
Kranky Geek WebRTC Show: WebRTC in the Real WorldKranky Geek WebRTC Show: WebRTC in the Real World
Kranky Geek WebRTC Show: WebRTC in the Real World
 
Kranky Geek WebRTC Show: Krank It Up!
Kranky Geek WebRTC Show: Krank It Up!Kranky Geek WebRTC Show: Krank It Up!
Kranky Geek WebRTC Show: Krank It Up!
 
To Build or Not to Build Your WebRTC Infrastructure
To Build or Not to Build Your WebRTC InfrastructureTo Build or Not to Build Your WebRTC Infrastructure
To Build or Not to Build Your WebRTC Infrastructure
 
WebRTC Audio Codec: Opus and processing requirements
WebRTC Audio Codec: Opus and processing requirementsWebRTC Audio Codec: Opus and processing requirements
WebRTC Audio Codec: Opus and processing requirements
 
WebRTC for Telco: Informa's WebRTC Global Summit Preconference
WebRTC for Telco: Informa's WebRTC Global Summit PreconferenceWebRTC for Telco: Informa's WebRTC Global Summit Preconference
WebRTC for Telco: Informa's WebRTC Global Summit Preconference
 
The Evolving WebRTC Ecosystem | all about WebRTC event, Google's TLV Campus
The Evolving WebRTC Ecosystem | all about WebRTC event, Google's TLV CampusThe Evolving WebRTC Ecosystem | all about WebRTC event, Google's TLV Campus
The Evolving WebRTC Ecosystem | all about WebRTC event, Google's TLV Campus
 
The WebRTC Ecosystem
The WebRTC EcosystemThe WebRTC Ecosystem
The WebRTC Ecosystem
 
WebRTC and Paris: a Love Story
WebRTC and Paris: a Love StoryWebRTC and Paris: a Love Story
WebRTC and Paris: a Love Story
 

Recently uploaded

Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 

Recently uploaded (20)

Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 

Overcoming the Challenges in Testing WebRTC Services

  • 1. Overcoming the Challenges in Testing WebRTC Services Tsahi Levent-Levi November 2015
  • 2. Let me tell you a little secret People don’t usually test WebRTC implementations…
  • 3. Why is that? • WebRTC is still niche/experimental to their business • They are a startup with limited resources • Adding features takes priority over stability • Is this VoIP or Web?
  • 4. At an intersection of worlds 4 Our Internet Web Traditional VoIP
  • 5. The world of VoIP testing • Focused on DUTs (Devices Under Test) • Rely heavily on slow moving standards and implementations • Vast majority of testing solutions are on premise • Assume limited geographies 5
  • 6. The world of Web testing • Focused on different browsers • Rely heavily on the GUI • Responsive design causes GUI changes • GUI and API testing treated as separate • Geography doesn’t matter for functionality 6
  • 7. 5 Major Challenges When trying to test your WebRTC service
  • 8. Browser version changes Do you know if your service will not break next week? #1
  • 9. Browsers update cycle in 2015 This translates to a regression test needed on a monthly basis – not taking into account changes you make to the service 40 41 42 43 44 45 46 35 36 37 38 39 40 Dec-14 Feb-15 Apr-15 May-15 Jul-15 Sep-15 Oct-15 Dec-15 Chrome Firefox
  • 10. Stable, Beta, Dev and Canary Stable What your customers are using Beta What you should expect in the next release Dev Where you can complain about breakage – and expect fixes in time Canary A nightly build of whatever is available at that moment in time Testing only against the Stable version of browsers means you find out issues only after the service breaks for your customers.
  • 11. BrowserYour app A Word about Mobile At what pace do you update you app’s WebRTC lib? WebRTC WebRTC 6-8 weeks update cycle
  • 12. NAT traversal How does your service fair in varying network conditions? #2
  • 13. WebRTC isn’t always P2P Anywhere between 5-50% of your calls get relayed via TURN servers client client Web server TURN server
  • 14. Have you setup your relays properly? • Support for UDP • Support for TCP
  • 15. Location, Location, Location When a call in Paris gets relayed through a TURN server in the US – you lose a customer…
  • 16. Server scale Have you tested your service with 10 browsers? 100? 1,000? More? #3
  • 17. What do you test at scale? • Signaling? • Media relays? • Backend media processing? • Single session multiparty scale? • End-to-end service scale? • Do you add variance to your scale testing?
  • 18. “ A typical conversation… Oh, it should work for 100 people in the same conference. We did test it with 12 people – the number of machines we had available – and it worked perfectly fine.
  • 19. Service uptime Do you know if your service is really running? #4
  • 20. What people monitor today Memory Storage CPU Network Ping
  • 21. End-to-end • There are many moving parts in your service • WebRTC requires 3 or more servers to operate • You need to make sure it runs end-to-end
  • 22. Orchestration How do you automate the mechanics of communications in your service? #5
  • 23. Web testing is simpler (most of the time) 1. Write your script for a browser 2. Run it once 3. Run it in parallel on 10,000 browsers at once 4. You’re done
  • 24. WebRTC is about coordinating people 1. A user and an agent 2. A user and a PSTN/mobile call 3. N users joining in on a single call 4. Automatic/dynamic/manual pairing of the users 5. …
  • 26. About testRTC Come check us out at testRTC.com