MinecoreInventoryBridge - Testovací Scénáře¶
Přehled¶
Tento dokument obsahuje komplexní testovací scénáře pro plugin MinecoreInventoryBridge (MIB).
Testovací prostředí: - Save Server: /staging - Server pro ukládání inventářů - Load Server: /pvp - Server pro načítání inventářů
🎮 TESTOVACÍ SCÉNÁŘE PRO HRÁČE¶
Scénář 1: Základní Ukládání a Načítání Inventáře¶
Cíl: Otestovat základní funkci ukládání a načítání inventáře
Postup: 1. Na serveru /staging: - Dej si do inventáře různé předměty (zbraně, brnění, jídlo, helmu, hrudník, nohavice, boty) - Spusť příkaz: /mib save default - Potvrď uložení v GUI (zelené sklo)
- Na serveru
/pvp: - Spusť příkaz:
/mib load default - Zkontroluj náhled v GUI
- Potvrď načtení (zelené sklo)
- Ověř, že všechny předměty jsou správně na svých místech
Očekávaný výsledek: - ✅ Inventář se úspěšně uloží na /staging - ✅ Inventář se správně načte na /pvp - ✅ Všechny předměty jsou na správných pozicích včetně brnění a offhandu
Scénář 2: Pojmenované Inventáře (Múltiple Kity)¶
Cíl: Otestovat ukládání a načítání více pojmenovaných inventářů
Postup: 1. Na serveru /staging: - Kit #1 - "pvp": - Nastav PvP výbavu (meč, luk, šípy, zbroj) - /mib save pvp - Potvrď v GUI
-
Kit #2 - "build":
- Nastav stavitelskou výbavu (krumpáč, lopata, bloky)
/mib save build- Potvrď v GUI
-
Kit #3 - "mining":
- Nastav důlní výbavu (krumpáč, pochodeň, žebřík)
/mib save mining- Potvrď v GUI
-
Ověření seznamu:
/mib list-
Zkontroluj, že vidíš všechny 3 kity
-
Na serveru
/pvp: /mib load pvp- načti PvP kit/mib load build- načti stavitelský kit/mib load mining- načti důlní kit
Očekávaný výsledek: - ✅ Lze uložit více různých kitů - ✅ /mib list zobrazí všechny uložené kity - ✅ Každý kit se načte se správnou výbavou - ✅ Tab completion nabízí správné názvy kitů
Scénář 3: Nabití (Redeems) - Omezený Počet Použití¶
Cíl: Otestovat systém omezeného počtu načtení
Postup: 1. Na serveru /staging: - Nastav inventář s valuables (diamanty, zlatá zbroj) - /mib save vip 3 (uložení s 3 nabitími) - Potvrď v GUI (měla by se zobrazit informace o 3 nabitích)
- Na serveru
/pvp: -
1. načtení:
/mib load vip- Potvrď v GUI
- Mělo by se zobrazit: "Zbývající nabití: 2"
-
Vyprázdni inventář
-
2. načtení:
/mib load vip- Potvrď v GUI
- Mělo by se zobrazit: "Zbývající nabití: 1"
-
Vyprázdni inventář
-
3. načtení (poslední):
/mib load vip- Potvrď v GUI
- Mělo by se zobrazit: "Toto je poslední nabití!"
- Po načtení: "Tento inventář byl označen jako vyčerpaný"
-
4. pokus o načtení:
/mib load vip- Mělo by se zobrazit: "Nebyl nalezen žádný uložený inventář s názvem 'vip'!"
Očekávaný výsledek: - ✅ Inventář lze načíst pouze 3x - ✅ Počet zbývajících nabití se správně zobrazuje - ✅ Po vyčerpání nabití nelze inventář znovu načíst - ✅ "Poslední nabití" warning se zobrazí správně
Scénář 4: Náhled Inventáře (Preview)¶
Cíl: Otestovat funkci náhledu bez načítání
Postup: 1. Na serveru /staging: - Ulož kit: /mib save test
- Na serveru
/pvp: /mib preview test- Zkus kliknout na předměty (nemělo by to fungovat)
- Zkus přetáhnout předměty (nemělo by to fungovat)
- Zkus shift-kliknout na předměty (nemělo by to fungovat)
- Zavři GUI (ESC)
Očekávaný výsledek: - ✅ Náhled se otevře s předměty - ✅ Nelze vyndat žádné předměty - ✅ Nelze nic přetahovat - ✅ GUI je read-only - ✅ Inventář se nenačte
Scénář 5: Mazání Inventářů¶
Cíl: Otestovat mazání uložených kitů
Postup: 1. Na serveru /staging: - Ulož několik kitů: - /mib save kit1 - /mib save kit2 - /mib save kit3 - /mib list - ověř, že máš 3 kity
- Smazání jednoho kitu:
/mib delete kit2- Zkontroluj náhled v GUI (měl by zobrazit kit2)
- Potvrď smazání (červené sklo)
-
/mib list- měl by zůstat jen kit1 a kit3 -
Smazání všech kitů:
/mib delete all- Zkontroluj seznam v GUI
- Potvrď smazání všeho
/mib list- mělo by vypsat "Nemáš žádné uložené inventáře!"
Očekávaný výsledek: - ✅ Jednotlivý kit se smaže s preview - ✅ "Delete all" smaže všechny kity najednou - ✅ GUI je chráněno proti vytahování předmětů - ✅ Po smazání nelze kit načíst
Scénář 6: Přepsání Existujícího Kitu¶
Cíl: Otestovat přepisování kitu se stejným názvem
Postup: 1. Na serveru /staging: - Nastav inventář s obyčejnými předměty - /mib save daily - Potvrď uložení
- Pokus o přepsání:
- Změň inventář (jiné předměty)
/mib save daily(stejný název)- Mělo by se zobrazit overwrite GUI
- Zkontroluj náhled starého inventáře
-
Potvrď přepsání (červené tlačítko "Přepsat a uložit")
-
Ověření:
/mib preview daily- Měl by se zobrazit NOVÝ inventář
Očekávaný výsledek: - ✅ Při pokusu o přepsání se zobrazí warning GUI - ✅ V GUI je náhled starého inventáře - ✅ Po potvrzení se kit přepíše novým - ✅ Lze zrušit přepsání
Scénář 7: Validace Názvů Kitů¶
Cíl: Otestovat omezení pojmenování kitů
Postup: 1. Na serveru /staging: - Zkus uložit kit jen s číslem: /mib save 123 - Mělo by selhať: "Název inventáře nemůže být pouze číslo!"
-
Zkus neplatné znaky:
/mib save kit@special!- Mělo by selhať: "Neplatný název inventáře!"
-
Zkus příliš dlouhý název:
/mib save verylongnamethatismorethan32characters- Mělo by selhať: "Název inventáře je příliš dlouhý!"
-
Platný název:
/mib save kit_one-2024- Mělo by fungovat ✅
Očekávaný výsledek: - ✅ Čistě číselné názvy jsou zakázány - ✅ Speciální znaky jsou zakázány - ✅ Názvy nad 32 znaků jsou zakázány - ✅ Platné názvy (písmena, čísla, _, -) fungují
Scénář 8: Tab Completion¶
Cíl: Otestovat automatické doplňování příkazů
Postup: 1. Na serveru /staging: - Ulož kity: /mib save alpha, /mib save beta, /mib save gamma
- Test tab completion:
/mib <TAB>- mělo by nabídnout: save, load, preview, delete, list, fill, admin, version/mib save <TAB>- mělo by nabídnout existující názvy kitů/mib load <TAB>- mělo by nabídnout: alpha, beta, gamma/mib delete <TAB>- mělo by nabídnout: all, alpha, beta, gamma/mib preview <TAB>- mělo by nabídnout: alpha, beta, gamma/mib load b<TAB>- mělo by doplnit "beta"
Očekávaný výsledek: - ✅ Tab completion funguje pro všechny příkazy - ✅ Nabízí pouze relevantní návrhy - ✅ Filtruje podle zadaného textu
Scénář 9: GUI Ochrana¶
Cíl: Otestovat, že nelze manipulovat s předměty v GUI
Postup: Pro každé GUI otestuj následující: - /mib save test (Save confirmation GUI) - /mib load test (Load preview GUI) - /mib preview test (Preview GUI) - /mib delete test (Delete confirmation GUI)
V každém GUI zkus: 1. Levý klik na předmět (nemělo by fungovat) 2. Pravý klik na předmět (nemělo by fungovat) 3. Shift + levý klik (nemělo by fungovat) 4. Přetažení předmětu (nemělo by fungovat) 5. Číslo 1-9 (swap s hotbarem - nemělo by fungovat) 6. Q (drop item - nemělo by fungovat)
Očekávaný výsledek: - ✅ Žádná manipulace s předměty není možná - ✅ Předměty zůstávají v GUI - ✅ Fungují pouze tlačítka Potvrdit/Zrušit
Scénář 10: Lore na Předmětech¶
Cíl: Ověřit, že uložené předměty mají správné lore
Postup: 1. Na serveru /staging: - Dej si do inventáře různé předměty - /mib save marked - Potvrď uložení
- Na serveru
/pvp: /mib load marked- Potvrď načtení
- Najeď myší na každý načtený předmět
- Zkontroluj lore
Očekávaný výsledek: - ✅ Všechny načtené předměty mají lore: &5Man In Black - ✅ Všechny předměty mají Curse of Vanishing enchantment - ✅ Lore je fialová barva
👑 TESTOVACÍ SCÉNÁŘE PRO ADMINY¶
Admin Scénář 1: Preview Hráčova Inventáře¶
Cíl: Otestovat admin preview funkci
Postup: 1. Jako hráč "TestPlayer" na /staging: - /mib save warrior - /mib save mage
- Jako admin:
/mib admin preview TestPlayer(default kit)/mib admin preview TestPlayer warrior/mib admin preview TestPlayer mage- Zkontroluj, že vidíš správný inventář
-
Zkus manipulovat s předměty (nemělo by fungovat)
-
Test tab completion:
/mib admin preview <TAB>- mělo by nabídnout online hráče/mib admin preview TestPlayer <TAB>- mělo by nabídnout kity TestPlayera
Očekávaný výsledek: - ✅ Admin vidí inventář hráče - ✅ GUI je read-only - ✅ Tab completion funguje - ✅ Lze zobrazit jak default, tak pojmenované kity
Admin Scénář 2: Mazání Hráčova Inventáře¶
Cíl: Otestovat admin clear funkci
Postup: 1. Jako hráč "TestPlayer" na /staging: - /mib save admin_test 5 (s 5 nabitími) - /mib list - ověř, že kit existuje
- Jako admin:
/mib admin clear TestPlayer admin_test- Mělo by se zobrazit: "Mažu uložený inventář pro TestPlayer..."
-
Mělo by se zobrazit: "Úspěšně smazán inventář pro TestPlayer!"
-
Jako hráč "TestPlayer":
/mib list- admin_test by neměl být v seznamu/mib load admin_test- mělo by selhať: "Nebyl nalezen žádný uložený inventář"
Očekávaný výsledek: - ✅ Admin může smazat hráčův kit - ✅ Kit je okamžitě nedostupný pro hráče - ✅ Redeems se nastaví na 0 - ✅ Akce je logována
Admin Scénář 3: Bulk Operace¶
Cíl: Otestovat admin operace na více hráčích
Postup: 1. Příprava: - Hráč A: /mib save test - Hráč B: /mib save test - Hráč C: /mib save test
- Jako admin - clear pro každého hráče:
/mib admin clear PlayerA test/mib admin clear PlayerB test-
/mib admin clear PlayerC test -
Ověření:
- Všichni hráči by měli dostat hlášku že kit neexistuje
Očekávaný výsledek: - ✅ Admin může mazat kity různým hráčům - ✅ Každá operace je samostatná - ✅ Loguje se každá akce
Admin Scénář 4: Edge Cases a Error Handling¶
Cíl: Otestovat chování při neplatných vstupech
Postup: 1. Preview neexistujícího hráče: - /mib admin preview NonExistentPlayer - Mělo by: "Nebyl nalezen žádný uložený inventář pro NonExistentPlayer!"
- Clear neexistujícího kitu:
/mib admin clear TestPlayer nonexistent-
Mělo by: "Nebyl nalezen žádný uložený inventář pro TestPlayer!"
-
Preview offline hráče (ale má uložený kit):
- Hráč se odpojí
- Admin:
/mib admin preview OfflinePlayer default -
Mělo by fungovat ✅
-
Tab completion pro offline hráče:
/mib admin preview <TAB>- mělo by nabídnout pouze ONLINE hráče
Očekávaný výsledek: - ✅ Správné error zprávy pro neexistující data - ✅ Funguje i pro offline hráče (pokud mají data) - ✅ Tab completion zobrazuje jen online hráče
📊 CHECKLIST PRO KOMPLETNÍ TEST¶
Základní Funkce¶
- Ukládání inventáře funguje
- Načítání inventáře funguje
- Preview funguje
- Mazání funguje
- List funguje
Pojmenované Kity¶
- Lze uložit více kitů s různými názvy
- Tab completion navrhuje správné názvy
- Lze načíst specifický kit podle názvu
- Validace názvů funguje správně
Redeems Systém¶
- Lze nastavit počet nabití (1-10)
- Počítadlo nabití se správně snižuje
- Po vyčerpání nabití nelze načíst
- "Poslední nabití" warning funguje
GUI Ochrana¶
- Save confirmation GUI je chráněno
- Load preview GUI je chráněno
- Preview GUI je chráněno
- Delete confirmation GUI je chráněno
- Overwrite GUI je chráněno
- Admin preview GUI je chráněno
Administrátorské Funkce¶
- Admin může zobrazit hráčovy kity
- Admin může mazat hráčovy kity
- Tab completion pro admin příkazy funguje
- Logování admin akcí funguje
Cross-Server¶
- Data se sdílejí mezi
/staginga/pvp - Okamžitá synchronizace funguje
- Žádné konflikty při souběžném přístupu
🐛 ZNÁMÉ PROBLÉMY K OTESTOVÁNͶ
- Překročení limitu nabití:
- Zkus:
/mib save test 11(mělo by být zamítnuto) -
Zkus:
/mib save test 0(mělo by být zamítnuto) -
Prázdný inventář:
- Zkus uložit kompletně prázdný inventář
-
Mělo by fungovat nebo dát warning?
-
Economy integrace:
- Pokud je zapnutá ekonomika, otestuj:
- Nedostatek peněz při save
- Nedostatek peněz při load
-
VIP slevy (pokud jsou implementovány)
-
Dlouhé názvy kitů:
- Zkus 32-znakový název (maximální délka)
- Ověř, že se správně zobrazuje v GUI
📝 REPORTING BUGٶ
Při nalezení bugu zaznamenej: 1. Kroky k reprodukci - Přesný postup 2. Očekávané chování - Co mělo nastat 3. Skutečné chování - Co se opravdu stalo 4. Server - /staging nebo /pvp 5. Verze pluginu - /mib version 6. Console log - Pokud je relevantní 7. Screenshot - Pokud je to GUI problém
✅ ZÁVĚR¶
Po dokončení všech testovacích scénářů by měl plugin: - ✅ Správně ukládat a načítat inventáře mezi servery - ✅ Správně spravovat pojmenované kity - ✅ Správně počítat nabití - ✅ Mít plně funkční GUI bez možnosti zneužití - ✅ Poskytovat admin nástroje pro správu - ✅ Být plně lokalizován v češtině
Happy Testing! 🚀