Přeskočit obsah

NEO Centrum - manuální testovací scénáře

Regresní a funkční ověření aplikace pro vývoj.

Účel dokumentu

Tento dokument převádí testovací scénář a dosavadní nálezy do podoby pro vývoj a regresní testování. Každý scénář ověřujte v uvedeném pořadí; po opravě proveďte vždy také související regresní test.

Dokument je pracovní a bude se průběžně rozšiřovat. U každého scénáře ponechte stopu o výsledku testu, roli, prostředí a případném ticketu.

Pravidla provedení

U každého scénáře zaznamenejte:

  • Výsledek: PASS, FAIL, BLOCKED, případně NOT RUN
  • Použitou roli
  • Prohlížeč a zařízení
  • Datum a čas testu
  • Testera
  • Odkaz na ticket nebo poznámku

Při FAIL připojte přesné kroky, očekávaný a skutečný výsledek, screenshot nebo video a případnou chybovou hlášku.

Testovací prostředí

Část URL
Administrace https://neo-crm.mswork.cz
Klientská část https://neo-crm.mswork.cz/client
Portál terapeuta https://neo-crm.mswork.cz/TherapistPortal

Předpoklady

  • Klientské přihlášení a registrace používají jednorázové kódy. Zaměstnanci a terapeuti se přihlašují passkeyem.
  • Při paralelním testování rolí používejte pro každou roli jiný prohlížeč nebo anonymní okno.
  • Připravte testovacího administrátora s finančním přístupem, terapeuta s passkey přístupem, klienta s e-mailem, telefon pro SMS ověření při dokončení registrace, službu hrazenou pojišťovnou a testovací kredit/balíček/voucher.

Co v tomto kole netestovat

  • Skutečné platby kartou ani přes platební bránu, jejich vrácení a e-maily navázané na úspěšnou úhradu. Platební brána v testovacím prostředí není dostupná.
  • Export do účetního programu Pohoda, jeho stavy a čas posledního exportu.

Stavový zápis u scénáře

Používejte tento blok pod každým scénářem nebo při zápisu výsledků do ticketu:

Výsledek:
Role:
Prohlížeč/zařízení:
Datum a čas:
Tester:
Ticket:
Poznámka:

1. Přístupy a oprávnění

AUTH-01 - Přihlášení zaměstnance přes passkey

Kroky:

  1. Otevřete administraci jako registrovaný zaměstnanec.
  2. Přihlaste se pomocí passkey.
  3. Ověřte chování při zrušeném passkey dialogu.
  4. Ověřte chování pro e-mail/účet bez oprávnění do administrace.

Očekávaný výsledek:

Platný passkey otevře administraci. Zrušené nebo neplatné ověření zobrazí srozumitelnou chybu bez nekonečného načítání. Uživatel bez oprávnění se do administrace nedostane.

AUTH-02 - Přihlášení terapeuta přes passkey

Kroky:

  1. Otevřete /TherapistPortal.
  2. Přihlaste se terapeutovým účtem pomocí passkey.
  3. Ověřte chování při zrušeném passkey dialogu.
  4. Ověřte chování pro účet bez povoleného terapeutického portálu.

Očekávaný výsledek:

Platný passkey otevře portál terapeuta. Zrušené nebo neplatné ověření zobrazí srozumitelnou chybu bez nekonečného načítání. Účet bez povoleného terapeutického portálu se do portálu nedostane. Pokud se místo passkey zobrazí e-mailový OTP formulář, zaznamenejte FAIL a odkažte na tento scénář.

AUTH-03 - Přihlášení klienta e-mailovým kódem

Kroky:

  1. Otevřete /client.
  2. Klikněte na přihlášení.
  3. Zadejte e-mail existujícího klienta.
  4. Zadejte platný kód.
  5. Zadejte neplatný kód a poté vyžádejte nový.

Očekávaný výsledek:

Platný e-mailový kód otevře klientský portál. Neplatný kód zobrazí srozumitelnou chybu a po opětovném odeslání lze bez refreshu zadat nový kód. Přihlášení klienta neovlivní přihlášení zaměstnance ani terapeuta.

AUTH-05 - Odhlášení ze všech rolí

