生成c#测试方法

时间:2016-02-19 06:33:26

标签: c# unit-testing code-generation

我只是想知道,给定一个输入文件(excel,xml等),我们可以在c#中生成单元测试代码吗?例如,我需要验证数据库。在输入excel文件中,我将提到要设置的所有属性,所有要检索的属性,期望值等。另外,对于这些,我可以提供运行的查询。所以考虑到我这方面的许多输入,我可以通过一些工具或脚本或其他程序在c#中创建单元测试用例方法吗?对不起,如果这听起来很蠢。谢谢你的帮助。

2 个答案:

答案 0 :(得分:0)

单元测试应测试软件是否正常/按预期正常,而不是数据正确。简而言之,您应该测试数据导入数据库的软件。当数据已经在数据库中时,您可以编写一个与单元测试无关的验证脚本或类似的东西(但是当然可以对脚本进行测试以便正常工作)。

但是,您应该测试您的软件提供的针对数据库运行的查询是否正确,以及它们是否按预期工作,包括任意数据和实际数据。

即使涉及代码生成,您也不想检查生成源代码的过程是否正常工作(至少在您没有编写自己的代码生成器之前)。只需假设发电机按预期工作,继续使用您自己可以处理的东西

答案 1 :(得分:0)

一段时间后我有类似的问题,但不是在单元测试的背景下。可以从另一个文件/数据库表生成的此代码称为Boilerplate Code

因此,如果你问这个能否,那么答案是肯定的。但如果你想知道是否应该这样做,答案是否定的。单元测试不是理想的样板代码。它们是可变的...在抓住你之前没有考虑过的边缘情况时,你可能需要再添加一些测试。

此外,单元测试通常不仅用于测试代码,还用于驱动代码开发。该方法称为测试驱动开发(缩写为TDD)。从样板测试中“驱动”你的开发是一团糟。