Mock FTP server – další perla do sbírky automatického testování
Předevčírem se v mé RSS síti zachytila zajímavá zpráva, která dobře zapadá do katalogu řešení pro automatické testování. Jedná se o MockFtpServer, který se velmi podobá přístupu SubEtha SMTP Serveru, se kterým mám velmi pozitivní zkušenosti.
Princip je skutečně analogický zmiňovanému SubEtha SMTP Serveru, se kterým lze jednoduše ověřovat správné rozesílání emailů. Jednoduše nakonfigurujeme “virtuální” FTP server a nastartujeme jej na konkrétním portu. V testech pak můžeme ověřovat kód, který komunikuje s FTP serverem, aniž bychom museli vytvářet vlastní stub nebo mock objekty:
V nastavení lze simulovat jak Windows filesystem (case-insensitive, opačná lomítka atd.), tak i Unix filesystem. Je možné poměrně detailně nastavovat oprávnění na jednotlivé složky / soubory, které server dále respektuje.
Ftp server lze konfigurovat i pomocí Springu a také je možné ovlivňovat jeho chování implementací vlastních CommandHandlerů, které zpracovávají jednotlivé FTP příkazy (to kdybychom chtěli simulovat nějaké exotičtější chování FTP serveru, nebo nějaké chybové stavy).
Myslím, že v některých případech může být použití této knihovny pro integrační testy aplikační logiky pracující s FTP protokolem velmi užitečné.
Související články:
- Jak jednoduše simulovat v testech HTTP server
- Pozvánka na přednášku na UHK
Pokročilé techniky automatického testování v praxi - Podcast: Záznam přednášky Pokročilé techniky automatického testování v praxi
- Mock testing – Potěmkinovy vesnice
- Automatické testování odeslání emailu