Kroky:

  1. Přihlaste se jako zaměstnanec a klikněte na odhlášení v horní liště.
  2. Přihlaste se jako klient a klikněte na odhlášení v klientském portálu.
  3. Přihlaste se jako terapeut a klikněte na odhlášení v terapeutickém portálu.
  4. Po každém odhlášení obnovte stránku a zkuste otevřít chráněnou část.

Očekávaný výsledek:

Odhlášení odstraní odpovídající relaci i lokální stav. Po refreshi se neobnoví starý uživatel a chráněná část znovu vyžaduje přihlášení. Odhlášení jedné role neodhlásí jinou roli v odděleném prohlížeči/okně.

AUTH-06 - Oddělení relací rolí

Kroky:

  1. Současně se přihlaste jako administrátor.
  2. Současně se přihlaste jako klient.
  3. Současně se přihlaste jako terapeut.
  4. Použijte oddělená okna, prohlížeče nebo anonymní režim.

Očekávaný výsledek:

Přihlášení jedné role neodhlásí ani neomezí jinou roli.

AUTH-07 - Finanční oprávnění

Kroky:

  1. Přihlaste se jako finanční uživatel.
  2. Přihlaste se jako uživatel bez finančního oprávnění.
  3. Ověřte přístup do sekcí Platby, Klienti a Doklady.

Očekávaný výsledek:

Finanční uživatel vidí Platby, Klienti a Doklady. Uživatel bez oprávnění se do těchto částí nedostane.

AUTH-08 - Passkey pozvánka a recovery zaměstnance

Kroky:

  1. V administraci zaměstnaneckých účtů odešlete passkey pozvánku novému zaměstnanci.
  2. Dokončete nastavení passkey z pozvánky.
  3. Ověřte přihlášení.
  4. Spusťte recovery pozvánku se zneplatněním starých passkeys.
  5. Ověřte, že starý passkey už nefunguje a nový ano.

Očekávaný výsledek:

Pozvánka je doručena správnému uživateli, odkaz vede na nastavení passkey a recovery zneplatní staré passkeys bez zablokování účtu.

2. Administrace

ADM-01 - Založení terapeuta a aktivace portálu

Kroky:

  1. Vytvořte terapeuta.
  2. Povolte mu přístup do terapeutského portálu.
  3. Přihlaste se jeho účtem pomocí passkey.
  4. Zkontrolujte doručenou e-mailovou pozvánku.

Očekávaný výsledek:

Terapeut dokončí přihlášení a otevře se mu jeho portál. Po založení obdrží jasnou e-mailovou pozvánku s odkazem na portál.

ADM-01A - Správa zaměstnaneckých účtů a rolí

Kroky:

  1. Vytvořte nový zaměstnanecký účet.
  2. Nastavte mu roli klientske, finance a admin-klientske.
  3. Odešlete passkey pozvánku.
  4. Upravte účet a zkontrolujte změnu dostupné navigace.
  5. Zkuste účet odstranit.

Očekávaný výsledek:

Role se projeví v dostupné navigaci a oprávněních. Passkey pozvánka odejde na správný e-mail. Odstranění uživatele zneplatní jeho přístup a neponechá aktivní relaci.

ADM-02 - Založení klienta

Kroky:

  1. Založte klienta s e-mailem.
  2. Založte klienta s telefonem.
  3. Ověřte přihlášení existujícího klienta e-mailem.
  4. Ověřte registraci nového klienta e-mailem.
  5. Při dokončení registrace doplňte telefon a ověřte jej SMS kódem.

Očekávaný výsledek:

E-mailový kód dorazí a funguje pro vstup do klientské části i založení registrace. Při dokončení registrace dorazí SMS ověřovací kód na telefon a bez jeho správného zadání nelze registraci dokončit. Údaje profilu, telefon a souhlasy se uloží.

ADM-03 - Kalendář, blokace a synchronizace

Kroky:

  1. Vytvořte termín.
  2. Přesuňte termín.
  3. Prodlužte termín.
  4. Smažte termín.
  5. Vytvořte opakovaný termín.
  6. Vytvořte blokaci.
  7. Totéž ověřte ve druhém otevřeném okně.

Očekávaný výsledek:

