标签: tdd

QUnit vs Jasmine?

这两个测试框架之间的主要区别是什么?

我从一开始就是测试驱动开发的新手.

tdd unit-testing qunit jasmine

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

什么是"Stub"?

因此,继续我的新年决议以获得更多TDD,我现在开始更多地使用Rhino Mocks.

我真正想要做的一件事就是确保我真正了解我所要做的事情,所以我想检查一下我对目前所看到的情况的理解(我认为最好把它放在这里作为一个资源).

什么是"Stub"?

testing tdd unit-testing stub

111
推荐指数
5
解决办法
5万
查看次数

NUnit测试运行顺序

默认情况下,nunit测试按字母顺序运行.有谁知道设置执行顺序的方法?这个属性是否存在?

.net tdd attributes nunit

108
推荐指数
10
解决办法
7万
查看次数

F#开发和单元测试?

我刚开始使用F#,这是我的第一个功能语言.我一直在使用C#进行准独家工作,并且很享受F#引导我重新思考如何编写代码.我觉得有点迷惑的一个方面是编写代码的过程发生了变化.我现在已经在C#中使用TDD多年了,非常感谢有单元测试知道我在哪里.

到目前为止,我用F#过程中一直写一些功能,和他们一起玩与交互式控制台,直到我在"合理"确保他们的工作,并调整与合并.这适用于像欧拉项目这样的小规模问题,但我无法想象以这种方式构建大的东西.

人们如何进行单元测试并为F#程序构建测试套件?是否有相当于TDD?任何指针或想法都表示赞赏.

tdd f# unit-testing functional-programming

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

单元测试bash脚本

我们有一个除了Java代码之外还运行一些bash脚本的系统.由于我们正在尝试测试可能会破坏的所有内容,并且这些bash脚本可能会中断,我们希望对它们进行测试.

问题是很难测试bash脚本.

有没有办法或最佳实践来测试bash脚本?或者我们应该退出使用bash脚本并寻找可测试的替代解决方案?

testing bash tdd automated-tests extreme-programming

101
推荐指数
8
解决办法
6万
查看次数

什么是良好的单元测试?

我相信大多数人都在编写大量的自动化测试,而且在进行单元测试时你也遇到了一些常见的陷阱.

我的问题是你是否遵循任何编写测试的行为规则以避免将来出现问题?更具体一点:良好单元测试属性是什么,或者您如何编写测试?

鼓励语言不可知的建议.

language-agnostic tdd integration-testing unit-testing testing-strategies

97
推荐指数
11
解决办法
4万
查看次数

如何在PHP中编写单元测试?

我到处都读到它们有多棒,但由于某些原因,我似乎无法弄清楚我到底应该测试一些东西.有人可能会发布一段示例代码以及他们将如何测试它?如果不是太麻烦:)

php testing tdd unit-testing

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

Android中@SmallTest,@ MediumTest和@LargeTest注释的目的是什么?

我是Android新手,我看过使用这些注释的示例代码.例如:

@SmallTest
public void testStuff() {
    TouchUtils.tapView(this, anEditTextView);
    sendKeys("H E L P SPACE M E PERIOD");
    assertEquals("help me.", anEditTextView.getText().toString());
}
Run Code Online (Sandbox Code Playgroud)

那个注释有什么作用?

java tdd android unit-testing android-espresso

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

使用Visual Studio Code的Mocha断点

是否可以使用Visual Studio Code为Mocha测试添加断点?

通常在调试代码时需要配置launch.json,将program属性设置为要执行的javascript文件.我不知道如何为摩卡做这个.

tdd mocha.js node.js visual-studio-code

92
推荐指数
7
解决办法
3万
查看次数

你如何对单元测试进行单元测试?

我在MVCStoreFront应用程序上观看Rob Connerys的网络广播,我注意到他甚至是最普通的东西,例如:

public Decimal DiscountPrice
{
   get
   {
       return this.Price - this.Discount;
   }
}
Run Code Online (Sandbox Code Playgroud)

会有一个测试像:

[TestMethod]
public void Test_DiscountPrice
{
    Product p = new Product();
    p.Price = 100;
    p.Discount = 20;
    Assert.IsEqual(p.DiscountPrice,80);
}
Run Code Online (Sandbox Code Playgroud)

虽然,我都是单元测试,但我有时想知道这种形式的测试首次开发是否真的有益,例如,在实际过程中,您的代码上方有3-4层(业务请求,需求文档,架构文档) ,实际定义的业务规则(折扣价格是价格 - 折扣)可能被错误定义.

如果是这种情况,您的单元测试对您来说毫无意义.

此外,您的单元测试是另一个失败点:

[TestMethod]
public void Test_DiscountPrice
{
    Product p = new Product();
    p.Price = 100;
    p.Discount = 20;
    Assert.IsEqual(p.DiscountPrice,90);
}
Run Code Online (Sandbox Code Playgroud)

现在测试存在缺陷.显然,在一个简单的测试中,这没什么大不了的,但是我们说我们正在测试一个复杂的业务规则.我们在这里获得了什么?

快速推进应用程序生命的两年,当维护开发人员维护它时.现在业务改变了规则,测试再次中断,一些菜鸟开发人员然后错误地修复了测试......我们现在又有了另一个失败点.

我所看到的只是更多可能的失败点,没有真正有益的回报,如果折扣价格错误,测试团队仍然会发现问题,单元测试如何保存任何工作?

我在这里错过了什么?请教我爱TDD,因为到目前为止我很难接受TDD.我也想要,因为我想保持进步,但这对我来说没有意义.

编辑:有几个人一直提到测试有助于执行规范.根据我的经验,规范也是错误的,通常是错误的,但也许我注定要在一个组织中工作,这些组织的规范是由那些不应该编写规范的人编写的.

tdd agile test-first

89
推荐指数
9
解决办法
4444
查看次数