prinet

WAPRO Network Mock - Test Environment

License: MIT Docker Python Node.js MSSQL

Mock środowiska sieciowego do testowania integracji z systemem WAPRO, zawierający symulowane serwery RPI, drukarki ZEBRA i bazę danych MSSQL.

📚 Dokumentacja

Kompletne środowisko testowe do symulacji sieci WAPRO z bazą danych MSSQL, serwerem RPI i drukarkami ZEBRA.

🚀 Szybki start

Wymagania wstępne

Instalacja

# Konfiguracja środowiska
make setup

# Uruchomienie wszystkich serwisów
make start

# Sprawdzenie statusu
make status

# Uruchomienie testów
make test

🏗️ Architektura

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

🌐 Dostępne usługi

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

🌐 Dostępne interfejsy

🧪 Testowanie

Uruchamianie testów

# Wszystkie testy
make test

# Testy bazy danych
make test-sql

# Testy drukarek
make test-zebra

# Testy integracyjne
make test-integration

Generowanie raportów

Wyniki testów są zapisywane w formacie JUnit XML w katalogu test-results/.

Testowanie ręczne

  1. 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
    
  2. Testowanie bazy danych
    # Połączenie z bazą danych
    sqlcmd -S localhost,1433 -U sa -P WapromagPass123!
    

🏥 Monitoring i diagnostyka

# Stan zdrowia systemu
make health

# Logi wszystkich serwisów
make logs

# Logi konkretnego serwisu
make logs-rpi
make logs-zebra1
make logs-sql

🛠️ Zarządzanie

# Restart systemu
make restart

# Czyszczenie środowiska
make clean

# Backup bazy danych
make backup-db

# Przywracanie bazy danych
make restore-db

📊 Funkcjonalności

RPI Server

Monitorowanie

Bezpieczeństwo

🔄 Zarządzanie

Uruchamianie i zatrzymywanie

# Uruchomienie wszystkich usług
make start

# Zatrzymanie wszystkich usług
make stop

# Restart usług
make restart

# Wyświetlenie statusu
make status

Konserwacja

# Utworzenie kopii zapasowej bazy danych
make backup-db

# Przywrócenie bazy danych z kopii zapasowej
make restore-db

# Czyszczenie środowiska
make clean

🤝 Wsparcie

W przypadku problemów, zapoznaj się z sekcją Rozwiązywanie problemów lub zgłoś nowy problem w zakładce Issues.

📄 Licencja

Ten projekt jest objęty licencją MIT. Szczegóły znajdują się w pliku LICENSE.

Baza danych WAPROMAG

Drukarki ZEBRA Mock

System testowy

🔧 Konfiguracja

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

🎯 Przypadki użycia

  1. Test komunikacji z WAPROMAG: Weryfikacja połączeń i zapytań SQL
  2. Test drukarek ZEBRA: Sprawdzenie dostępności i drukowania etykiet
  3. Test workflow: Pobranie danych z bazy → generowanie etykiety → drukowanie
  4. Test wydajności: Obciążenie systemu wieloma równoczesnymi operacjami
  5. Test diagnostyki: Monitorowanie stanu wszystkich komponentów

📝 Wymagania

🆘 Rozwiązywanie problemów

# 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