单元专题提供单元的最新资讯内容,帮你更好的了解单元。
OK,我知道已经有关于 getting started with TDD的问题..但是,我想我知道一般的共识是只是这样做,但是,我似乎有以下问题让我的头进入游戏: >当使用集合,做仍将测试明显的添加/删除/插入成功,即使基于泛型等,我们“知道”它的工作吗? >一些测试似乎永远要实现..如使用字符串输出,是否有一个“更好的”方式去这种事情? (例如,在解析之前测试对象模型,将解析分解成小操作并在那里
我读了很多的帖子,说服我应该开始写单元测试,我也开始使用依赖注入(Unity)为了更容易嘲笑,但我仍然不知道在什么阶段我应该开始写单元测试和模拟,以及如何或从哪里开始。 首选方法是在TDD方法中描述的方法之前编写单元测试? 单元测试有什么不同的方法或方法吗? 测试第一/测试后: 应该注意,作为TDD的一部分的“测试第一”与设计一样多(如果不是更多),因为它是与单元测试。它是一种软件开发技术,它自己
>说我们已经意识到TDD的价值太晚了。项目已经成熟,很多客户开始使用它。 >说使用的自动测试主要是功能/系统测试,并有大量的自动GUI测试。 >说我们有新的功能请求和新的错误报告(!)。所以很多发展仍在继续。 >注意,已经有很多业务对象没有或很少的单元测试。 >它们之间的协作/关系太多,只有通过更高级别的功能/系统测试才能测试。没有集成测试本身。 >大数据库到位有大量的表,视图等。只是为了实例化单
Reading this question帮助我巩固了我一直在使用单元测试的一些问题,TDD等。 自从开发TDD方法以来,我知道这是正确的道路。阅读各种教程帮助我了解如何做一个开始,但他们一直很简单 – 不是真正的东西,一个可以应用于一个活动的项目。我管理的最好的是在我的代码的小部分,例如图书馆,主要应用程序使用,但没有以任何方式集成的书写测试。虽然这是有用的,它相当于约5%的代码库。有很少的关于
是否有任何人可以清楚地定义这些测试级别,因为我发现在进行TDD或单元测试时很难区分。如果有人能详细说明怎么,何时实现这些? 简而言之: 单元测试 – 您单独测试每个单独的代码段。考虑每个文件或类。 集成测试 – 当将多个单元放在一起进行交互时,您需要执行集成测试,以确保将这些单元集成在一起没有引入任何错误。 回归测试 – 在集成(也许固定)后,您应该再次运行单元测试。这是回归测试,以确保进一步的更
如果你(或你的组织)渴望彻底单元测试你的代码,你如何衡量你的努力的成功或质量? >你使用代码覆盖率,你的目标百分比是多少? >你发现像TDD这样的哲学比度量有更好的影响吗? 我的提示不是一个方法来确定你是否有良好的单元测试本身,但它是一种方式来成长一个好的测试套件随着时间的推移。 每当你遇到一个bug,无论是在你的开发或由别人报告,修复它两次。您首先创建一个单元测试来再现问题。当你有一个失败的测试
如何在不破坏封装的情况下执行依赖注入? 使用Dependency Injection example from Wikipedia: public Car { public float getSpeed(); } Note: Other methods and properties (e.g. PushBrake(), PushGas(), SetWheelPosition() ) omi
虽然单元测试对于需要工业强度的大型项目(例如.Net框架API的开发等)似乎有效,但对于小型项目似乎可能有些过度。 什么时候自动化TDD方法是最好的方法,什么时候更好只是使用手动测试技术,记录错误,分类,修复等。 另一个问题 – 当我是微软的测试员时,我们强调,开发人员和测试人员有不同的价值,这两个小组之间的紧张关系可以帮助创建一个伟大的产品。 TDD可以打破这个想法,并创造一种情况,开发人员可能
你可能认为这个问题是像StackOverflow上提出的 this问题。但我试图看看不同的东西。 在TDD中,我们编写包括不同条件,标准,验证码的测试。如果一个类通过所有这些测试,我们很好去。它是一种确保类实际上做它应该做什么和没有别的方法。 如果你遵循Bertrand Meyers的书面对象软件构建一个字,该类本身有内部和外部合同,以便它只做它应该做什么,没有其他,没有外部测试所需的,因为代码,
我总是知道,用单元测试做最大代码覆盖是好的。我也听到大公司的开发人员,如微软说,他们写的测试代码比可执行代码本身更多的行。 现在,它真的很棒吗?它不是有时似乎是一个完全的时间损失,这只是使维修更困难的效果吗? 例如,假设我有一个方法DisplayBooks()填充数据库中的书籍列表。产品要求告诉,如果在商店中有超过一百本书,则必须仅显示一百个书。 因此,使用TDD, >我将首先做一个单元测试Boo
让我从定义开始: 单元测试是一种软件验证和验证方法,其中程序员测试源代码的各个单元是否适合使用 集成测试是软件测试的活动,其中将各个软件模块组合并作为一个组进行测试。 虽然他们经常服务于不同的目的,但这些术语经常混在一起。开发者将自动化集成测试称为单元测试。也有人认为哪一个更好,在我看来是一个错误的问题。 我想请开发社区分享他们对自动化集成测试无法取代经典单元测试的意见。 这里是我自己的观察: >
我目前正试图使用​​测试驱动开发方法来做一个Haskell项目。在Java中,我们可以创建一个包含src和bin文件夹的精细结构化项目,然后有用于使用JUnit进行单元测试的主文件夹和测试文件夹。我只是想知道有没有一个标准的方法来获得这样的结构在Haskell?源文件夹用于二进制文件夹,在源文件夹中有两个文件夹,一个用于测试主源文件。 我的参考是alway Structure of a Haske
我如何在Moq中这样做? Foo bar = new Foo(); Fake(bar.PrivateGetter).Return('whatever value') 看来我只能找到如何嘲笑通过框架创建的对象。我想模拟一个单一的方法/属性我创建的具体对象。 在TypeMock,我只是做Isolate.WhenCalled(bar.PrivateGetter)。返回(‘无论什么值’)。 有任何想法吗?
编码测试 – 首先,我发现我的代码或许有3/4是单元测试;如果我真的极端,并没有写一行代码,除了修复一个失败的单元测试,这个比率会更高。维护所有这些单元测试增加了大量的惯性来编码更改。早期,我吸了它,修复他们。一旦有压力,我最终得到一个broken_unit_tests目录,以重新“有时间”。感觉就像TDD在很短的时间内进行高覆盖,在设计有时间结束之前。 如何找到我的出路这个困境,并开始欢迎不断变
单元测试和ASP.NET Web应用程序在我的组中是一个模糊的点。通常情况下,良好的测试实践通过破解和Web应用程序结束了几年,没有测试。 这个痛点的原因通常围绕编写UI自动化中期开发的麻烦。 您或您的组织如何将最佳TDD实践与Web应用程序开发相集成? 如果您适当地分离图层,则可以实现单元测试。正如Rob Cooper所暗示的,不要在您的WebForm中添加任何逻辑,而不是管理演示文稿的逻辑。所
我最近完成了一个使用TDD的项目,我发现这个过程有点噩梦。我喜欢写测试第一,看我的代码增长,但一旦需求开始改变,我开始做重构我发现,我花了更多的时间重写/修复单元测试比我写代码,事实上更多的时间。 我觉得,当我经历这个过程,将更容易做应用程序完成后的测试,但如果我这样做,我会失去所有的TDD的好处。 那么有没有任何点击/提示编写可维护的TDD代码?我目前正在阅读Roy Osherove的The A
我目前正在阅读“清洁代码”(Rober Martin)(UncleBob),并且普遍喜欢UncleBob的想法。不过,我有点困惑,当我读到他避免了前缀“IPerson”这样的接口。他说“我不想让我的用户知道我正在交给他们一个接口”。 在TDD /注入视角思考中,我会非常感兴趣地告诉我正在处理接口的课程的“用户”。主要原因是我认为系统的不同“代理”之间的接口合同。在我系统的一个角落工作的代理人,不应
今天在Proggit上,我正在阅读一条题为“ Why Unit Testing Is A Waste of Time”的评论。 我不太关心这篇文章的前提,因为我在comment上做了这样的事情: The stem of the problem is that most “units” of code in business software projects are trivial. Change
如果一个人负责撰写测试,另一个人负责履行它们,还是理想的编译器和测试作者是否应该是同一个人呢? 单元测试是您在编写代码时所做的。这个测试是测试你的观点,如何工作(在类/方法/算法的水平上),它支持你在开发时,你可以通过测试前后进行更改,看看仍然是根据测试你的已经到位看到这是一个有助于程序员工作的东西。此外,这些测试还将提供一种方法来查看某些东西应该适用于任何看代码的人。 TDD并没有改变这个概念,
假设我想编写一个验证电子邮件地址的功能 用正则表达式我写了一个测试来检查我的功能并写下 实际功能。让它通过 但是,我可以想出一大堆不同的方式来测试 函数(test@test.com; test234@test.com; test.test.com等)。 我把所有需要检查的咒语都放在一起,单一 测试几个ASSERTS或者我为每一个单独写一个新的测试 我可以想到的事情 谢谢! 大多数测试框架现在支持某