由于 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/