问题标签 [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 投票
9 回答
27300 浏览

delphi - Delphi 中的单元测试——你是怎么做的?

我想知道这里的少数 Delphi 用户是如何进行单元测试的,如果有的话?是否有任何与您发现效果很好的 IDE 集成的东西?如果没有,您正在使用什么工具,您是否拥有或知道演示它是如何工作的示例迷你项目?

更新:

我忘了提到我正在使用 BDS 2006 Pro,虽然我偶尔会进入 Delphi 7,当然其他人可能正在使用其他版本。

0 投票
7 回答
6205 浏览

unit-testing - 将 TDD 与 Web 应用程序开发集成的最佳实践?

单元测试和 ASP.NET Web 应用程序在我的小组中是一个模棱两可的点。通常情况下,良好的测试实践会落空,Web 应用程序最终会在没有测试的情况下运行数年。

造成这个痛点的原因一般都围绕着在开发过程中编写 UI 自动化的麻烦。

您或您的组织如何将最佳 TDD 实践与 Web 应用程序开发相结合?

0 投票
5 回答
433 浏览

unit-testing - How do you unit test web apps hosted remotely?

I'm familiar with TDD and use it in both my workplace and my home-brewed web applications. However, every time I have used TDD in a web application, I have had the luxury of having full access to the web server. That means that I can update the server then run my unit tests directly from the server. My question is, if you are using a third party web host, how do you run your unit tests on them?

You could argue that if your app is designed well and your build process is sound and automated, that running unit tests on your production server isn't necessary, but personally I like the peace of mind in knowing that everything is still "green" after a major update.


For everyone who has responded with "just test before you deploy" and "don't you have a staging server?", I understand where you're coming from. I do have a staging server and a CI process set up. My unit tests do run and I make sure they all pass before an an update to production.

I realize that in a perfect world I wouldn't be concerned with this. But I've seen it happen before. If a file is left out of the update or a SQL script isn't run, the effects are immediately apparent when running your unit tests but can go unnoticed for quite some time without them.

What I'm asking here is if there is any way, if only to satisfy my own compulsive desires, to run a unit test on a server that I cannot install applications on or remote into (e.g. one which I will only have FTP access to in order to update files)?

0 投票
6 回答
6595 浏览

web-services - 自动化 Web 服务测试

我想从 NUnit 或 MBUnit 中对 Web 服务进行一些集成测试。我还没有深入研究这个,但我很确定我需要在“单元测试”中启动 WebDev.WebServer.exe 来做到这一点。(我知道这不是真正的单元测试)。

是的,我可以自己测试 Web 服务使用的底层对象(我就是这样),但我对在这种情况下测试感兴趣的是代理都按预期工作和处理,等等。

有什么建议吗?

0 投票
4 回答
8067 浏览

asp.net - 将 NUnit 添加到 ASP.NET MVC 测试框架的选项中

  • 我已经安装了 nUnit。
  • 我已经安装了 VS2008 团队版。
  • 我安装了 ASP.Net MVC Preview 4 (Codeplex)。

在创建新的 MVC 项目时,如何让 Visual Studio 将 nUnit 显示为测试框架?在这一点上,我仍然只有 Microsoft 测试框架作为选择。

更新:我安装了 nUnit 2.5,但仍然没有成功。从我在谷歌上搜索的内容来看,我似乎需要为测试项目创建模板,以便它们显示在“创建单元测试项目”中。我会认为模板可用于 nUnit、xUnit、MBUnit 等。人。此外,看起来我需要创建注册表项。有人有任何额外的信息吗?

更新:我通过研究确定了这个问题的答案,并将其发布在下面。

0 投票
9 回答
8258 浏览

database - 单元测试数据库

去年夏天,我正在开发一个基本的 ASP.NET/SQL Server CRUD 应用程序,单元测试是其中一项要求。当我尝试对数据库进行测试时遇到了一些麻烦。据我了解,单元测试应该是:

  • 无国籍
  • 彼此独立
  • 可重复使用相同的结果,即没有持续的变化

在为数据库开发时,这些要求似乎相互矛盾。例如,如果不确保要插入的行不存在,我就无法测试 Insert(),因此我需要先调用 Delete()。但是,如果他们不在那里呢?然后我需要先调用 Exists() 函数。

我的最终解决方案涉及非常大的设置功能(糟糕!)和一个空的测试用例,它将首先运行并表明设置运行没有问题。这是牺牲了测试的独立性,同时保持了它们的无国籍状态。

我发现的另一个解决方案是将函数调用包装在可以轻松回滚的事务中,例如Roy Osherove 的 XtUnit。这项工作,但它涉及另一个库,另一个依赖项,对于手头的问题,它似乎有点过于繁重。

那么,SO 社区在遇到这种情况时做了什么?


tgmdbm 说:

您通常使用您最喜欢的自动化单元测试框架来执行集成测试,这就是为什么有些人会感到困惑,但他们不遵循相同的规则。您可以参与许多类的具体实现(因为它们已经过单元测试)。您正在测试您的具体类如何相互交互以及如何与数据库交互

所以如果我没看错的话,真的没有办法有效地对数据访问层进行单元测试。或者,数据访问层的“单元测试”是否涉及测试,例如,由类生成的 SQL/命令,独立于与数据库的实际交互?

0 投票
14 回答
215300 浏览

java - Java 最好的模拟框架是什么?

在 Java 中创建模拟对象的最佳框架是什么?为什么?每个框架的优缺点是什么?

0 投票
5 回答
32483 浏览

visual-studio-2008 - 如何将 Visual Studio 测试结果文件 (.trx) 格式化为更易读的格式?

刚刚开始使用 Visual Studio Professional 的内置单元测试功能,据我了解,它使用 MS Test 来运行测试。

测试生成的 .trx 文件是 xml,但想知道是否有一种简单的方法可以将此文件转换为更“管理员友好”的格式?

我的最终目标是能够自动化单元测试,并能够生成一个漂亮的文档,显示测试运行以及如何 100% 通过 :)

0 投票
13 回答
849 浏览

unit-testing - 高级开发人员和单元测试 - 需要吗?他们可以使用走狗吗?

高级开发人员应该免于单元测试 - 还是应该允许他们使用走狗来实现它们?激励不习惯使用单元测试技术的人采用它们的最佳方式是什么?

0 投票
2 回答
347 浏览

php - 我在哪里可以找到 Simpletest 的扩展 HTML 报告器?

我正在使用Simpletest作为我目前正在开发的 PHP 站点的单元测试框架。我喜欢它附带一个简单的 HTML 报告器的事实,但我想要一个更高级的报告器。

我已经阅读了记者 API 文档,但如果能够使用现有的记者,而不是自己动手,那就太好了。

Simpletest 是否有任何好的扩展 HTML 报告器或 GUI?

PHPUnit 的 GUI 提示也将不胜感激,但我的主要关注点是 Simpletest,对于这个项目。我试过Cool PHPUnit Test Runner,但不相信。