我正在尝试使用DataSource属性创建一个DataSource,如下一个示例所示:
[TestMethod]
[DataSource("System.Data.SqlClient", "Data Source=.\\153.71.88.80;Database=LoadData_For_R10Core_10_5_Final_Extended;Integrated Security=True;Connect Timeout=30;User Instance=True", "Products", DataAccessMethod.Sequential)]
public void GetProducts()
{
}
但我一直收到错误:
单元测试适配器无法连接到数据源或读取数据。有关解决此错误的详细信息,请参阅MSDN Library中的“数据驱动单元测试疑难解答”(http://go.microsoft.com/fwlink/?LinkId=62412)。
为了能够连接到SQL服务器,创建连接字符串的正确格式是什么。另外,我在那台机器上有ODBC连接,所以如果有办法使用ODBC的连接我会更喜欢。
答案 0 :(得分:1)
假设您使用的是SQL Server的默认实例,DataSource
应为.
或 153.71.88.80
,而不是两者。另外,放下\\
将它们分开。
如果您使用IP或主机名,请确保:
如果目标SQL Server是本地的,我只会使用.
- 减少麻烦。
答案 1 :(得分:-1)
嗯,对我来说很难找到真正的方法来配置如何配置DDT。 在这里,我发现一个想法是对所需结构的一个很好的解释: http://blogs.msdn.com/b/vstsqualitytools/archive/2006/01/10/511030.aspx
在这里: http://msdn.microsoft.com/en-us/library/ms182527.aspx
我正在使用SQL Server,而且我没有Access,因此,在Microsoft的一般示例中,这是对我有用的方式(VB.Net):
< TestMethod() >
< DataSource("System.Data.SqlClient", "Data Source=localhost;Initial Catalog=Prueba;Integrated Security=True", "AccountTest", DataAccessMethod.Sequential) >
Public Sub AddIntegerHelper_DataDrivenValues_AllShouldPass() <br>
Dim target As New CheckingAccount() <br>
Dim x As Integer = Convert.ToInt32(tscntx.DataRow("FirstNumber")) <br>
Dim y As Integer = Convert.ToInt32(tscntx.DataRow("SecondNumber")) <br>
Dim expected As Integer = Convert.ToInt32(tscntx.DataRow("Sum")) <br>
Dim actual As Integer = target.AddIntegerHelper(x, y) <br>
Assert.AreEqual(expected, actual) <br>
End Sub <br>
更改您的sql server名称或IP服务器{(1}}(即192.18.130.26)。
我希望这会有所帮助。