Mock środowiska sieciowego do testowania integracji z systemem WAPRO, zawierający symulowane serwery RPI, drukarki ZEBRA i bazę danych MSSQL.
- API Dokumentacja - Opis dostępnych endpointów API
- Schemat bazy danych - Struktura bazy danych WAPROMAG
- Testowanie - Instrukcje dotyczące testowania
- Komendy ZEBRA - Obsługiwane komendy drukarek
- Rozwiązywanie problemów - Typowe problemy i ich rozwiązania
Kompletne środowisko testowe do symulacji sieci WAPRO z bazą danych MSSQL, serwerem RPI i drukarkami ZEBRA.
- Docker 20.10+
- Docker Compose 1.29+
- Git
# Konfiguracja środowiska
make setup
# Uruchomienie wszystkich serwisów
make start
# Sprawdzenie statusu
make status
# Uruchomienie testów
make test
wapro-network-mock/
├── docker-compose.yml # Główna konfiguracja Docker
├── Makefile # Automatyzacja zadań
├── mssql-wapromag/ # Baza danych WAPROMAG
├── rpi-server/ # Serwer RPI z GUI i API
├── zebra-printer-1/ # Mock drukarki ZEBRA-001
├── zebra-printer-2/ # Mock drukarki ZEBRA-002
├── test-runner/ # Automatyczne testy
├── monitoring/ # Konfiguracja monitoringu (Grafana + Prometheus)
└── scripts/ # Skrypty pomocnicze
Usługa | Port | Opis |
---|---|---|
RPI Server GUI | 8080 | Interfejs użytkownika |
RPI Server API | 8081 | API REST |
ZEBRA Printer 1 | 8091 | Interfejs drukarki 1 |
ZEBRA Printer 2 | 8092 | Interfejs drukarki 2 |
Grafana | 3000 | Panel monitoringu |
MSSQL Server | 1433 | Baza danych WAPROMAG |
- RPI Server GUI: http://localhost:8080
- RPI Server API: http://localhost:8081
- ZEBRA Printer 1: http://localhost:8091
- ZEBRA Printer 2: http://localhost:8092
- Monitoring: http://localhost:3000
- MSSQL WAPROMAG: localhost:1433
# Wszystkie testy
make test
# Testy bazy danych
make test-sql
# Testy drukarek
make test-zebra
# Testy integracyjne
make test-integration
Wyniki testów są zapisywane w formacie JUnit XML w katalogu test-results/
.
-
Testowanie drukarek
# Wysyłanie przykładowej komendy do drukarki 1 echo "~HI" | nc localhost 9100 # Wysyłanie etykiety testowej echo -e "^XA\n^FO50,50^A0N,50,50^FDTest Label^FS\n^XZ" | nc localhost 9100
-
Testowanie bazy danych
# Połączenie z bazą danych sqlcmd -S localhost,1433 -U sa -P WapromagPass123!
# Stan zdrowia systemu
make health
# Logi wszystkich serwisów
make logs
# Logi konkretnego serwisu
make logs-rpi
make logs-zebra1
make logs-sql
# Restart systemu
make restart
# Czyszczenie środowiska
make clean
# Backup bazy danych
make backup-db
# Przywracanie bazy danych
make restore-db
- ✅ Interfejs użytkownika do zarządzania systemem
- ✅ REST API do komunikacji zewnętrznej
- ✅ Integracja z bazą danych WAPROMAG
- ✅ Obsługa wielu drukarek ZEBRA
- ✅ Panel monitoringu w czasie rzeczywistym
- 🚀 Pulpity nawigacyjne Grafana
- 📊 Metryki wydajności w czasie rzeczywistym
- 🔔 Alerty i powiadomienia
- 📈 Monitorowanie stanu drukarek
- 🔒 Uwierzytelnianie użytkowników
- 🔑 Bezpieczne przechowywanie haseł
- 🔄 Automatyczne kopie zapasowe bazy danych
# Uruchomienie wszystkich usług
make start
# Zatrzymanie wszystkich usług
make stop
# Restart usług
make restart
# Wyświetlenie statusu
make status
# Utworzenie kopii zapasowej bazy danych
make backup-db
# Przywrócenie bazy danych z kopii zapasowej
make restore-db
# Czyszczenie środowiska
make clean
W przypadku problemów, zapoznaj się z sekcją Rozwiązywanie problemów lub zgłoś nowy problem w zakładce Issues.
Ten projekt jest objęty licencją MIT. Szczegóły znajdują się w pliku LICENSE.
- ✅ Testy połączeń z bazą danych
- ✅ Wysyłanie komend do drukarek ZEBRA
- ✅ Diagnostyka systemu
- ✅ Monitoring w czasie rzeczywistym
- ✅ Tabele: Kontrahenci, Produkty, Dokumenty Magazynowe
- ✅ Stany magazynowe i ruch magazynowy
- ✅ Konfiguracja drukarek
- ✅ Szablony etykiet ZPL
- ✅ Procedury magazynowe
- ✅ Symulacja protokołu ZPL
- ✅ Interfejs web do monitorowania
- ✅ Obsługa podstawowych komend (~HI, ~HS, PING)
- ✅ Drukowanie etykiet testowych
- ✅ Logi operacji
- ✅ Testy połączeń sieciowych
- ✅ Testy komunikacji RPI ↔ SQL
- ✅ Testy komunikacji RPI ↔ ZEBRA
- ✅ Testy integracyjne end-to-end
- ✅ Testy wydajnościowe
- ✅ Automatyczne raporty
Wszystkie ustawienia można zmienić w pliku .env
:
# Database
MSSQL_WAPROMAG_PASSWORD=WapromagPass123!
# Printers
ZEBRA_1_NAME=ZEBRA-001
ZEBRA_2_NAME=ZEBRA-002
# Ports
RPI_GUI_PORT=8080
RPI_API_PORT=8081
- Test komunikacji z WAPROMAG: Weryfikacja połączeń i zapytań SQL
- Test drukarek ZEBRA: Sprawdzenie dostępności i drukowania etykiet
- Test workflow: Pobranie danych z bazy → generowanie etykiety → drukowanie
- Test wydajności: Obciążenie systemu wieloma równoczesnymi operacjami
- Test diagnostyki: Monitorowanie stanu wszystkich komponentów
- Docker Engine 20.10+
- Docker Compose 2.0+
- 4GB RAM (zalecane 8GB)
- 10GB przestrzeni dyskowej
# Sprawdzenie logów
make logs
# Reset środowiska
make clean && make setup && make start
# Test połączeń
make health
# Terminal do debugowania
make shell-rpi
make shell-sql