在使用 Testplane 进行 Web 应用程序测试时,使用远程浏览器网格与本地浏览器相比有什么意义?

问题描述 投票:0回答:1

我正在使用 testplane 框架 (https://testplane.io/) 来运行我的 Web 应用程序的自动化测试。目前我自动化的操作非常简单,例如打开一个页面,单击几个按钮,然后断言该页面包含一些文本等等。

基本上我不确定为什么我可能想使用远程浏览器网格(例如浏览器堆栈)而不是本地浏览器。到目前为止,本地浏览器似乎更快、更容易调试并且通常更方便。但是测试平面文档中有很多对远程网格的引用,我开始怀疑我是否做错了什么。

selenium-webdriver testing automated-tests web-testing
1个回答
0
投票

这两种选择都是有效的,并且各有利弊!

在本地浏览器上运行测试确实更快,并且对于小型项目来说通常就足够了。一般来说,如果您只有很少的浏览器来运行测试,没有视觉检查并且不需要并行运行数十个测试,那么使用本地浏览器是个好主意。

远程浏览器网格具有以下优点:

  • 执行目视检查时的一致性。这是一个大问题,因为即使您使用完全相同的浏览器,页面的屏幕截图在不同环境下也会有所不同。即使笔记本电脑是否连接电源之类的事情也可能在目视检查中产生差异。在远程电网中,所有这些风险都消失了。
  • 多种浏览器、版本,如果您愿意,您可以在数十种不同的环境上进行测试(例如,在真实的 iOS 或 Android 设备上进行测试)
  • 你不需要花时间在 CI 中下载和安装浏览器(尽管你也可以使用本地浏览器解决这个问题,只需将它们打包到你的 docker 镜像中)
  • 无论您想要多少种不同的浏览器,对硬件的影响都为零

还有第三种选择——通过浏览器使用本地 docker 容器。此选项解决了视觉检查不一致等问题,同时仍然快速(网络方面)和本地。

总而言之,我认为从本地浏览器开始是个好主意,随着项目的增长和测试变得更加复杂,切换到 docker 镜像中的浏览器,最终切换到远程网格。另外,您始终可以在 CI 任务中使用远程网格,同时保留本地浏览器进行开发。

要切换到远程网格,您只需在测试平面配置中传递 gridUrl 参数即可。

© www.soinside.com 2019 - 2024. All rights reserved.