使用数据库进行前端测试有意义吗?

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

我有一个同事的任务,我对此有点怀疑。本质上,我有一个使用 Cucumber、Java、Selenium 和 JUnit 的前端测试框架。

我的同事试图说服我,我们可以使用数据库来设置所需的测试先决条件。例如,在运行这些测试之前,我需要一个特定的状态,但对我来说,数据库可以执行创建此状态的步骤似乎难以置信。我可能是错的,因为我对自动化测试还比较陌生。

有人可以给我一些关于这是否可能或值得追求的建议吗?

编辑:此先决条件的输出是需要在下一步开始之前创建的特定文件。

java selenium-webdriver cucumber
1个回答
0
投票

这些类型的测试是可能的,但最终创建和维护起来非常耗时。

一些问题:

  1. 您需要确保一个测试中所做的更改不会“渗透”到另一个测试中(例如,测试在运行 A、B 时通过,但在运行 B、A 时失败)。最好在测试设置期间创建测试记录,而不是改变其他测试使用的现有“共享”记录。

  2. 在这种情况下您很可能无法使用数据库事务和回滚,因为 UI 和测试工具(cucumber)将拥有自己的连接

  3. 如果直接在数据库上进行更改(例如通过 JDBC),您需要确保删除 UI 可能拥有的任何缓存。

  4. 您可能会发现维护此类测试的成本不值得这么麻烦。也许对你的 UI 进行一些“hello world”测试(例如,每个页面加载,显示一些数据)会给你一些维护起来不太昂贵的健全性测试

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