代码之家  ›  专栏  ›  技术社区  ›  Tangiest

单元测试和SharePoint开发

  •  5
  • Tangiest  · 技术社区  · 16 年前

    我对为我正在做的SharePoint开发工作编写单元测试感兴趣。有人能提出在MOSS中实现单元测试的实用方法吗?

    请注意,任何第三方工具都必须是免费的(但不一定是开源的);我工作的公司不会支付额外的工具费用。特别是,对于SharePoint的Typemock隔离器的任何替代品,我们将不胜感激。

    谢谢,马吉坎迪。

    5 回复  |  直到 16 年前
        1
  •  5
  •   Ryan    16 年前

    对你来说,这是一个有争议的选择——不要使用模仿!

    而是进行集成测试,因为一旦您使用SharePoint OM,这就是您正在做的事情。

    将尽可能多的逻辑放在可以从请求上下文外部运行的库程序集中(重载构造函数以在HttpContext或SPWeb中传递)。

    仅为单元测试设置服务器/站点(最好是VM,以便您可以轻松回滚并创建新实例),并针对此设置运行。 ( VMWare Server

    如果您正在运行连续构建,您应该能够将其设置为自动运行并报告结果。或者使用开源的批处理文件魔法 nUnit

    缺点

    • 你需要做一些准备工作 用于测试的数据(尽管如此) 不仅仅是得到嘲笑 工作?)

    • 不是所有的东西都能像这样测试

    • 运行可能需要更长的时间,但如果作为连续构建的一部分运行,这是一个问题吗?

    • 团队需要更多的纪律,以避免踩到其他人的脚。

    • 您针对真实SharePoint OM的测试,以及所有令人困惑的不一致性和特殊情况(如果您不友善,您可以称之为bug;)

    • SharePoint 2010发布后,您将能够针对2007和2010运行测试,查看更改的内容,确保您的库能够针对这两个版本运行(如果适用于您的项目)

    所有项目的取舍都是不同的,但对于我的项目,我更喜欢安全性,知道我是在测试真实的东西——如果你愿意,可以叫我老式!

        2
  •  2
  •   Colin    16 年前

    据我所知,除了您提到的SharePoint的Typemock隔离器之外,没有其他的。众所周知,单元测试SHarePoint非常困难。

        3
  •  2
  •   Phill Duffy    16 年前

    Andrew Woodward是TDD和SharePoint的忠实粉丝-请查看他的网站: http://www.21apps.com/agile/unit-testing-sharepoint-getting-into-the-object-model/

        4
  •  2
  •   Jeremy Thake MSFT    16 年前

    我录了一张唱片 web cast 关于SharePoint单元测试。这也包括在 SharePointDevWiki.com 也

        5
  •  1
  •   jimmystormig    16 年前

    似乎Telerik的JustMock也可以使用。它还可以模拟密封类、静态等。

    推荐文章