我正在尝试在 VB.NET 中编写 MSTest 数据驱动测试。代码非常简单:
<TestMethod(), DataSource("Microsoft.VisualStudio.TestTools.DataSource.CSV", "AlgorithmTestData.CSV", "AlgorithmTestData#CSV", DataAccessMethod.Sequential)>
Public Sub ScoreAllData()
Dim server = New Server.ScoringData
Dim q1 = Convert.ToByte(TestContext.DataRow(1))
Dim q2 = Convert.ToByte(TestContext.DataRow(2))
Dim q3 = Convert.ToByte(TestContext.DataRow(3))
Dim q4 = Convert.ToByte(TestContext.DataRow(4))
Dim q5 = Convert.ToByte(TestContext.DataRow(5))
Dim q6 = Convert.ToByte(TestContext.DataRow(6))
Dim q7 = Convert.ToByte(TestContext.DataRow(7))
Dim q8 = Convert.ToByte(TestContext.DataRow(8))
Dim q9 = Convert.ToByte(TestContext.DataRow(9))
Dim q10 = Convert.ToByte(TestContext.DataRow(10))
Dim q11 = Convert.ToByte(TestContext.DataRow(11))
Dim q12 = Convert.ToByte(TestContext.DataRow(12))
Dim item = New AlgorithmItem(q1, q2, q3, q4, q5, q6, q7, q8, q9, q10, q11, q12)
Dim result = server.Score(item)
Assert.AreEqual(47.86814688, result)
End Sub
但是,此代码不会构建。我收到与 TestContext.DataRow 调用有关的以下错误(每个调用一个)
Reference to a non-shared member requires an object reference
我见过的每个 C# 示例都使用相同的静态调用。我的项目似乎具有所有正确的导入,包括 System.Data 但这不会构建。
任何帮助,将不胜感激!