Tag: unit testing

如何编写unit testing?

我有一个java类,做一个二进制的总和,我仍然想弄清楚如何做unit testing,但我不知道该怎么做。 我search了一下,最好的解释是维基百科的页面: http : //en.wikipedia.org/wiki/Unit_testing 但我仍然不确定如何做这个程序的testing。 程序所做的基本上是2字节[]并添加它们并返回新的二进制数组。 用Java编写。 我如何testing它?

在unit testing中使用reflection是不好的做法?

在过去的几年中,我一直认为在Java中,reflection在unit testing中被广泛使用。 由于一些必须检查的variables/方法是私人的,因此需要读取它们的值。 我一直认为Reflection API也用于这个目的。 上周我不得不testing一些包,因此写了一些JUnittesting。 和往常一样,我使用Reflection来访问私有字段和方法。 但是,我的主pipe检查了代码并不是很满意,并告诉我Reflection API不是用来做这种“黑客行为”的。 相反,他build议修改生产代码中的可视性。 使用reflection真的是不好的做法吗? 我不能相信 – 编辑:我应该提到,我被要求,所有的testing都在一个单独的包称为testing(所以使用受保护的visibilty,例如也不是一个可能的解决scheme)

私人/受保护方法是否应该进行unit testing?

在TDD开发中,你通常做的第一件事是创build你的接口,然后开始编写你的unit testing对接口。 当你通过TDD过程时,你最终会创build一个实现接口的类,然后在某个时候你的unit testing会通过。 现在我的问题是关于私有和受保护的方法,我可能必须在我的类中写入以支持接口公开的方法/属性: class上的私人教学方法应该有自己的unit testing吗? class上的保护方法是否应该有自己的unit testing? 我的想法: 特别是因为我正在编写接口,所以我不应该担心保护/私有方法,因为它们是黑盒子。 因为我正在使用接口,所以我正在编写unit testing来validation所定义的合同是否由实现接口的不同类正确实现,所以我不必担心私有/受保护的方法,应该通过调用方法/属性由接口定义。 如果我的代码覆盖不显示受保护/私有方法正在被打,那么我没有正确的unit testing,或者我没有使用的代码,应该被删除。

如何在不使用Visual Studio的情况下使用MSTest?

MSTest是否具有与nUnit类似的独立GUI,可以让我使用它并在没有Visual Studio的情况下运行testing? 什么是MSTest的官方网站,我可以了解更多关于如何使用它?

testingMS Access应用程序的最佳方法是什么?

使用同一个数据库中的代码,表单和数据我想知道什么是为Microsoft Access应用程序(比如说Access 2007)devise一套testing的最佳实践。 testing表单的一个主要问题是只有less数控件具有hwnd句柄,而其他控件只能得到他们关注的一个控件,这使得自动化非常不透明,因为您无法获取表单上的控件列表来执行操作。 任何经验分享?

如何testing没有抛出exception?

我知道有一种方法可以做到: @Test public void foo(){ try{ //execute code that you expect not to throw Exceptions. } catch(Exception e){ fail("Should not have thrown any exception"); } } 有没有更干净的方式做到这一点。 (可能使用Junit的@Rule ?)

C ++unit testing框架

我为我的C ++代码使用Boosttesting框架,但是有两个问题可能对所有C ++testing框架都是通用的: 没有办法创build自动testing存根(例如通过从选定的类中提取公共函数)。 你不能运行一个单一的testing – 你必须运行整个“testing套件”(除非你创build了很多不同的testing项目)。 有谁知道更好的testing框架还是我永远嫉妒可用于Java / .NET开发人员的testing工具?

带默认命名空间的Xml-SelectNodes通过XmlNamespaceManager不能正常工作

我有一些默认的命名空间的XML <a xmlns='urn:test.Schema'><b/><b/></a> 并且要计算<b/>的数量 我该如何定义 XmlNamespaceManager nsmgr = ???? Assert.AreEqual(2, doc.SelectNodes("//b", nsmgr).Count); 所以断言成为现实? 我已经尝试过(使用nunit): [Test] [Ignore("Why does this not work?")] public void __DoesNotWork_TestSelectWithDefaultNamespace() { // xml to parse with defaultnamespace string xml = @"<a xmlns='urn:test.Schema'><b/><b/></a>"; XmlDocument doc = new XmlDocument(); doc.LoadXml(xml); // fails because xpath does not have the namespace //!!!! Assert.AreEqual(2, doc.SelectNodes("//b").Count); // using […]

如何testing一个静态函数

当对某些C代码应用unit testing时,我们遇到了一个问题,即一些静态函数不能在testing文件中调用,而不修改源代码。 有没有简单或合理的方法来解决这个问题?

如何unit testing保存文件到磁盘?

我知道,强烈build议在与文件系统分离的情况下运行unit testing,因为如果在testing中触摸文件系统,还要testing文件系统本身。 好的,这是合理的。 我的问题是,如果我想testing文件保存到磁盘,我该怎么办? 与数据库一样,我分离负责数据库访问的接口,然后为我的testing创build另一个实现? 或者可能还有其他方法?