问题标签 [unit-testing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
24614 浏览

java - 为不同的 JUnit 测试使用不同的类加载器?

我有一个 Singleton/Factory 对象,我想为其编写 JUnit 测试。Factory 方法根据类路径上的属性文件中的类名来决定要实例化哪个实现类。如果没有找到属性文件,或者属性文件不包含类名键,那么该类将实例化一个默认实现类。

由于工厂会在实例化后保留单例的静态实例以供使用,因此为了能够在工厂方法中测试“故障转移”逻辑,我需要在不同的类加载器中运行每个测试方法。

JUnit(或其他单元测试包)有什么方法可以做到这一点?

编辑:这是一些正在使用的工厂代码:

0 投票
7 回答
41250 浏览

c# - 如何对 Windows 服务进行单元测试?

.NET 框架:2.0 首选语言:C#

我是 TDD(测试驱动开发)的新手。

首先,是否可以对 Windows 服务进行单元测试?

Windows 服务类派生自 ServiceBase,它具有可覆盖的方法,

  1. 启动
  2. 停车

我怎样才能触发这些方法被调用,就好像单元测试是一个以正确顺序调用这些方法的实际服务一样?

在这一点上,我什至在做单元测试吗?还是集成测试?

我看过 WCF 服务问题,但这对我来说没有任何意义,因为我从未处理过 WCF 服务。

0 投票
7 回答
2022 浏览

unit-testing - 如何将单元测试改造成代码库?

您是否有任何将单元测试改进到当前没有单元测试的代码库的策略?

0 投票
11 回答
42602 浏览

c# - 在测试期间覆盖 DateTime.Now 的好方法是什么?

我有一些(C#)代码依赖今天的日期来正确计算未来的事情。如果我在测试中使用今天的日期,我必须在测试中重复计算,这感觉不对。在测试中将日期设置为已知值的最佳方法是什么,以便我可以测试结果是否为已知值?

0 投票
3 回答
3921 浏览

unit-testing - 使用依赖网络的代码进行单元测试

我正在尝试更好地对我的代码进行单元测试,但现在我正在编写大量处理远程系统的代码。SNMP、WMI 之类的。对于大多数类,我可以模拟对象来测试它们,但是你如何处理对真实系统的单元测试呢?例如,如果我的班级出去并获得了服务器的 Win32_LogicalDisk 对象,我怎么可能对它进行单元测试?

0 投票
4 回答
4844 浏览

unit-testing - 从 NUnit 向 TestResult.xml 文件添加更多信息

我希望能够将“消息”添加到单元测试中,以便它实际上出现在 NUnit 生成的 TestResult.xml 文件中。例如,这是当前生成的:

我希望能够拥有一个额外的属性(或节点,视情况而定),例如:

这个想法是上面的“消息”将以某种方式在测试方法本身中定义(在我的例子中,在运行时生成)。有没有我想念的地方能做这样的事情?

0 投票
1 回答
360 浏览

visual-studio - 如何找到正在执行的测试的当前名称?

我知道我可以在执行该方法时找出方法的名称,只是想知道 setup 方法是否有方法。我想属性方法会起作用,但从设置方法来看,它会是最好的。

编辑 NUnit

0 投票
1 回答
2251 浏览

.net - 如何使用 NAnt 0.86 beta 运行 NUnit v2.4.8 测试?

我最近尝试使用 NAnt (beta 0.86.2962.0) 运行一些使用 NUnit 的最后一个稳定版本 (v2.4.8) 编译的单元测试,但没有成功。

我得到的错误如下:

[nunit2] 程序集“C:\Dev\MySample\bin\tests\My.Sample.Tests.dll”不包含任何测试。

当然,该程序集包含我可以从任何运行器运行的测试,例如 NUnit one、TestDriven 或 Resharper。我想使用 <nunit2> 任务,而不是直接使用 <exec> 任务,但我想知道它是否仍然可能,即使使用 app.config 文件绑定程序集版本。

0 投票
8 回答
16777 浏览

php - PHP 中的测试驱动开发

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

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

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

0 投票
3 回答
2031 浏览

.net - .NET 的自动化单元测试生成工具

希望获得您对自动化测试工具的看法(投票应该将好的工具带到顶部)

理想的工具将:

  • 消除向方法提供一组值的需要。
  • 采用交互式探索性测试等技术,检查代码以确定执行所有代码路径所需的值。即方法的单元测试由代码的复杂性决定

例如,如果一个方法检查一个整数参数是否为 123,则至少会生成 2 个单元测试:一个参数是 123,一个不是。

对于 Java,我的理解是这些是一些选项,但不是 .NET

  • 测试Gen4J
  • 搅拌机

听说过来自 Microsoft Research 的 Pex - For .NET,但它具有非商业许可证

谢谢