标签: tdd

开始TDD - 挑战?解决方案?建议?

好吧,我知道已经有关于开始使用TDD的问题了.但是,我想我知道一般的共识就是这样做,但是,我似乎有以下问题让我的头脑进入游戏:

  • 使用集合时,仍然会测试显而易见的添加/删除/插入是否成功,即使基于泛型等我们"知道"它的工作方式?
  • 有些测试似乎需要永远实现..比如在使用字符串输出时,是否有一种"更好"的方法来处理这类事情?(例如,在解析之前测试对象模型,将解析分解为小操作并在那里进行测试)在我看来,你应该总是测试"最终结果",但是这可能会变化很大并且设置起来很乏味.
  • 我没有使用测试框架(工作不会支付一个)所以我可以"练习"更多.有没有免费商用的好产品?(目前我使用的是'ol Debug.Assert :)
  • 可能是最大的..有时候我不知道会发生什么发生..我的意思是,你得到了绿灯但是我总是担心我可能会错过一个测试..你是否深入挖掘试图打破代码,或者让它等待它以后都会掉下来(这将花费更多)..

所以基本上我在这里寻找的不是" 只是做它 "而是" 我做了这个,有这个问题,通过这个解决了它们 ".. 个人经历:)

language-agnostic tdd unit-testing

43
推荐指数
2
解决办法
2万
查看次数

PHP中的测试驱动开发

我是一名使用PHP的网络开发人员.我在C#桌面应用程序中使用测试驱动开发的经验有限.在那种情况下,我们使用nUnit作为单元测试框架.

我想在新项目中开始使用TDD,但我真的不知道从哪里开始.

您对基于PHP的单元测试框架有什么建议?对于对TDD概念不熟悉的人来说,有哪些好的资源?

php tdd unit-testing

43
推荐指数
3
解决办法
2万
查看次数

使用moq模拟虚拟只读属性

我找不到办法做到这一点,虽然这可以手工完成,所以为什么不用moq?

tdd unit-testing moq mocking

43
推荐指数
1
解决办法
1万
查看次数

为什么TDD'Spikes'被称为'Spikes?

测试驱动的开发人员提到了一个快速,探索性的调查,涉及编写一些东西以查看它是否有效,一个尖峰.

有没有想过为什么他们提出这个词?

更新:肯特贝克的造币对我来说就像是"原始"造币,虽然我认为他对这个词的使用没有多大意义.编写一个快速测试是"在整个项目中飙升"?

有趣的是,他似乎停止使用这个词,因为它为不同的人带来了不同的含义 - 见下面的证据!

tdd

42
推荐指数
3
解决办法
1万
查看次数

对于小型项目,TDD是否过度杀伤?

我最近一直在阅读关于TDD的内容,而且我现在还没有完全卖掉它......我做了很多小的爱好项目(只有我)而且我担心如果试图做TDD是过度的这样的事情.虽然我已经看到过3个开发人员做TDD的小型开源项目.(虽然我看过一些同样做TDD的单人项目)

那么TDD总是一件好事,或者在什么门槛上使用它是有意义的?

language-agnostic tdd methodology

42
推荐指数
8
解决办法
3240
查看次数

使用依赖注入与Roboguice?

我正在开发一个Android项目,我想知道关于什么是构建Android应用程序的好架构的任何建议.

我想使用Roboguice使用依赖注入,我一直在阅读MVVM模式或MVC模式(Android MVVM设计模式示例).

另外我知道roboguice有一个非常酷的基于上下文的事件的提升和处理功能,可以在代码解耦时非常可测试.

关于工作设计模式的任何建议?您已经合作或开发过的可测试且可扩展的架构?

architecture tdd android design-patterns roboguice

42
推荐指数
1
解决办法
2万
查看次数

如何开始单元测试或TDD?

我读了很多帖子,说服我应该开始编写单元测试,我也开始使用依赖注入(Unity)以便更容易进行模拟,但我仍然不太确定我应该在哪个阶段开始编写单元测试和模拟,以及如何或从何处开始.

首选方法是在TDD方法中描述的方法之前编写单元测试吗?

单元测试有什么不同的方法或方式吗?

tdd unit-testing

41
推荐指数
6
解决办法
2万
查看次数

如何编写好的单元测试?

有人可以建议书籍或材料来学习单元测试吗?

有些人认为没有单元测试的代码是遗留代码.如今,测试驱动开发是一种轻松管理大型软件项目的方法.我非常喜欢C++,我没有接受任何正规教育就自己学习.我之前从未考虑过单元测试,所以感到被遗忘了.我认为单元测试很重要,从长远来看会有所帮助.我将不胜感激这个主题的任何帮助.

我主要关注的是:

  1. 什么是单元测试?它是一个应该分析的测试用例的综合列表吗?所以让我们说一下我有一个名为"复数"的类,其中包含一些方法(让我们说找到共轭,一个重载的赋值运算符和一个重载的乘法运算符.这类的典型测试用例应该是什么?有什么方法吗?选择测试用例?

  2. 有没有可以为我创建单元测试的框架,或者我必须编写自己的类进行测试?我在Visual Studio 2008中看到了"测试"的选项,但从未让它工作.

  3. 单元测试的标准是什么?是否应对班级中的每个功能进行单元测试?为每个班级进行单元测试是否有意义?

c++ tdd unit-testing

41
推荐指数
2
解决办法
2万
查看次数

如何在多个文件中设置mocha测试用例的执行顺序

我有两个包含mocha测试用例的javascript文件.

//----------abc.js -------------

describe("abc file", function(){
  it("test 1" , function(){
    assert.equal(20 , 20); 
  });
}); 

//---------xyz.js--------------
describe("xyz file", function(){
      it("test 1" , function(){
        assert.equal(10 , 10); 
      });
    });
Run Code Online (Sandbox Code Playgroud)

我把它们放在一个名为的文件夹中test,当我执行mocha命令时,第一个文件(abc.js)总是在xyz.js之前执行.我认为这可能是由于按字母顺序排列并将文件重命名为

abc.js => xyz.js
xyz.js => abc.js
Run Code Online (Sandbox Code Playgroud)

但是,仍然首先执行xyz.js(先前的abc.js)的内容.如何更改这些测试文件的执行顺序?

javascript tdd mocha.js node.js

41
推荐指数
6
解决办法
3万
查看次数

eslint应该列在项目的依赖项中,而不是devDependencies

要么我不明白,dependenciesdevDependencies在节点还没有100%或eslint只是错在这里(不能够正确地分析这个的):

   3:1   error  'chai' should be listed in the project's dependencies, not devDependencies              import/no-extraneous-dependencies
   4:1   error  'chai-enzyme' should be listed in the project's dependencies, not devDependencies       import/no-extraneous-dependencies
   5:1   error  'enzyme' should be listed in the project's dependencies, not devDependencies            import/no-extraneous-dependencies
   7:1   error  'sinon' should be listed in the project's dependencies, not devDependencies             import/no-extraneous-dependencies
   9:1   error  'redux-mock-store' should be listed in the project's dependencies, not devDependencies  import/no-extraneous-dependencies
Run Code Online (Sandbox Code Playgroud)

这些是测试依赖项,为什么说它们应该被列入dependencies

附加说明:我们使用Travis作为我们的CI,所以我不知道它是否会对此产生影响.

javascript tdd mocha.js node.js enzyme

41
推荐指数
3
解决办法
2万
查看次数