2017-08-21 1 views
0

J'ai écrit un Unit Test basé sur NUnit framework et je voudrais savoir comment devrais-je affirmer DataTable qui est revenu de mes méthodes.Comment faire pour affirmer DataTable dans NUnit?

Actuellement, je l'ai fait comme ci-dessous:

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

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

} 

Est-il les meilleures pratiques pour AFFIRMER DataTable de données avec la méthode Assert.IsNotNull?

+0

Quel est le comportement que vous tentez d'affirmer? Cela semble être un [problème XY] (https://meta.stackexchange.com/questions/66377/what-is-the-xy-problem). Quel est le but ultime que vous essayez d'atteindre? – Nkosi

+0

Il est recommandé d'affirmer que DataTable n'est pas null. – Fabio

+0

@Nkosi Je veux vérifier le DataTable retourné a une ligne et assurez-vous que ma méthode fonctionne bien. –

Répondre

1
[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; 
}