DotNetNuke单元测试设施和教程

DotNetNuke单元测试设施和教程,dotnetnuke,Dotnetnuke,在dotnetnuke应用程序中执行单元测试的标准、最佳实践方法是什么?我已经搜索了SO以及dnn的网站,但找不到关于这方面的很多信息。我假设dnn有一些用于单元测试的插件,或者至少有一个可以插入的库。我在哪里可以找到更多信息?关于这个主题的教程将是理想的,但任何资源都将不胜感激 谢谢 关于DotNetNuke中的测试,没有太多信息。作为一个基于WebForms的项目,它并没有引起社区中许多开发人员的强烈关注 例如,您可以查看DNN源代码中的单元测试项目,这些项目使用了许多不同的方法。他们使用M

在dotnetnuke应用程序中执行单元测试的标准、最佳实践方法是什么?我已经搜索了SO以及dnn的网站,但找不到关于这方面的很多信息。我假设dnn有一些用于单元测试的插件,或者至少有一个可以插入的库。我在哪里可以找到更多信息?关于这个主题的教程将是理想的,但任何资源都将不胜感激


谢谢

关于DotNetNuke中的测试,没有太多信息。作为一个基于WebForms的项目,它并没有引起社区中许多开发人员的强烈关注

例如,您可以查看DNN源代码中的单元测试项目,这些项目使用了许多不同的方法。他们使用MbUnit和Moq进行单元测试,使用Watin测试web前端


制作可测试模块的主要技术是使用WebForms MVP集成,这样您就有了可测试的、松散耦合的演示器,可以轻松地将依赖项注入其中。有一个开始,但它从来没有完全充实。但是,它在项目页面上确实有一些良好的背景。

对于数据驱动的单元测试方法,请注意以下几点:

  • 为单元测试项目创建app.config文件,并从DNN web app的web.config复制与“数据”、“缓存”相关的部分

  • 在运行任何测试之前安装缓存提供程序:
    ComponentFactory.InstallComponents(新的ProviderInstaller(“缓存”,GetType(CachingProvider)))


单元测试数据驱动模块时:

  • 如果需要,请确保添加核心DNN文件+DotNetNuke.Instrumentation.dll+PetaPoco
  • 在app.config中包括数据和缓存部分(从DNN web.config复制部分)
  • 在调用DataProvider方法之前,在代码中初始化数据和缓存提供程序:

    安装组件(新ProviderInstaller(“数据”,类型为(数据提供程序)),新ProviderInstaller(“缓存”,类型为(CachingProvider)))


b英国,感谢您的回复。由于我有ruby和php的背景,我对您的答案有一个新的.NET问题。当您说WebForms MVP集成是制作可测试模块的主要技术时,您的意思是使用MVP编写单元测试,然后将现在测试过的MVP组件插入DNN吗?或者你的意思完全是别的?WebForms MVP是一个开发模块的框架。该框架实现了标准WebForms开发方法难以实现的分离。您可以使用您想要的任何测试框架(,),以及任何模拟/隔离框架(,)添加ComponentFactory.Container=new SimpleContainer();在安装组件之前,一切正常