gpt4 book ai didi

unit-testing - 带有 Sitecore 7 和 TFS 2012 CI 的 TDD

转载 作者:行者123 更新时间:2023-12-05 00:26:59 24 4
gpt4 key购买 nike

因此,使用 Sitecore 进行测试。这是一个特殊的话题,我已经找到了很多关于它的阅读 Material 。 (Sitecore 开发第 8 章,Alistair Deneys blogNextDigital blogiStern blog,...)但在大多数情况下,他们使用 NUnit 和自定义测试运行器等......最有用的(对我来说在我的上下文)到目前为止是 iStern blog用于使用 Microsoft Fakes 模拟 Sitecore。但是这真的是要走的路吗?

我很惊讶 Hedgehog TDS 系统与 TFS 如此深入地集成并且能够在 Sitecore 开发中进行 CI,以至于没有更多关于如何利用这个系统来设置由 TFS 执行的可靠测试(目前)。

我们现在正在为一个大型新项目做准备,该项目使用 Sitecore 处理前端用户交互,其中使用的数据 95% 落后于 WCF 服务。所以这部分可以很容易地测试和 TDD 开发。需要测试的是驻留在 Sitecore 中的最后 5%(可悲的是包括最高的商业值(value),即在线支付)。 我们是否可以对 sitecore 有足够的深入了解来模拟它? 我倾向于认为不是...如果是这样,那么我们如何针对 sitecore 对我们的 TFS CI 构建运行结论性测试呢?

最后但并非最不重要的一点是,我觉得当前要找到的信息可能有点过时了(邮件可以看到 NextDigital blog 上的评论), Sitecore 7 是否开辟了解决此问题的新方法?

对于那些更多地将其视为哲学而非技术问题的人:对此只能有一个答案,那就是使用能够在 TFS CI 中运行的 Microsoft 测试框架的方法的技术准确定义用于测试为 Sitecore 编写的代码的环境。

最佳答案

微软假货是要走的路吗?在我看来,没有。 Microsoft fakes 允许您测试设计为不可测试的代码。如果您正确设计了解决方案,标准的模拟框架就足够了。

我们是否可以对 sitecore 有足够的深入了解来模拟它?这是一个棘手的问题。除非第三方库是专门为它设计的,并且您会认为它是“稳定依赖项”,否则您不应该尝试模拟它。相反,用你自己的类和抽象来包装它并模拟它们。

看看 Synthesis 和 Glass Mapper。它们是对象映射框架,允许您将 Sitecore 项目映射到界面,同时保持页面编辑器支持。 Glass,特别是在 Sitecore.Context 周围有一个可以模拟的包装器。 Synthesis 也应该是非常可测试的,但我还没有尝试过。

使用这些映射框架之一和良好的 SOLID 设计,您应该能够使大部分代码可测试。请记住,解决方案边缘的类应该足够简单,不需要测试。

关于unit-testing - 带有 Sitecore 7 和 TFS 2012 CI 的 TDD,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21452571/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com