Každá změna se ihned projeví v kalendáři bez ručního refreshu. Blokace je viditelná a současně brání koliznímu zápisu. Opakování je dostupné i pro blokace/nepřítomnosti.

ADM-04 - Běžná rezervace a stavy

Kroky:

  1. V klientské části vytvořte rezervaci.
  2. Zkontrolujte ji v administraci.
  3. Ověřte stav rezervace, potvrzení po úhradě nebo platbě na místě, použitý způsob úhrady a potvrzení příchodu po termínu.

Očekávaný výsledek:

Stav rezervace je shodný v obou částech aplikace a po změně se průběžně synchronizuje.

ADM-05 - Zrušení rezervace a vratka

Kroky:

  1. Zrušte včasnou rezervaci.
  2. Zrušte pozdní rezervaci.
  3. Ověřte variantu s vrácením peněz.
  4. Ověřte variantu bez vrácení peněz.
  5. Vyzkoušejte vrácení na kredit.
  6. Vyzkoušejte vrácení sezení do balíčku.

Očekávaný výsledek:

Aplikace vede uživatele k potřebné vratce, jasně ukáže ID platby a typ původní úhrady a nezobrazí chybu serveru. Oprávnění k finanční vratce je řízeno rolí.

ADM-06 - Způsoby platby a nula

Kroky:

  1. Po vytvoření termínu v administraci otevřete dialog platby.
  2. Ověřte nabídku balíček, kredit, výzva k platbě a platba na místě.
  3. U platby na místě zadejte externí ID platby / číslo pokladního dokladu a ověřte, že bez něj platbu nelze uložit.
  4. Ověřte, že skutečná platba kartou přes bránu se v tomto scénáři neprovádí.
  5. U služby s cenou 0 Kč ověřte, že peněžní způsoby platby nejsou použitelné pro reálnou úhradu; částka se v dialogu ručně nezadává.

Očekávaný výsledek:

Dostupné způsoby odpovídají situaci klienta. Platba na místě je pouze evidence externí úhrady z pokladního systému a vyžaduje ID pro spárování. Reálná kartová brána se netestuje. U peněžních metod se používá cena výkonu, ne ručně zadaná částka; služba s cenou 0 Kč nemá vést k reálné peněžní úhradě. Čerpání balíčku/voucheru se ověřuje v samostatných scénářích.

ADM-07 - Notifikace navázané na události

Kroky:

  1. Vytvořte novou rezervaci a ověřte notifikaci terapeutovi.
  2. Odešlete výzvu k platbě.
  3. Přesuňte existující termín.
  4. Zrušte termín.
  5. Spusťte připomínky přes CLI, např. v Dockeru docker compose exec apache php /var/www/html/backend/bin/run-reminders.php --email=staff@example.com; na serveru stejný příkaz nastavte v cronu.

Očekávaný výsledek:

Každá akce vyvolá správnou šablonu notifikace podle nastavení. Cronové připomínky se neposílají duplicitně. Vypnutí informačních SMS zastaví pouze šablonové SMS, nikoliv registrační/ověřovací SMS.

ADM-08 - Veřejné odkazy na doklady, storno a platební návrat

Kroky:

  1. Otevřete veřejný odkaz na doklad /invoice.
  2. Otevřete veřejný odkaz na storno poplatek /storno.
  3. Otevřete návratovou stránku platby /payment-return s platným a neplatným identifikátorem.

Očekávaný výsledek:

Veřejné odkazy fungují bez přihlášení, ale nezpřístupní cizí data bez platného tokenu/identifikátoru. Neplatný nebo expirovaný odkaz zobrazí srozumitelnou chybu.

3. Klientská část

CLI-01 - Přihlášení a registrace

Kroky:

  1. Přihlaste existujícího klienta e-mailem a jednorázovým kódem.
  2. Zadejte neplatný e-mailový kód.
  3. Vyžádejte si nový e-mailový kód a ověřte, že lze pokračovat bez refreshu.
  4. Vytvořte nového klienta přes registrační e-mailový kód.
  5. Vyplňte profil včetně telefonu.
  6. Ověřte telefon SMS kódem při dokončení registrace.
  7. Zkuste registraci dokončit bez souhlasu s VOP/GDPR.

Očekávaný výsledek:

