在产品开发生命周期中,WebRTC 应用程序与其他应用程序并无不同。尽管如此,了解 WebRTC 及其生命周期可以极大地帮助我们满足 WebRTC 测试需求。
描述产品开发生命周期的方法有很多种,而且这种描述会因描述者的不同而有所变化。以下是我自己对产品开发周期的理解,它与 WebRTC 测试非常吻合。
在开发 WebRTC 应用程序时,必须首先考虑整个产品开发生命周期流程。WebRTC 会以各种方式影响流程中的每个步骤。让我们进一步探讨这些方面。
规划
在规划 WebRTC 应用程序时,需要了解 WebRTC 作为一种技术的能力和局限性。在这里,你使用的编解码器和支持的浏览器(都支持,但略有不同)等都会改变你的计划。
不过,这里最重要的是要明白,WebRTC 应被视为一场马拉松,而不是短跑:
- 浏览器中的 WebRTC 实现和行为会随着时间的推移而改变,你需要适应这些变化。
- 作为一种流行的协议,WebRTC 通常是黑客攻击的目标,几乎每个月都会推出安全补丁。您需要跟踪这些补丁。
- 重塑远程协作是一场竞赛。供应商正试图将 WebRTC 推向最前沿。这可能会导致用户体验(UX)和你需要遵循的要求发生变化。
无论你的计划是什么,都要确保你的团队拥有 WebRTC 技能,并做好长期工作的准备。此外,一定要考虑到 WebRTC 测试需求。在后期阶段考虑这些需求意味着需要更多的资源来满足这些需求。
设计
设计阶段通常是团队真正开始关注 WebRTC 测试的阶段。
根据规划阶段收集的需求,你现在需要确保并验证团队所做的一切都经过了精心设计。在进行群组视频通话时,情况更是如此–仅仅是将单个房间/会话/呼叫/会议的规模扩大到 4 人以上就需要精心设计和优化。
有时,甚至需要构建小型概念验证并进行测试。为此,启动多个浏览器进行一些初始 WebRTC 测试的可靠和自动化方法非常有用。
开发
在这一阶段,工程师将开发 WebRTC 应用程序,编写代码。在这一阶段,你可能会使用开源媒体服务器、CPaaS(通信平台即服务)平台,或者自己从头开始构建一切。
无论使用哪种方法,都要确保在进入测试阶段之前正确测试您的 WebRTC 实施。为什么?因为你的用例与其他已有的用例不同(即使你不这么认为)。媒体服务器和 CPaaS 平台针对特定场景进行了高度调整,很可能与你的情况不同。你需要对它们的配置和您的代码进行调整和微调,使其按照你的要求顺利运行。
使用 WebRTC 测试自动化解决方案可以极大地帮助工程师进行所需的深度调试和故障排除。
测试
一旦进入测试阶段,测试人员和工程师之间往往会发生冲突。测试人员需要一种方法来运行场景并确定是否成功。工程师需要一种方法来查看测试结果和日志,找出出错的地方。然后,测试人员需要一种方法,以可预测和可重现的方式验证相同的场景,确保所应用的修复功能按计划运行。
你还需要具备大规模工作的能力,同时运行数百甚至数千个浏览器,并快速检索和分析结果。缩短测试人员和工程师之间的周期意味着更快的发布周期,以及与用户之间更好的反馈回路——所有这些都能更好地利用你的工程技术。
这就是可靠的 WebRTC 测试自动化解决方案的优势所在,它可以缩短产品上市时间,提高 WebRTC 应用程序的可信度。
部署
从开发和质量保证 (QA) 环境转移到生产环境需要额外的测试。确保正确配置生产环境,并提供规划阶段概述的非功能性要求。
与开发和测试阶段一样,使用可靠的 WebRTC 测试自动化解决方案将对你大有帮助。
维护
当你的产品在生产中与真实用户一起运行时,会发现一些问题:
- WebRTC 基础设施时常会出现故障。你需要知道何时发生故障,最好是在故障发生前就知道,以减少停机时间和对用户的影响。
- 用户会抱怨。有时,他们的抱怨是有道理的,并指出了实施过程中的失误。在其他时候,这些投诉会源于他们遇到的本地问题,无论是网络连接问题还是设备故障。
你拥有的可视性和支持工具越多,为客户提供的服务就越好。
以下是应该考虑的 3 个不同的维护方面:
- 测试基础设施: 在平台上自动生成可预测、可重复的测试场景,以验证平台是否按预期运行。这一点非常重要,因为它是衡量服务性能的主观标准。
- 监控用户流量: 收集并分析系统中所有会话的 WebRTC 流量。以汇总形式提供信息,同时提供单个用户级别的深入分析。通过这种方式,可以在问题发生时进行调查,发现使用趋势和模式。
- 为用户提供网络测试解决方案: 为用户提供自助服务解决方案,帮助用户找出设备和连接方面的具体问题。这可以减轻支持团队的大量工作,并确保你的最终用户真正满意您的产品。
WebRTC 测试——你是如何应对的?
说到 WebRTC 测试,有许多工具需要在整个产品开发生命周期中使用。这些工具对于成功实施和部署任何 WebRTC 应用程序都非常重要。
一些团队倾向于为此构建自己的解决方案,而另一些团队则倾向于使用第三方供应商的解决方案——考虑到他们的核心竞争力以及专注于 WebRTC 应用程序实施本身的需要。
Cyara 提供广泛的 WebRTC 测试解决方案,可在产品开发生命周期的每个阶段提供测试。
作者:Tsahi Levent-Levi
原文:https://blog.cyara.com/impact-of-webrtc-testing-development-lifecycle
本文来自作者投稿,版权归原作者所有。如需转载,请注明出处:https://www.nxrte.com/jishu/webrtc/42617.html