Skip to content

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)

  1. Na serveru /pvp:
  2. Spusť příkaz: /mib load default
  3. Zkontroluj náhled v GUI
  4. Potvrď načtení (zelené sklo)
  5. 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)

  1. Na serveru /pvp:
  2. 1. načtení: /mib load vip

    • Potvrď v GUI
    • Mělo by se zobrazit: "Zbývající nabití: 2"
  3. Vyprázdni inventář

  4. 2. načtení: /mib load vip

    • Potvrď v GUI
    • Mělo by se zobrazit: "Zbývající nabití: 1"
  5. Vyprázdni inventář

  6. 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ý"
  7. 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

  1. Na serveru /pvp:
  2. /mib preview test
  3. Zkus kliknout na předměty (nemělo by to fungovat)
  4. Zkus přetáhnout předměty (nemělo by to fungovat)
  5. Zkus shift-kliknout na předměty (nemělo by to fungovat)
  6. 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

  1. Smazání jednoho kitu:
  2. /mib delete kit2
  3. Zkontroluj náhled v GUI (měl by zobrazit kit2)
  4. Potvrď smazání (červené sklo)
  5. /mib list - měl by zůstat jen kit1 a kit3

  6. Smazání všech kitů:

  7. /mib delete all
  8. Zkontroluj seznam v GUI
  9. Potvrď smazání všeho
  10. /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í

  1. Pokus o přepsání:
  2. Změň inventář (jiné předměty)
  3. /mib save daily (stejný název)
  4. Mělo by se zobrazit overwrite GUI
  5. Zkontroluj náhled starého inventáře
  6. Potvrď přepsání (červené tlačítko "Přepsat a uložit")

  7. Ověření:

  8. /mib preview daily
  9. 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

  1. Test tab completion:
  2. /mib <TAB> - mělo by nabídnout: save, load, preview, delete, list, fill, admin, version
  3. /mib save <TAB> - mělo by nabídnout existující názvy kitů
  4. /mib load <TAB> - mělo by nabídnout: alpha, beta, gamma
  5. /mib delete <TAB> - mělo by nabídnout: all, alpha, beta, gamma
  6. /mib preview <TAB> - mělo by nabídnout: alpha, beta, gamma
  7. /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í

  1. Na serveru /pvp:
  2. /mib load marked
  3. Potvrď načtení
  4. Najeď myší na každý načtený předmět
  5. 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

  1. Jako admin:
  2. /mib admin preview TestPlayer (default kit)
  3. /mib admin preview TestPlayer warrior
  4. /mib admin preview TestPlayer mage
  5. Zkontroluj, že vidíš správný inventář
  6. Zkus manipulovat s předměty (nemělo by fungovat)

  7. Test tab completion:

  8. /mib admin preview <TAB> - mělo by nabídnout online hráče
  9. /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

  1. Jako admin:
  2. /mib admin clear TestPlayer admin_test
  3. Mělo by se zobrazit: "Mažu uložený inventář pro TestPlayer..."
  4. Mělo by se zobrazit: "Úspěšně smazán inventář pro TestPlayer!"

  5. Jako hráč "TestPlayer":

  6. /mib list - admin_test by neměl být v seznamu
  7. /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

  1. Jako admin - clear pro každého hráče:
  2. /mib admin clear PlayerA test
  3. /mib admin clear PlayerB test
  4. /mib admin clear PlayerC test

  5. Ověření:

  6. 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!"

  1. Clear neexistujícího kitu:
  2. /mib admin clear TestPlayer nonexistent
  3. Mělo by: "Nebyl nalezen žádný uložený inventář pro TestPlayer!"

  4. Preview offline hráče (ale má uložený kit):

  5. Hráč se odpojí
  6. Admin: /mib admin preview OfflinePlayer default
  7. Mělo by fungovat ✅

  8. Tab completion pro offline hráče:

  9. /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 /staging a /pvp
  • Okamžitá synchronizace funguje
  • Žádné konflikty při souběžném přístupu

🐛 ZNÁMÉ PROBLÉMY K OTESTOVÁNÍ

  1. Překročení limitu nabití:
  2. Zkus: /mib save test 11 (mělo by být zamítnuto)
  3. Zkus: /mib save test 0 (mělo by být zamítnuto)

  4. Prázdný inventář:

  5. Zkus uložit kompletně prázdný inventář
  6. Mělo by fungovat nebo dát warning?

  7. Economy integrace:

  8. Pokud je zapnutá ekonomika, otestuj:
  9. Nedostatek peněz při save
  10. Nedostatek peněz při load
  11. VIP slevy (pokud jsou implementovány)

  12. Dlouhé názvy kitů:

  13. Zkus 32-znakový název (maximální délka)
  14. 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! 🚀