Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在NUnit中断言DataTable?_C#_Unit Testing_Nunit - Fatal编程技术网

C# 如何在NUnit中断言DataTable?

C# 如何在NUnit中断言DataTable?,c#,unit-testing,nunit,C#,Unit Testing,Nunit,我已经基于NUnit框架编写了一个单元测试,我想知道如何断言从方法返回的DataTable 目前,我做了如下工作: [Test] public void GetTableColumns_WhenCalled_ShouldReturnTableColumnList() { // Act DataTable dataTable = _sut.GetTableColumns(Statics.SystemUsersTableName); // Assert Assert

我已经基于
NUnit框架
编写了一个
单元测试
,我想知道如何断言从方法返回的
DataTable

目前,我做了如下工作:

[Test]
public void GetTableColumns_WhenCalled_ShouldReturnTableColumnList()
{
    // Act
    DataTable dataTable = _sut.GetTableColumns(Statics.SystemUsersTableName);

    // Assert
    Assert.IsNotNull(dataTable, "DataTable is empty");

}

使用
Assert.IsNotNull
方法断言DataTable数据是最佳做法吗?

您实际试图断言的行为是什么?这似乎是一个错误。您试图实现的最终目标是什么?当您希望断言DataTable不为空时,这是最佳做法。@Nkosi我想检查返回的DataTable是否有行,并确保我的方法工作正常。@Ahmadayan然后您还需要检查该表并确认其内容。您实际尝试的行为是什么断言?这似乎是一个错误。您试图达到的最终目标是什么?当您希望断言DataTable不为空时,这是最佳做法。@Nkosi我想检查返回的DataTable是否有行,并确保我的方法工作正常。@Ahmadayan然后您还需要检查该表并确认其内容。
[Test]
public void GetTableColumns_WhenCalled_ShouldReturnTableColumnList()
{
    // Act
    var dt= _sut.GetTableColumns(Statics.SystemUsersTableName);

    // Assert
    Assert.That(!dt.HasRow());

}

public static bool HasRow(this DataTable dt)
{
 return dt != null && dt.Rows.Count > 0;
}