【发布时间】:2012-05-29 12:40:17
【问题描述】:
我目前正在创建一个使用 sql CE 数据库的应用程序,我已经使这个数据库可以与应用程序一起部署,但是我现在遇到的问题是我需要运行 TestMethods 但这当它在调试或发布下的“testingProject”文件夹中找不到数据库时出错,因为它是数据目录
using (SqlCeConnection sqlCon = new SqlCeConnection(@"Data Source=|DataDirectory|\database.sdf;Persist Security Info=False;"))
上面的代码是我的连接字符串,所以我猜这意味着测试正在运行并在它自己的数据目录中搜索数据库
在不更改数据库连接字符串、数据库位置并且仍然让我的应用程序可部署的情况下我可以做什么的任何帮助?还是我在问一些不可能的事情?
编辑
[TestMethod]
public void TestForReadingFromDB()
{
List<string> list = class.readDB();
Assert.IsNotNull(list);
Assert.AreNotEqual(0, list.Count);
}
刚刚添加到当前失败的测试方法中
【问题讨论】:
-
您如何初始化数据库并将数据植入其中以进行测试?
-
我正在使用测试方法来测试我创建的 'class.readDB()' 方法,我知道数据库连接有效,我正在使用一切顺利的表单,主要问题是我的 TestClass 在哪里看到“DataDirectory”,因为我无法更改 class.readDB() 方法中的代码,如果有意义的话,它只是在“DataDirectory”中搜索数据库?