WebRTC is the open source technology which use for real time audio and video communication over Web. This technology is widely used in Web based Video Chat Applications and Video KYC applications specially designed for Banks, Hospitals and many organizations. As we know, Software Development is iterative process where new features built in various phases. So whenever new features (code) deployed Manual Tester needs to do Smoke and Sanity test it will take so much manual efforts which is undesirable thing for every business. So every business wants to automate this work.
Our one client approached us for his Web RTC based Application Automation. He wants automation of his regression test suites. His application is designed for Banks to do Video KYC. Using this application, Bank agent make a session with customer and validate customer details, PANCARD, Identity Card and other legal documents. To automate this use case we need two workstation and one for Agent and another for customer and both machines should have camera and mic. Client wants automation of this case and configures automation script over multiple environment and various banks with end to end to integration with Continuous Integration.
To deliver above requirement, our team explored multiple approaches but to achieve actual production type test we decided to utilizes the capability of Selenium WebDriver and Selenium Grid. Our team designed Selenium WebDriver based framework where two script written one script to launch Agent session and another script to launch customer session and we used Selenium Grid to hub and node creation. We triggered both script parallel on distributed test between node and hub. This way helped us to automate end to end business use case and we successfully configured script in Continuous Integration Environment. Now, whenever deployment happens our automation builds trigger and once after successful competition code move to next environment and this work saved huge manual efforts of QA which was used in Smoke and Sanity Testing.