2010-01-16 32 views
2

我刚刚进入TDD,并且从环顾四周,一般的concensis似乎是从代码项目到测试项目的一对一映射。我的问题是,如果你遵循这条路线,并且有多个测试程序集,那么作为NAnt脚本的一部分运行这些程序的最佳方法是什么?如果它有所作为,我使用NUnit作为我的测试框架。用于运行多个测试程序集的NAnt脚本

回答

0

您可以创建通过NUnit的GUI中的“测试项目”,并将其保存到一个文件中。在GUI中,您可以将测试dll添加到项目中,然后依次引用测试dll。

然后,您可以将该文件从NAnt内传递到NUnit控制台。例如

<property name="nunit.output" value="${dir.reports.nunit}\nunit-results.xml" /> 
<property name="nunit.input" value="proj.nunit" /> 

<exec program="${dir.tools}\nunit\bin\nunit-console.exe" failonerror="true"> 
    <arg value="${nunit.input}" /> 
    <arg value="/xml:${nunit.output}" /> 
</exec> 

这样,NAnt不需要知道测试dll,只需要知道包含该信息的NUnit项目。

0

我建议最好的方法是使用引用每个项目文件(csproj)而不是解决方案的CSC命令单独编译来自NAnt的两个项目。然后使用nunit-console命令(作为单独的Nant任务)执行测试。

无论你是否有一个建造大型脚本/文件,这是否或单独分开的人对每一个项目或任务是给你(或多么复杂的项目)。

我有我的团队的建立设置方式是,我有一个“主”的构建脚本它调用到其他构建脚本来执行特定的任务。例如'master'调用'compile'然后'test'(适当地传入'compile'脚本的结果)。这样,我的核心项目编译就与自动化测试分开了。

相关问题