我们有一个复杂的系统,如下图所示,由3个交互系统组成:A,B和C.每个系统都有自己的数据库,服务和UI层。系统通过HTTP协议进行通信。
复杂系统的基本工作流程如下:用户在系统A中创建交易,将交易存储在自己的数据库中并将其推送到系统B.在系统B中,交易被验证并存储在自己的数据库中。用户可以使用系统A的UI以及系统B的UI查看,编辑和管理交易的权利。系统C定期从系统B提取数据并再次将其存储在自己的数据库中。最后,用户可以查看系统C的UI处理。
我们假设系统A,B和C由单独的自动化集成测试覆盖。这些系统由不同的团队(但是同一家公司)开发,具有单独的代码库并使用不同的语言(Java,C#)。任务是为整个复杂系统创建自动化的端到端服务层测试(也称为Subcutaneous Tests)。选择的测试语言是C#。
以下是需要自动化的端到端测试场景的简化示例:
到目前为止,有两种方法可以创建我们团队成员建议的自动端到端测试:
请帮助我们在上述方法之间做出选择,或提出不同的方法。