E-mailový kód funguje pro přihlášení i založení registrace. Neplatný kód má srozumitelnou chybu a opětovné odeslání resetuje předchozí vstup. Při dokončení registrace se odešle SMS ověření telefonu. Bez správného SMS kódu a bez povinných souhlasů se pokračování jasně zablokuje. Po dokončení se profil, telefon a souhlasy korektně uloží.

CLI-02 - Nová rezervace a nabídka služeb

Kroky:

  1. Jako nový klient založte rezervaci bez absolvovaného prvního termínu.
  2. Prověřte nabídku balíčku.
  3. Prověřte nabídku kreditu.
  4. Prověřte nabídku pojišťovacích terapií.

Očekávaný výsledek:

Balíček se nenabízí před prvním termínem. Platba z kreditu se v rezervaci nabídne jen klientovi s dostatečným zůstatkem; záložka/dobití kreditu může být dostupné i při nulovém zůstatku. Nabídka pojišťovacích služeb odpovídá oprávněním/štítkům klienta.

CLI-03 - Platba, zrušení a klientský pohled

Kroky:

  1. Ověřte platební informace u rezervace.
  2. Zrušte rezervaci včas.
  3. Zrušte rezervaci po lhůtě.
  4. Otevřete detail klienta.
  5. Zkontrolujte dostupné akce.

Očekávaný výsledek:

Výsledek storna odpovídá pravidlům. Klient nevidí akce pro vratky ani technické označení „Původní platba“. Skutečnou úhradu přes bránu neprovádějte.

CLI-04 - Balíček a voucher

Kroky:

  1. V klientském portálu kupte testovací balíček.
  2. V administraci vystavte testovací voucher na službu, která má povolené vystavení voucheru.
  3. Použijte balíček při rezervaci a voucher uplatněte přes odkaz /redeem?code=....

Očekávaný výsledek:

Po nákupu balíčku je balíček dostupný v klientském portálu. Vystavený voucher lze uplatnit přes veřejný odkaz a jeho využití se promítne do rezervace i klientského přehledu.

CLI-05 - Klientské odhlášení a obnova relace

Kroky:

  1. Přihlaste klienta.
  2. Obnovte stránku a ověřte, že klient zůstane přihlášený.
  3. Klikněte na odhlášení.
  4. Obnovte stránku.
  5. Zkuste otevřít klientský dashboard přímou URL.

Očekávaný výsledek:

Po refreshi před odhlášením se relace obnoví. Po odhlášení se relace ani lokální profil neobnoví a aplikace zobrazí přihlášení nebo veřejný rezervační portál.

CLI-06 - Jazyk klientského portálu

Kroky:

  1. Přepněte klientský portál do češtiny.
  2. Přepněte klientský portál do angličtiny.
  3. Ověřte login, rezervaci, onboarding a dashboard v obou jazycích.

Očekávaný výsledek:

Texty se přepnou konzistentně a formuláře zůstanou funkční. Jazyk neovlivní validaci ani dostupné služby.

4. Terapeutický portál

THR-01 - Přihlášení terapeuta

Kroky:

  1. Otevřete terapeutický portál.
  2. Přihlaste se jako terapeut pomocí passkey.
  3. Ověřte chování při zrušeném nebo neplatném passkey ověření.

Očekávaný výsledek:

Platný passkey otevře portál terapeuta. Chybový stav 403 nebo neukončené načítání se neobjeví. Neplatné ověření zobrazí srozumitelnou chybu.

Poznámka:

Pokud aktuální build zobrazí e-mailový OTP formulář pro terapeuta, zaznamenejte FAIL; cílové chování je passkey stejně jako u zaměstnanců.

THR-01A - Odhlášení terapeuta

Kroky:

  1. Přihlaste terapeuta do portálu.
  2. Obnovte stránku a ověřte zachování relace.
  3. Klikněte na odhlášení.
  4. Obnovte stránku a otevřete /TherapistPortal znovu.

Očekávaný výsledek:

Před odhlášením se terapeutický portál obnoví se stejným terapeutem. Po odhlášení se lokální terapeutická relace smaže a portál znovu vyžaduje přihlášení.

THR-02 - Online termíny a kapacita

