5

我正在开发一个软件开发项目,该项目使用主要用 C 和 C# 编写的代码。目前,测试的责任主要落在开发人员更改代码时。

我有兴趣实现一个自动化测试框架来帮助我们提高代码质量。特别是,每次将代码提交给版本控制时运行自动化测试会很棒。

我在自动化测试(或单元测试)方面没有太多经验。有没有人使用 C/C# 的测试框架进行过开发,如果是这样,我们在公司范围内以及在相当大的现有代码库上实施它可能会面临哪些障碍?

特别是,我一直在研究如何使用Gallio。对此特定产品的任何评论将不胜感激。

附加信息

将单元测试添加到现有项目
单元测试 旧版 ASP.NET Webforms 应用程序
将现有代码移动到测试驱动开发
最喜欢的 .NET 单元测试框架

4

4 回答 4

3

坦率地说,这听起来像是你在寻找不这样做的理由。只需获取 NUnit 并开始使用。从最小的一块开始,让你的脚湿透。

于 2008-12-18T20:20:00.880 回答
3

Gallio 实际上是整个测试工具链的框架。从编写测试到运行它们再到发布构建过程。它为每个步骤提供通用设施和标准化接口,以便在将构建过程放在一起时提供更大的选择和灵活性。

它带有一个默认使用的 MbUnit 框架版本。它还带有一个名为 Icarus 的 GUI 运行程序和一个名为 Echo 的控制台运行程序。它们都是测试社区中备受推崇的工具。

对于大型公司来说,它是一个绝佳的选择,因为它可以让您利用许多流行的测试和持续集成工具,而无需担心集成问题。

选择框架和编写测试只是成功的一半,Gallio 确实帮助了另一半;粘合构建过程中的所有其他步骤。

目前唯一真正的缺点是缺乏示例和信息的中央存储库。对于一些人来说,它是一个相对较新的举措,这一事实可能会让他们现在就不再使用它。

Check out the docs here. They are a work in progress and very incomplete but will get you started on the basics of writing tests. Keep your eyes on Jeff Browns Blog for other information.

于 2009-01-13T06:39:32.290 回答
1

当我使用它时(几年前),TestComplete 很不错且易于使用。至少,你需要学习一些 VBScript。

于 2008-12-18T20:21:10.097 回答
0

我们使用来自 AutomatedQA 的 TestComplete,它是一个不错的 gui 测试平台。我们在 Jscript 中完成所有的 TestComplete 代码,这不是很好,但它完成了工作。我不确定我是否会推荐自动化 GUI 测试,但我认为你会在单元测试中获得更好的回报。

Nunit 和 rhino mock 是很好的单元测试工具。

CruiseControl看起来像是在每个构建上设置自动化测试的最佳方式。

于 2008-12-18T20:24:45.080 回答