之前曾多次问过一个问题,但twds mvc开发有特定的倾向。
我一直是一个非常好的男孩,并且一直用相应的单元测试来编码我的所有控制器动作,这非常好(如果有时[读很多]重复的话)。老实说,我实际上已经创建了一个T4模板来编写初始单元测试的大部分裸露的骨骼,然后根据使用情况进行适当的调整。我承认我不太确定如何在包含局部视图的视图中处理测试-但这是另一个问题。
现在,我难以决定的部分就是服务层应该覆盖的深度。原因是我的某些服务方法(无论好坏)实际上执行各种linq查询,然后将谨慎的信息提供给方法中的后续逻辑。我知道我可以(应该??)分解这些方法,以便仅为每个linq语句调用所需的逻辑,然后将其应用到该方法中。但是,在许多情况下,永远不会重复使用linq'functions',因此感觉这会将代码重构的程度过高。
我要问的是,在方法中发生复杂的逻辑时,是否有一种“足够好”的测试方法来简单地声明所需的结果和/或预期的错误,或者是否应该同时模拟和测试每条逻辑线。按照我的观察方式,正确进行测试,然后方法逻辑(逐行)也应具有某种覆盖率。但是(以我的幼稚观点),这可能导致试图保持测试和所实施的方法如此紧密一致(我知道他们应该如此)以至于在测试本身中创建家庭行业的循环永无止境。
我知道我的问题可能会激怒TDD的一些奉献者,他们会认为这是毫无道理的。不在TDD阵营中,这对我来说是“是明智的选择”,因此是一个问题。
顺便说一句-检查了这个想法:
现在展望稳步下降:)
[编辑] -为单身人士(现在是单身!)的“亲密”选民提供好处。这个问题不是主观的。我正在寻找一个非常集中的主题的共识。我不是想激起负面的热情,我不是要揭露技术的缺陷-我是一个巨大的粉丝。因此,请在投票结束时发表有礼貌的评论,以使我受益,因为如果有歧义或错误信息,这可能有助于我重新构造问题。这个问题可能会使大部分的mvc受益。
谢谢!!
吉姆