Kroky:

  1. Nastavte online dostupnost.
  2. Vytvořte online termín.
  3. Pokud má terapeut povolenou vyšší kapacitu, nastavte ji u termínu.

Očekávaný výsledek:

Online termín lze vytvořit bez vazby na místnost a povolená vyšší kapacita se přijme.

THR-03 - Současný osobní a online termín

Kroky:

  1. Vytvořte osobní termín.
  2. Ve stejný čas nabídněte online rezervaci.

Očekávaný výsledek:

Konfigurace funguje dle pravidel služby a nevznikne chybná kolize.

THR-04 - Práce s klientem a export kalendáře

Kroky:

  1. Ověřte, které výkony smí terapeut klientovi nabídnout.
  2. Exportujte terapeutův kalendář.

Očekávaný výsledek:

Oprávnění terapeuta k výkonům je záměrné a srozumitelné. Export obsahuje správné datum, výkon a pro potřebu výkazu také relevantní storna.

5. Terapie hrazená pojišťovnou a storno

INS-01 - Rezervace hrazená pojišťovnou

Kroky:

  1. Připravte pojišťovací službu.
  2. Připravte oprávněného klienta.
  3. Vytvořte rezervaci v administraci.
  4. Vytvořte rezervaci v klientské části.

Očekávaný výsledek:

Rezervace je označena jako uhrazená pojišťovnou. Klient není vyzván k platbě a nevidí nadbytečné platební ani storno dialogy. Ověřte i doručení potvrzení rezervace.

INS-02 - Nedostavení se a výzva ke storno poplatku

Kroky:

  1. Po začátku termínu označte „Nedostavil se (pojišťovna)“.
  2. Odešlete výzvu ke storno poplatku.

Očekávaný výsledek:

Stav nedostavení se je uložen, e-mail s bezpečným odkazem na úhradu odejde přes zřetelnou akci a v přehledu je storno snadno dohledatelné.

INS-03 - Zobrazení storna a ochrana před opakováním

Kroky:

  1. Otevřete odkaz z e-mailu.
  2. Ověřte storno 1 000 Kč.
  3. U stejné rezervace zkuste výzvu odeslat znovu.
  4. Zadejte 0 Kč.

Očekávaný výsledek:

Částka i doklad jsou správně zobrazené, druhý pokus aplikace odmítne a 0 Kč nepřijme. Samotnou platbu bránou neprovádějte.

5A. Vouchery

VCH-01 - Vytvoření a stažení voucheru

Kroky:

  1. V administraci vytvořte voucher na službu, která má povolené vystavení voucheru.
  2. Otevřete náhled QR kódu.
  3. Zkopírujte odkaz pro klienta.
  4. Stáhněte PNG voucher.

Očekávaný výsledek:

Voucher se vytvoří, QR kód je viditelný v náhledu i ve staženém PNG a odkaz vede na uplatnění voucheru.

VCH-02 - Uplatnění voucheru klientem

Kroky:

  1. Otevřete odkaz voucheru /redeem?code=....
  2. Vyberte terapeuta, datum a čas.
  3. Dokončete rezervaci.
  4. Zkuste stejný voucher použít znovu.

Očekávaný výsledek:

Voucher předvybere správnou službu a umožní vytvořit rezervaci bez nadbytečné platby. Po uplatnění se stav voucheru změní a opakované použití je blokované.

6. Finance a exporty

FIN-01 - Přehled plateb a filtry

Kroky:

  1. Otevřete Platby.
  2. Nastavte datum Od-Do.
  3. Kombinujte filtry datum, způsob platby, stav a doklad.

Očekávaný výsledek:

Testovací/karetní/bránové platby se zobrazují pod názvem „Platební brána“ a filtry vrací pouze odpovídající záznamy.

FIN-02 - CSV export plateb

Kroky:

  1. S aktivními filtry stáhněte CSV.
  2. Otevřete jej v Excelu.

Očekávaný výsledek:

CSV respektuje aktuální filtry, má správné české znaky a přehledně oddělené sloupce.

FIN-03 - Doklady a kredity klienta

Kroky:

  1. V detailu klienta otevřete platby a doklady.
  2. Pracujte s testovacím kreditem včetně převodu/vrácení.

Očekávaný výsledek:

