[英]Nunit tests with MvcApprovals Verify specific url
我的mvc應用程序的項目url像這樣localhost:port / AppName托管
我創建了一個新的單元測試項目,以使用nunit框架測試mvc應用程序,並使用批准測試庫進行批准測試
[Test]
[UseReporter(typeof(FileLauncherReporter),typeof(ClipboardReporter))]
public void PaymentPopUpController_IndexView()
{
//Arrange
PortFactory.MvcPort = 8080;
// Act
Func<ActionResult> ScopeControllerTest = new ScopeController()._Index;
// Approve
MvcApprovals.VerifyMvcPage(ScopeControllerTest);
}
MvcApprovals.VerifyMvcPage引發錯誤,因為我沒有設置正確的項目url,所以找不到url:
連接到時發生以下錯誤:
http://本地主機:8080 /范圍/ _index
錯誤:
遠程服務器返回錯誤:(404)找不到。
所以我的問題是如何設置正確的url以與nunit一起進行mvc批准測試
MvcApprovals將通過控制器名稱+方法名稱的組合來構造url。 因此,在這種情況下,新的ScopeController()._ Index將被轉換為Scope / _Index
有兩種可能的原因為什么不起作用
1)錯誤的網址。 _index可能不是公開的,否則不是正確的路由。 最簡單的測試方法是打開Web瀏覽器並將其指向
http://localhost:8080/Scope/_index
如果您的瀏覽器看不到該網址,則批准測試也不會。 (除非您使用的是cassinidev)
2)第二個原因是您可能在測試過程中未打開Web服務器。 這也可以通過在瀏覽器中打開URL來顯示。
測試愉快!
勒韋林·法爾科(Llewellyn Falco)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.