首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我们可以使用DUnit编写什么样的测试用例?

我们可以使用DUnit编写什么样的测试用例?
EN

Stack Overflow用户
提问于 2012-11-23 20:14:05
回答 2查看 2.6K关注 0票数 6

我使用的是Delphi 7。

我是DUnit的新手,我的疑问是我可以用DUnit写什么样的测试用例以及如何写(这对我来说非常重要)。

可以为特定的按钮单击事件编写测试用例吗?因为在这种情况下,可能会使用一大组代码,其中使用与它们各自的数据库相关的过程或函数来调用更多的单元。在这种情况下,编写测试用例的最佳方法是什么以及如何编写?(如果可能,一个例子或推荐人会对我有很大的帮助)。

因为,在示例DUnit项目中,我们不能编写完整的应用程序代码集,因为在某些情况下,可能需要创建一些其他表单。

所以,我的疑问是,对于这样的情况,如何编写测试用例,以及通常我们可以使用DUnit编写什么类型的测试用例,以及重要的是如何编写?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-11-23 20:38:09

这应该是一个评论,但我写它作为一个答案,因为它不适合评论。

我建议你做两件事:

  • 调查将业务逻辑与接口解耦(重构代码)

通常,您将代码拆分成自包含的单元,然后“自下而上”地对单元的核心功能进行单元测试。您不需要对GUI进行单元测试。例如,谷歌"unit testing decoupling unit“

  • 查看以下链接,了解单元测试可以做些什么:

http://www.howtodothings.com/computers/a928-automated-testing-with-dunit.html

http://www.nldelphi.com/cgi-bin/articles.exe/ShowArticle?ID=14697

https://lists.sourceforge.net/lists/listinfo/dunit-interest

http://www.delphi-treff.de/tutorials

http://sourceitsoftware.blogspot.com/2008/10/getting-line-numbers-in-dunit-test.html

http://wiert.me/2010/09/08/delphi-use-tstrings-to-parse-non-standard-separated-strings-and-validate-it-with-dunit-tests/

http://delphi.about.com/od/vclusing/a/autotestvcl.htm

http://dunit.sourceforge.net/

http://delphi.about.com/od/toppicks/tp/aatpdebug.htm

http://www.nickhodges.com/post/Delphi-Mocks-The-Basics.aspx

http://www.finalbuilder.com/Resources/Blogs/tabid/458/EntryId/287/Introducing-Delphi-Mocks.aspx

https://github.com/Vsofttechnologies/delphi-mocks

http://www.uweraabe.de/Blog/2012/03/17/a-dunit-folder-iterator-extension/

Unit testing in Delphi - how are you doing it?

http://members.optusnet.com.au/~mcnabp/

http://www.nickhodges.com/post/The-Vocabulary-of-Unit-Testing.aspx

http://hanselminutes.com/169/the-art-of-unit-testing-with-roy-osherove

票数 17
EN

Stack Overflow用户

发布于 2012-11-24 11:20:31

通过编写简单的测试来学习单元测试。简单的测试是针对您正在构建的可单元测试的类进行的。单元可测试类不是一个完整的Delphi GUI应用程序。

将此作为第一个练习:

  1. 创建了一个类,它可以将一个从1到MAXINT的整数分解成一个素数列表,当这些素数相乘时,会得到原始的数字。结果应该从最小因子到最大因子进行排序。如果结果列表的大小为1,则结果是质数。0和负数提高了exceptions.
  2. Instead,尝试“红/绿”测试驱动开发。这意味着只要编写足够的代码就可以使第一次测试失败。(编写第一个测试,编写足够的代码,使您正在构建的类能够编译和运行,但未通过测试。现在让第一个测试通过。
  3. 重复编写失败测试的过程,然后编写使其通过的代码,直到您提供(与测试一起)您的类现在可以将从1到MAXINT的任何整数值进行因式分解。

当谈到“在现有遗留应用程序中进行单元测试”时,您应该阅读一本名为“使用遗留代码进行有效工作”的书。我不能给你任何简短的介绍,告诉你如何开始向一大堆泥球(你的按钮OnClick代码)添加单元测试。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13528959

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档