- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的团队开发了三种微服务。这三个一起提供了业务场景。他们与REST和RabbitMQ通信。看起来像Toby Clemson's presentation on Microservice Testing。
每个微服务都有其自己的连续交付管道。它们是交付,而不是部署管道,这意味着最后会有一个手动发布决定。
如何将业务场景的端到端测试(即跨所有微服务的端到端测试)包含到交付管道中?
我的团队建议:
我们添加了一个共享的端到端阶段,该阶段部署了所有三个微服务并对其进行了端到端测试。每次管道中的一个到达此阶段时,它都会进行部署和测试。信号量确保管道一个接一个地通过阶段。失败将停止所有三个管道。
对我而言,这似乎牺牲了微服务架构首先赢得的所有独立性:
最佳答案
简而言之-这样的集成测试将不是微服务开发/部署团队和过程的一部分,而是拥有自己流程的独立团队。您可以在该团队中实现尽可能多的自动化,但是最后您需要决定是否释放。
较长的解释:
发明微服务架构风格是为了帮助大型组织管理大型应用程序并避免团队之间的通信开销和依赖性。因此,如果您想遵循这种风格,则实际上应该有3个独立的团队-每个服务一个团队。这些团队中的每个团队都将在各自服务的整个生命周期中承担全部责任。现在,当您要进行端到端测试(通常称为集成测试)时,您将成立一个负责这些测试的第4个团队。这样,您将有一个人作为负责发布的经理,他拥有一个暂存/测试集群,并决定何时证明测试足以将新版本的服务发布到野外。您的目标应该是在团队之间的依赖和服务发布周期之间尽可能地分离。如果您希望服务团队完全独立,则还可以使集成测试成为每个团队的一部分。这意味着您为每个团队拥有测试/分阶段群集,并且在每个团队中都有负责任的测试/发布经理角色。
关于automated-tests - 如何将跨微服务的端到端测试纳入多个连续交付管道中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44043159/
我正在开发 Kext,它应该可以访问 struct proc->p_pid field 。问题是该结构仅在 XNU 源中定义,所以我面临 incomplete definition of type '
下面是 ES2015 类中的一个方法。 它不能是箭头函数,因为它是异步函数。 但由于它不是箭头函数,因此“this”不在范围内,因此我无法执行 setstate 之类的操作。 有人可以建议我如何将其纳
我想使用 Bootstrap 创建 NC 主题。 我通过 Visual Studio 2013 中的 Nugets 包管理器安装了 Bootstrap。然后我添加: Html.AppendScript
我是一名优秀的程序员,十分优秀!