MSTest中数据驱动测试的问题

Jac*_*cob 8 c# selenium automated-tests mstest data-driven-tests

我正在尝试使用MSTest/Selenium在C#中使用数据驱动测试.以下是我尝试设置的一些代码的示例:

[TestClass]
public class NewTest
{
    private ISelenium selenium;
    private StringBuilder verificationErrors;
    [DeploymentItem("GoogleTestData.xls")]
    [DataSource("System.Data.OleDb",
    "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=GoogleTestData.xls;Persist Security Info=False;Extended Properties='Excel 8.0'",
    "TestSearches$", DataAccessMethod.Sequential)]

    [TestMethod]
    public void GoogleTest()
    { 
        selenium = new DefaultSelenium("localhost", 4444, "*iehta", http://www.google.com);
        selenium.Start();
        verificationErrors = new StringBuilder();
        var searchingTerm = TestContext.DataRow["SearchingString"].ToString();
        var expectedResult = TestContext.DataRow["ExpectedTextResults"].ToString();

    ...
Run Code Online (Sandbox Code Playgroud)

这是我的错误:错误3非静态字段,方法或属性'Microsoft.VisualStudio.TestTools.UnitTesting.TestContext.DataRow.get'E:\ Projects\SeleniumProject\SeleniumProject\MaverickTest.cs 32需要对象引用33 SeleniumProject

该错误强调了两个语句的"TestContext.DataRow"部分.我真的一直在努力解决这个问题,谢谢!

Voo*_*ild 12

尝试:

public TestContext TestContext { get; set; }
Run Code Online (Sandbox Code Playgroud)

并尝试使用它像:

this.TestContext.DataRow["SearchingString"].ToString();
Run Code Online (Sandbox Code Playgroud)