2017-08-17 2 views
0

Bitte beachten Sie die Abbildung unten:Autofixture Initialisierung Liste mit Werten

enter image description here

Hier ist der vollständige Code:

using Ploeh.AutoFixture; 
using Ploeh.AutoFixture.AutoMoq; 

    namespace MyNamespace.TestFixtures 
    { 
     [TestFixture] 
     public class Tests 
     {  
      [OneTimeSetUp] 
      public void OneTimeSetUp() 
      { 

       var Fixture = new Fixture().Customize(new AutoMoqCustomization()); 
       List<Product> products; 
       products = Fixture.Create<List<Product>>(); 
       Console.WriteLine("Got here"); 
      } 
     } 
    } 

Warum gibt es drei Produkte (alle null) in der Liste. Sicherlich sollte es keine (0) geben?

aktualisieren

Nach unten aus einer Antwort auf. Angenommen, ich möchte eine Liste mit Autofixierung erstellen:

List<Product> products = new List<Product>(); 
var Product1 = new Product() { id=1, description='Product1' }; 
var Product2 = new Product() { id=2, description='Product2' }; 
products.add(Product1); 
products.Add(Product2); 

Wie würde ich es tun?

+0

Warum Gebrauch autofixture überhaupt geändert werden, wenn Sie Ihre Mock Daten manuell sind zu schaffen? – Ric

Antwort

1

Die Standardanzahl für Listen 3, diese Änderung mit dem folgenden

fixture.RepeatCount = 10; 
var list = fixture.Create<List<MyClass>>(); 

// 10 
list.Count 
+0

Was ist der Sinn von RepeatCount? Wenn ich eine Liste z. Liste Produkte = neue Liste (); dann erwarte ich, dass es leer ist? Nicht wahr? – w0051977

+0

Für Referenz auf RepeatCount: +1. – w0051977

+0

@ w0051977 AutoFixture ist zum Erstellen von Scheindaten, in den meisten Fällen finde ich die Liste voller Zufallsdaten nützlich. –

Verwandte Themen