提问人:jerhinesmith 提问时间:8/17/2023 更新时间:10/30/2023 访问量:53
如何使用 rspec 测试浏览器自动化代码
How to test browser automation code with rspec
问:
我正在做一个项目,该项目需要大量的浏览器自动化来检索数据、填充表单等。我过去曾使用水豚和硒对网站进行自动测试,但我从未使用过水豚和硒作为应用程序(现在需要测试)。
谷歌几乎一文不值,因为每次搜索“如何测试浏览器自动化代码”都会返回有关如何使用浏览器自动化来测试代码的结果(我明白,这是大多数人使用浏览器自动化的目的)。
有人做过这样的事情吗?有什么提示吗?建议?
答:
1赞
Todd A. Jacobs
8/18/2023
#1
是否应该测试测试可能会引起激烈的争论。然而,在元层面上,你只是像做任何其他形式的测试一样接近它。
如果你正在尝试测试一个网络抓取应用程序或某种基于网络的“数据获取器”(无论它是否基于API或你正在填充/抓取页面),那么它只是另一个应用程序,需要与任何其他应用程序相同的单元和系统测试。
在给定以下条件下,确定每个测试应允许其通过或失败的内容:
- 没有价值。
- 一些应该通过测试的已知输入。
- 一些已知的输入应该无法通过测试。
添加一些模糊测试或边界条件,以确保您的测试在无效或意外输入的情况下正确通过或失败。
真的,没什么好说的了。如果抓取给定页面,则应用程序应填充某些变量;它是否这样做,这些值是否正确?它是否正确地“填充了表单”,无论这实际上意味着什么?如果是 PDF,生成的 PDF 是否与预期的 PDF 匹配,或者至少与其中的相关部分匹配?
测试就是测试。如果您的代码是抓取工具或数据聚合器,则不会使其与任何其他类型的应用程序有根本区别。您仍然希望测试设备或系统结果的已知良好、已知不良和未定义的结果或行为。
评论