2012-09-11 50 views
3

我想在數組中使用NUnit的Sequential屬性。在NUnit的順序測試屬性中使用數組

string[] oldSitesArray = new string[] 
    { 
     "http://www.LegacySite.com", 
     "http://someURLgoeshere.com" 
    }; 

string[] newSitesArray = new string[] 
    { 
     "http://www.LegacySiteUpdatedURL.com", 
     "http://someURLgoeshereUpdatedSite.com" 
    }; 

[Test] 
public void keywordsTest() 
{ 
    Assert.IsTrue(this.scc.metaKeywordsChecker(oldSites, newSites)); 
} 

這裏的目標是傳入兩個數組(使用順序屬性)。一個數組包含遺留網站URL,第二個數組包含遷移的URL。

metaKeywordsChecker函數需要兩個字符串。一個是舊的URL,另一個是更新的URL。我有一個1,700個URL對(數組#1和數組#2)的列表,我需要按順序傳入測試。

+0

是實際使用'目標[連續]'或者比較兩個數組? –

回答

2

還是很確定你想要Range屬性。

[Test] 
public void keywordsTest([Range(0,1700)] int index) 
{ 
    Assert.IsTrue(this.scc.metaKeywordsChecker(oldSitesArray[index], newSitesArray[index])); 
} 

或者你可以做到這一點...

[Test] 
public void keywordsTest() 
{ 
    foreach(var pair in oldSites.Zip(newSites, (o, n) => new {Old = o, New = n})) 
    { 
     Assert.IsTrue(this.scc.metaKeywordsChecker(pair.Old, pair.New)); 
    } 
} 
+0

啊哈!這是天才。謝謝。 –