PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : TestSuite mit NUnit V2.5 erstellen.



Chito
11-02-2009, 18:23
Hallo! :)

Ich habe folgendes vor.

Ich habe eine Testklasse geschrieben und möchte mit Visual Studio 2008 und NUnit V2.5 eine TestSuite hierzu schreiben.

Habe ich auch schon getan:



using System.Text;
using System.Windows.Forms;
using NUnit.Framework;
using System.IO;
using System.Collections;

namespace Movie.test
{
[TestFixture]
public class MovieLayerTest
{
internal class MovieLayerFixture
{
internal Movie mov = null;
internal string director = null, title = null, filename = null, filepath = null;
internal MovieLister ml = null;
internal IMovieFinder mf = null;

#region SETUP
[SetUp]
public void Init()
{
mov = new Movie();
director = "George Lucas";
title = "Star Wars";
filename = @"../../files/movies.xml";
filepath = Path.GetFullPath(filename);

ml = new MovieLister(new XMLMovieFinder(filepath));
}
#endregion

#region TEARDOWN
[TearDown]
public void Destroy()
{
mov = null;
director = title = filename = filepath = null;
ml = null;
mf = null;
}
#endregion

#region TESTEN DER METHODEN AUS DER KLASSE MOVIE
[Test]
public void TestSetDirector()
{
mov.setDirector(director);
Assert.True(mov.getDirector() == "George Lucas");
}
[Suite]
public static IEnumerable TestSuite
{
get
{
MovieLayerFixture testFixture = new MovieLayerFixture();

ArrayList suite = new ArrayList();
suite.Add(testFixture);
return suite;
}
}
}
}


Allerdings läuft testFixture nicht durch.
Ich bin mir nich sicher wieso das so nicht funktioniert.

Orientiert habe ich mich daran:



Nunit V2.0 - 3 October, 2002
[TestFixture]
public class SetUpTest
{
internal class SetUpAndTearDownFixture
{
internal bool wasSetUpCalled;
internal bool wasTearDownCalled;
[SetUp]
public void Init()
{
wasSetUpCalled = true;
}
[TearDown]
public void Destroy()
{
wasTearDownCalled = true;
}
[Test]
public void Success(){}
}
[Test]
public void MakeSureSetUpAndTearDownAreCalled()
{
SetUpAndTearDownFixture testFixture = new
SetUpAndTearDownFixture();
TestSuite suite = new TestSuite("SetUpAndTearDownSuite");
suite.Add(testFixture);
suite.Run(NullListener.NULL);
Assertion.Assert(testFixture.wasSetUpCalled);
Assertion.Assert(testFixture.wasTearDownCalled);
}
}


Ich bin mit meinen Nerven so langsam echt am Ende.

Ich möchte dieses Problem unbedingt lösen, komme aber wohl ohne fremde Hilfe nicht weiter.

Vielen Dank für eure Mühe!

dml
15-02-2009, 22:38
ohne mich auszukennen,

kann es sein das sich das return nur auf get{} und nicht auf
public static IEnumerable TestSuite {}
bezieht?