如何对Excel工作簿项目进行单元测试?
我使用Visual Studio 2012 C#。
到目前为止,我已阅读了几篇文章,似乎我无法简单地创作 一个单元测试项目,然后引用主要的excel工作簿项目, 因为它取决于interop excel。
这是一个有效的解决方案,如果没有,请你提出建议:
1)我可以将我的主项目分成两部分:excel工作簿项目+ dll项目 那将包含逻辑。 excel工作簿项目将引用dll项目。
2)然后我可以创建单元测试项目并引用dll项目。我可以创造 我自己的excel文件,并为我的excel阅读功能创建单元测试 dll项目。
答案 0 :(得分:1)
这取决于您是否要测试:
对于这两种情况,您都不需要将项目分为Main&图书馆。具有正确分离逻辑的单个项目应该足够好。通过正确分离的逻辑,我的意思是基于接口的类来做Excel的东西,不会干扰测试等。
现在为#1,来自单元测试:
确保在任何一种情况下都删除工作簿。
#1&的唯一区别#2是你单元测试一个级别的代码。
e.g。你的主要逻辑是:
public static void MainLogic()
{
string workbookFileName = ""; // read workbook path from config etc.
// validate anything
CoreClass.CreateWorkbook(workbookFileName);
// you could do additional stuff here.
}
您的样本单元测试是:
[Test]
public void MainLogicTest()
{
string workbookFileName = ""; // read workbook path from test config etc. but same path.
MainLogic();
// retrieve the workbook at workbookFileName and verify.
}