database - Protractor是否也可以直接用于数据库测试?

标签 database protractor

由于 Protractor 主要用于端到端测试,因此要在 UI 级别覆盖用户喜欢的高级场景,

should we use it to test database directly as well?

通过建立数据库连接并触发查询来验证数据库状态可能在用户界面中的用户操作之前和之后?

用于普通直接数据库测试以检查存储过程以测试业务规则/功能?

哪一个是正确的,它与 Protractor 的正确使用方法是什么?

最佳答案

这个问题没有正确或错误的答案。

一般来说,UI 端到端测试应该遵循/模仿用户场景 - 在高级意义上,进行 UI 操作并在浏览器中检查这些操作的结果。更改数据库的方式通常在后端/API 的功能测试中检查,而不是在 UI e2e 测试中检查。

另一方面,总是会有更多的东西要测试,更多的东西要检查——如果一个人是完美主义者,真的很难停止用测试覆盖特定的被测应用程序并停止做出各种断言在每组 Action 之后。您总有办法更深入地检查测试结果。

此外,另一点是,如果您要连接到测试中的数据库并检查测试如何影响数据,您还有一件事需要跟踪 - 您的数据库查询必须与您的数据库架构。

总而言之,这实际上取决于特定应用程序或被测功能的重要性。例如,如果它与支付或货币交易或发射火箭等有关,那么你越深入越好。

关于database - Protractor是否也可以直接用于数据库测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41527135/

相关文章:

Protractor 不滚动到测试元素

node.js - 使用 Protractor 给出错误的端到端测试

javascript - 在 Protractor 中,通过2个属性选择一个元素

java - @Id 注释在 Hibernate 和 Oracle 中不起作用

sql - "select max in group"的最佳性能查询?

database - 数据库字段中的枚举存储

angularjs - 当我们使用 E2E 测试在下拉 Protractor 中有多个包含相同文本的选项时,如何选择任何特定选项

node.js - Protractor 插件 - 可访问性 - AssertionError : path must be a string

MySQL 复制/同步 : purge from master but not from slave

database - 第一次安装 postgres 时, `initdb` 应该在哪里?