Unit testing 重构现有报告时应该进行哪些单元测试?

Unit testing 重构现有报告时应该进行哪些单元测试?,unit-testing,Unit Testing,我重构了一些中间层报告,这些报告基本上是一种方法,它接受一组参数,从数据库中获取一些内容,然后返回结果集。方法中的代码通常很简单,但我不知道如何最好地为它们编写单元测试。如果一个方法有43个参数,那么它不需要至少43个测试来证明结果包括正确的东西吗?还有43个用来证明它排除了正确的东西?我见过只有在使用两个特定参数时才存在的bug(比如根据名称和开始日期搜索用户),那么我应该测试每一对参数吗?看起来这些测试要么是无用的最小化,要么是浪费的穷尽 我看到的所有单元测试示例都是针对非常简单的方法的。那

我重构了一些中间层报告,这些报告基本上是一种方法,它接受一组参数,从数据库中获取一些内容,然后返回结果集。方法中的代码通常很简单,但我不知道如何最好地为它们编写单元测试。如果一个方法有43个参数,那么它不需要至少43个测试来证明结果包括正确的东西吗?还有43个用来证明它排除了正确的东西?我见过只有在使用两个特定参数时才存在的bug(比如根据名称和开始日期搜索用户),那么我应该测试每一对参数吗?看起来这些测试要么是无用的最小化,要么是浪费的穷尽

我看到的所有单元测试示例都是针对非常简单的方法的。那么,如何为现有的43参数方法编写单元测试,以便在不中断的情况下进行重构呢

[编辑]
这个方法被一个有43个输入的网页报告所使用,所以尽管它很糟糕,但这是有原因的。我必须从ASP.NET代码和web控件中提取报告的逻辑,因为它需要用作我为其他内容编写的某些单元测试的验收标准。

我希望你说的方法有43个参数是夸大其词!如果不是,那就大错特错了,这将是我开始重构的第一件事

你可以随时测试对你来说真正重要的东西。在您的情况下,您应该在进行实际重构之前创建一个失败的单元测试。它首先要确保有一个bug,一旦bug被解决,它就会确保它正常工作,并且如果进一步的重构出现,它会保持这种状态