Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Testen Teil 1 #23

Open
27 of 30 tasks
murmal opened this issue Nov 7, 2018 · 6 comments
Open
27 of 30 tasks

Testen Teil 1 #23

murmal opened this issue Nov 7, 2018 · 6 comments
Assignees
Labels
Test Create or run tests

Comments

@murmal
Copy link
Collaborator

murmal commented Nov 7, 2018

  • Geschwindigkeit (Video spielt ohne Artefakte ab)

  • myfs (FUSE-Methoden) in progress

    • getAttr
    • open
    • read
    • readDir (?)
    • release

  • dmap

    • get/set-all
    • clear
    • set
    • getFreeBlock

  • fat

    • get/set-all
    • addLastToFAT
    • addToFAT not tested because not used
    • addNextToFAT
    • deleteFromFAT
    • iterateFAT
    • getNext

  • root

    • get/set-all
    • get
    • createEntry
    • deleteEntry
    • update
    • exists
    • getName

  • filesystemIO


  • mkfs.myfs

Aufbau der Tests

Pro Klasse die getestet wird existiert eine Testklasse.
Test_Case(s) sind jeweils für logisch zusammenhängende Methoden angesetzt.
Section(s) innerhalb der Test_Case(s) sind für einzelne Testfälle dieser Methoden gedacht.
Wenn es viele Testfälle zu einer Methode gibt können auch mehrer Section(s) in einem TEST_CASE gebündelt werden wodurch nach der Benennung der unter Test stehenden Methoden mit einem Komma getrennt eine zusammenfassende Beschreibung der Section(s) notiert werden soll.

Benennung

test-Klasse_unter_Test.cpp
TEST_CASE("Klasse_unter_Test.Methode_unter_Test / Klasse_unter_Test.Weitere_Methode_unter_Test, Beschreibung", "[Klasse_unter_Test]")
SECTION("Beschreibung des Einzelnen Testfalls")

Durchführung der Test für Fuse

Die myfs wird in jedem TestCase neu instanziiert. Dadurch können die Fuse-Methoden direkt getestet werden.

@MilanKosticKIT MilanKosticKIT added the Test Create or run tests label Nov 7, 2018
@MilanKosticKIT MilanKosticKIT added this to the Read-only Filesystem milestone Nov 7, 2018
@MilanKosticKIT MilanKosticKIT changed the title Testen Testen Teil 1 Nov 7, 2018
@HannesIlly
Copy link
Collaborator

Habe Test cases für getFreeBlock hinzugefügt. FindFreeBlock ist da ja auch mit drin (kann man nicht testen, weil privat). Ist glaub ich vollständig.
Die Tests sind in mehrere test cases mit mehreren sections aufgeteilt. Wenn das anders geplant war ggf. anpassen.

@HannesIlly
Copy link
Collaborator

IsAddressFull ist auch privat. Wird aber glaub ich sogar nie benutzt.

@HannesIlly
Copy link
Collaborator

Ich habe bei get/setAll mal den Haken rausgemacht, weil da noch die Assertions gefixt werden müssen.

@MilanKosticKIT

This comment has been minimized.

@HannesIlly
Copy link
Collaborator

HannesIlly commented Nov 30, 2018

Bei den FAT tests muss man mindestens bei set-/getAll #39 beachten (Wenn man gekapselt testet; wenn nicht, dann bei allen Methoden). Wenn es bei uint16_t bleibt muss man nichts ändern.

@HannesIlly
Copy link
Collaborator

HannesIlly commented Dec 2, 2018

Habe grad Test cases für die Root hinzugefügt (ist meist ein Test für jeden möglichen Fall).
Ich habe nur die Methoden getestet, die wir gerade benutzen (die Methoden mit char* name als Parameter und update).
Bitte drüberschauen und ggf. abhaken.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Test Create or run tests
Projects
None yet
Development

No branches or pull requests

4 participants