Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
生成c#测试方法_C#_Unit Testing_Code Generation - Fatal编程技术网

生成c#测试方法

生成c#测试方法,c#,unit-testing,code-generation,C#,Unit Testing,Code Generation,我只是想知道,给定一个输入文件(excel、xml等),我们能用c#生成一个单元测试代码吗?例如,我需要验证一个数据库。在输入excel文件中,我将提到要设置的所有属性、要检索的所有属性、期望值等。对于这些属性,我还可以提供要运行的查询。因此,考虑到我这边的许多输入,我可以通过一些工具、脚本或其他程序在c#中创建一个单元测试用例方法吗?如果这听起来很愚蠢,我很抱歉。谢谢您的帮助。单元测试应该测试您的软件是否正确/如预期的那样而不是测试您的数据是否正确。简而言之,您应该测试将数据导入数据库的软件。

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

单元测试应该测试您的软件是否正确/如预期的那样而不是测试您的数据是否正确。简而言之,您应该测试将数据导入数据库的软件。但是,当数据已经在数据库中时,您可以编写验证脚本或与单元测试无关的类似内容(当然,可以测试脚本是否正常工作)

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


即使涉及到代码生成,您也不希望检查生成源代码的过程是否正确(至少在您没有编写自己的代码生成器之前)。只需假设生成器按预期工作,然后继续处理您自己可以处理的内容

不久前,我有一个类似的问题,尽管不是在单元测试的上下文中。可以从另一个文件/数据库表生成的代码称为

因此,如果你问这是否可以做到,答案是肯定的。但是如果您想知道是否应该这样做,答案是否定的。单元测试不是理想的样板代码。它们是可变的。。。在捕获一个你之前没有考虑过的边缘情况时,你可能需要再添加一些测试。
此外,单元测试通常不仅用于测试代码,还用于驱动代码开发。这种方法称为测试驱动开发(简称TDD)。从样板测试中“驱动”您的开发将是一团糟。

为什么不呢?代码生成是常用的。一种可能的解决方案可能是T4。但我和“HimBromBeere”站在同一边。。。