2016-06-21 19 views
1

Ich bin nur ein Junior-Entwickler und ich studiere immer noch die Codebasis in unserer Firma.
Hier ist der Code, den ich für Einheit geschaffen, um die hasProductImages Config testen, aber ich habe ein ein Fehler ...System.ArgumentNullException in Komponententests

System.ArgumentNullException: Wert darf nicht null sein.

... im letzten Code, was könnte das Problem sein?

[TestClass] 
public class ChooseProductViewModelTest 
{ 
    ChooseProductViewModel chooseProduct; 
    private EventAggregatorMock eventAggregator; 
    private ProductRepositoryMock productRepository; 
    private CategoryRepositoryMock categoryRepository; 
    private PosDeviceSettingsMock posDeviceSettings; 


    [TestInitialize] 
    public void Init() 
    { 
     eventAggregator = new EventAggregatorMock(); 
     productRepository = new ProductRepositoryMock(); 
     categoryRepository = new CategoryRepositoryMock(); 
     posDeviceSettings = new PosDeviceSettingsMock(); 
     chooseProduct = new ChooseProductViewModel(productRepository, categoryRepository, eventAggregator, posDeviceSettings); 
    } 

    [TestMethod] 
    public void ProductImageConfiguration_Verification_With_ProductItemViewModel() 
    { 
     chooseProduct = new ChooseProductViewModel(productRepository, categoryRepository, eventAggregator, posDeviceSettings); 
     Assert.IsTrue((chooseProduct.Items.First() as ProductItemViewModel).hasProductImages); 
    } 
} 

Antwort

0

die Sie interessieren und die Untersuchung beginnen, warum es null

[TestMethod] 
public void ProductImageConfiguration_Verification_With_ProductItemViewModel() 
{ 
    chooseProduct = new ChooseProductViewModel(productRepository, categoryRepository, eventAggregator, posDeviceSettings); 
    var productItemViewModel = chooseProduct.Items.First() as ProductItemViewModel; //This line will obviously produce null 
    Assert.IsNotNull(productItemViewModel); 
    Assert.IsTrue(productItemViewModel.hasProductImages); 
} 
+0

Dank zurück, aber es hat nicht mein Problem zu beheben, vielleicht brauche ich mehr zu untersuchen, warum es null Dank zurück, Nico – Reaper

+0

Natürlich Da Sie Code für ChooseProductViewModel nicht zur Verfügung gestellt haben, können wir nur raten. Versuchen Sie zu sehen, ob das erste Element in der Items Enumeration tatsächlich vom Typ ProfuctItemViewModel ist, oder schreiben Sie in 'choiceProduct.Items.OfType (). Zuerst()' – metacircle

+0

Danke Sir :) – Reaper

Verwandte Themen