【问题标题】:MonoRail: Testing, Route Extensions, Folder StructuresMonoRail:测试、路由扩展、文件夹结构
【发布时间】:2010-04-29 10:41:32
【问题描述】:

我有几个关于 MonoRail 使用的问题

测试

是否每个人都倾向于使用 NUnit 进行测试?我没有足够的测试来知道这是否是一个很好的测试框架。我只是想比以前更深入地测试我的应用程序,并想知道是否有任何一般准则。

您是否应该将控制器复制到测试区域,然后将其重命名为 test 并重新运行它?您如何确保您的测试项目和主项目彼此一致?这只是重新复制所有内容的情况,还是有工具可以为您完成?

路线扩展

MonoRail 倾向于使用<action>.rails,如果您正确配置路由,是否可以省略.rails 部分?为什么这似乎是标准?

文件夹结构

我还没有找到真正指出您的标准文件夹结构的任何地方。当然,你有控制器、模型和视图。但是您的模型文件夹也应该包含您的数据访问对象。我见过一些类似的东西

-> Models
   -> DaoClasses
   -> Entities

但是用于从视图中获取数据的自定义结构呢?如果您使用 NHibernate,那么在哪里粘贴映射的好地方?我知道这完全取决于开发人员,但我还没有真正看到任何标准方法。

干杯

【问题讨论】:

  • 我认为如果你把它分成三个问题会更好,因为它们完全不相关。我会说: 1. “翻阅任何 NUnit 入门指南” 2. 是的。这是自 IIS6 天以来的标准,如果您还提供来自同一网站的静态内容,那么无扩展 url 在服务器上会产生性能成本。 3. 很有个性。我会把你指向“洋葱架构”的一个好提议jeffreypalermo.com/blog/the-onion-architecture-part-1
  • 至于第 2 点,它们是否还有性能成本,或者您可以修改您的路线以拥有某种“静态资源”文件夹?

标签: nhibernate castle-monorail


【解决方案1】:

MonoRail 不强制执行任何特定的测试框架。您可以使用 NUnit、MsTest、MbUnit、xUnit 等。使用 NUnit 不会出错。看来你需要熟悉单元测试,在网上搜索一些关于该主题的介绍。基本上,您创建一个带有对实际项目的reference 的测试项目(从不复制代码),然后根据实际代码编写测试代码。对于 MonoRail 特定的测试,请参阅 this wiki page

我对 MonoRail 路由不是很熟悉,但我认为 .rails 扩展名经常出现,因为无扩展名路由在 IIS6 上有些复杂。在 IIS7 上,这应该不是问题。此外,routing documentation 使用 .aspx 作为扩展名。

This is the standard folder structure 用于 MonoRail 项目。

在 MonoRail 应用程序中使用 NHibernate 的一种常见方法是为 NHibernate 类创建一个单独的项目,然后从 Web 项目中引用该项目。或者您可以将所有内容放在同一个项目中,但至少将 NHibernate 实体放在单独的命名空间中。

我强烈建议您查看 CastleCasts.com,这是了解 MonoRail 及其相关项目的优秀资源。

【讨论】:

    猜你喜欢
    • 2011-04-04
    • 2013-08-26
    • 2020-11-19
    • 1970-01-01
    • 1970-01-01
    • 2011-10-01
    • 2012-10-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多