Doklady jsou dostupné přes bezpečný odkaz, kredit lze řízeně spravovat a akce nezpůsobí chybu serveru. Vratky karty/brány v tomto kole netestujte.

FIN-04 - Statistiky obsazenosti

Kroky:

  1. Vyexportujte celkový přehled.
  2. Vyexportujte souhrn podle ordinací.
  3. Vyexportujte souhrn podle terapeutů.
  4. Vyexportujte detail proběhlých terapií.
  5. Pokud je dostupná, ověřte volbu potvrzených/zaplacených terapií.

Očekávaný výsledek:

Každý soubor obsahuje správná data, české znaky a jasně oddělené sloupce.

7. Průřezové kontroly

MAIL-01 - E-maily a odkazy na doklady

Kroky:

  1. U scénářů, které mají odesílat potvrzení, pozvánku, výzvu ke storno poplatku nebo doklad, ověřte příjem e-mailu.
  2. Ověřte bezpečný odkaz.

Očekávaný výsledek:

E-mail dorazí správnému příjemci, má srozumitelný účel a odkaz otevře správný dokument/akci. Doklady se neposílají jako příloha.

MAIL-02 - SMS brána a rozdíl mezi informačními a ověřovacími SMS

Kroky:

  1. Vypněte informační SMS v nastavení notifikací.
  2. Ověřte, že šablonové informační SMS neodejdou.
  3. Spusťte klientskou registraci a dokončení registrace s ověřením telefonu.

Očekávaný výsledek:

Vypínač informačních SMS neodešle šablonové SMS, ale neblokuje registrační a ověřovací SMS kódy.

SYNC-01 - Aktualizace mezi okny

Kroky:

  1. Změňte rezervaci, stav či kalendář v jednom okně.
  2. Sledujte druhé přihlášené okno.

Očekávaný výsledek:

Relevantní data se obnoví automaticky nebo jednoznačně řízeným způsobem bez zobrazení zastaralého stavu.

8. Prioritní nálezy k ověření po opravě

P0 - Přihlášení a registrace

  • Neplatný klientský e-mailový nebo SMS kód nesmí zůstat v nekonečném načítání.
  • Po „znovu odeslat kód“ se musí předchozí vstup resetovat.
  • Zaměstnanci a terapeuti se musí přihlašovat passkeyem, ne jednorázovým e-mailovým kódem.
  • Dokončení registrace nesmí vytvořit pouze rezervaci bez uloženého profilu, telefonu a souhlasů.
  • Ověřit v Edge i Chrome.

P0 - Konzistence kalendáře a rezervací

  • Blokace/změny musí být hned vidět.
  • Nesmí vznikat stav, kdy termín v kalendáři chybí, ale systém hlásí kolizi.
  • Ověřit automatické obnovení i zobrazení stornovaných/nedostavených rezervací.

P0 - Vratky a kredity

  • Ověřit srozumitelný proces vratky.
  • Ověřit dostupnost ID platby.
  • Ověřit bezchybné vrácení na kredit.
  • Ověřit jasné rozlišení mezi vrácením kreditu a vrácením sezení do balíčku.
  • Rozhodnout a implementovat roli oprávněnou k vratkám.

P1 - Pojišťovací storna

  • Zpřesnit pracovní postup.
  • Uložení stavu nedostavení se a samostatné odeslání výzvy ke storno poplatku musí být nevratně srozumitelné i při pozdějším rozhodnutí výzvu poslat.
  • Zvážit přejmenování CTA na „Odeslat výzvu k úhradě storna“.

P1 - Nabídka služeb a platby

  • Ověřit filtrování pojišťovacích služeb dle oprávnění klienta.
  • Ověřit vysvětlení kreditu v klientské části.
  • Ověřit případný kombinovaný model kredit + doplatek.
  • Při změně již uhrazené služby na levnější zobrazit přeplatek a navrhnout řešení.

Hlášení chyby

Do každého ticketu uveďte:

  • ID scénáře
  • Roli
  • Prohlížeč a zařízení
  • Přesné kroky
  • Očekávaný výsledek
  • Skutečný výsledek
  • Čas testu
  • Screenshot/video
  • Případný kód chyby

Pokud chyba blokuje navazující scénáře, označte ji jako BLOCKER.