Chcę automatycznie przetestować, czy oprogramowanie reaguje zgodnie z oczekiwaniami, jeśli niezbędny plik SQLite DB nie zostanie odczytany (powodując błąd we / wy). Dokładnie tak się stało kilka dni temu u klienta. Naprawiliśmy go ręcznie, ale teraz chcę utworzyć automatyczny kod, aby go naprawić i potrzebuję dostępu do uszkodzonego pliku, aby go przetestować.
Ponieważ wszystko w Uniksie jest plikiem, podejrzewałem, że może istnieć specjalny plik, który zawsze powoduje błędy We / Wy, gdy ktoś próbuje go odczytać (np. W / dev).
Niektóre podobne pliki (imo) to:
/dev/full
która zawsze mówi „Brak miejsca na urządzeniu”, jeśli spróbujesz to napisać/dev/null
i/dev/zero
więc założyłem, że musi to być taki plik (ale jeszcze go nie znalazłem).
Czy ktoś zna taki plik lub inną metodę uzyskania pożądanego rezultatu (celowo wadliwy obraz partycji, opakowanie wokół open () przy użyciu LD_PRELOAD, ...)?
Jaka jest najlepsza droga tutaj?