Laden...

Testing von Klasse in der eine zeitlich lange Methode und unterschiedliche Struktur bearbeitet wird

Erstellt von rs77 vor 5 Jahren Letzter Beitrag vor 5 Jahren 1.131 Views
R
rs77 Themenstarter:in
28 Beiträge seit 2007
vor 5 Jahren
Testing von Klasse in der eine zeitlich lange Methode und unterschiedliche Struktur bearbeitet wird

Hallo,

ich möchte mich etwas mit Testing von SW Komponenten auseinander setzen. Aber ein paar Dinge sind mir noch unklar. Ich habe bspw. eine Klasse, in der ich eine andere Methode aufrufe, welche sehr lange dauern kann und eine große Struktur zurück gibt. Der Inhalt ist immer unterschiedlich.
Ich möchte das nun gerne testen mit einem Unittest, möchte aber nicht immer so lange warten und würde gerne für die Methode eine bestimmten Rückgabewert vordefinieren.
Um sowas zu testen rufe ich eine eigene Dll auf in der ich eine Methode erstellt habe die 5 Sekunden wartet und einen Wert zwischen 1 und 100 zurück gibt.


namespace API
{
    public class Api
    {
        public int CreateData()
        {
            System.Threading.Thread.Sleep(5000);
            Random rnd = new Random();
            int returnValue = rnd.Next(1, 100);
            return returnValue;
        }
    }
}

Wie kann ich sowas machen?

16.842 Beiträge seit 2008
vor 5 Jahren

Für eine Unit in einem Unit Test spielt die Dauer absolut keine Rolle.

Was Du willst nennt sich Mocking.
[Artikel] Unit-Tests: Einführung in das Unit-Testing mit VisualStudio

API Tests mockt man generell komplett.