49 lines
2.7 KiB
Markdown
49 lines
2.7 KiB
Markdown
# Testy integracyjne Comarch ERP Optima
|
|
|
|
Testy z bazą są celowo wykonywane dopiero po ręcznym przygotowaniu i zarejestrowaniu firmy w Optimie. Narzędzia w tym repozytorium nie odtwarzają, nie tworzą ani nie modyfikują konfiguracji baz Optimy.
|
|
|
|
## Przygotowanie
|
|
|
|
1. Skopiuj `src/SmartB2B.Optima.Service/config/optima.json.sample` do lokalnego, ignorowanego przez Git pliku `src/SmartB2B.Optima.Service/config/optima.json`.
|
|
2. Uzupełnij nazwę firmy widoczną podczas logowania, operatora, hasło, identyfikator magazynu i connection string SQL.
|
|
3. Nie dodawaj pliku `optima.json` do repozytorium ani paczki wdrożeniowej.
|
|
4. W przygotowanej firmie zapewnij kontrolowane dane testowe: kontrahenta, towar, magazyn, walutę oraz definicje RO liczone netto i brutto.
|
|
|
|
## Kontrola bez zapisu
|
|
|
|
Uruchom opublikowaną wersję x64:
|
|
|
|
```powershell
|
|
.\release-optima\SmartB2B.Optima.Service.exe --config .\src\SmartB2B.Optima.Service\config\optima.json --check-config
|
|
```
|
|
|
|
Polecenie sprawdza JSON, zgodność architektury procesu z `op_base.dll`, rejestrację COM, wersję Optimy, połączenie SQL, logowanie operatora i utworzenie sesji. Nie zapisuje dokumentu.
|
|
|
|
## Scenariusze zapisu przez WAMP
|
|
|
|
Pierwszy kontrolowany zapis adaptera można wykonać runnerem, który wymaga jawnego
|
|
parametru `--write-order` i domyślnie zapisuje wyłącznie w trybie `Buffer`:
|
|
|
|
```powershell
|
|
dotnet run --project .\tests\SmartB2B.Optima.IntegrationTests -- --config .\src\SmartB2B.Optima.Service\config\optima.json --negative-tests --write-order --customer-id 2 --product-code SMARTB2B_TEST_TWR
|
|
```
|
|
|
|
Zatwierdzenie dokumentu wymaga dodatkowej flagi `--approved` i powinno być wykonywane
|
|
wyłącznie w firmie testowej:
|
|
|
|
```powershell
|
|
dotnet run --project .\tests\SmartB2B.Optima.IntegrationTests -- --config .\src\SmartB2B.Optima.Service\config\optima.json --write-order --approved --customer-id 2 --product-code SMARTB2B_TEST_TWR
|
|
```
|
|
|
|
Po pomyślnym `--check-config` uruchom usługę z tym samym plikiem konfiguracji i sprawdź kolejno:
|
|
|
|
- RO w buforze (`saveMode: Buffer`) i zatwierdzone (`saveMode: Approved`);
|
|
- definicję liczoną netto z `price_netto` i brutto z `price_brutto`;
|
|
- rabat, uwagi, numer obcy, magazyn oraz walutę;
|
|
- zgodność `order_erp_id`, `order_erp_symbol`, `value_netto` i `value_brutto` z dokumentem zapisanym w Optimie;
|
|
- błędy dla brakującego kontrahenta, produktu, magazynu, waluty i wymaganej ceny;
|
|
- parametryzowane `sql_raw`, wiele recordsetów, dane binarne oraz błąd SQL;
|
|
- dwa równoczesne wywołania `place_order` — dokumenty mają zostać utworzone kolejno na jednym wątku COM.
|
|
|
|
Przed testami trybu `Approved` wykonaj kopię bezpieczeństwa bazy lub użyj firmy przeznaczonej wyłącznie do testów.
|