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:
1. Přístupy a oprávnění¶
AUTH-01 - Přihlášení zaměstnance přes passkey¶
Kroky:
- Otevřete administraci jako registrovaný zaměstnanec.
- Přihlaste se pomocí passkey.
- Ověřte chování při zrušeném passkey dialogu.
- 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:
- Otevřete
/TherapistPortal. - Přihlaste se terapeutovým účtem pomocí passkey.
- Ověřte chování při zrušeném passkey dialogu.
- 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:
- Otevřete
/client. - Klikněte na přihlášení.
- Zadejte e-mail existujícího klienta.
- Zadejte platný kód.
- 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:
- Přihlaste se jako zaměstnanec a klikněte na odhlášení v horní liště.
- Přihlaste se jako klient a klikněte na odhlášení v klientském portálu.
- Přihlaste se jako terapeut a klikněte na odhlášení v terapeutickém portálu.
- 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:
- Současně se přihlaste jako administrátor.
- Současně se přihlaste jako klient.
- Současně se přihlaste jako terapeut.
- 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:
- Přihlaste se jako finanční uživatel.
- Přihlaste se jako uživatel bez finančního oprávnění.
- 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:
- V administraci zaměstnaneckých účtů odešlete passkey pozvánku novému zaměstnanci.
- Dokončete nastavení passkey z pozvánky.
- Ověřte přihlášení.
- Spusťte recovery pozvánku se zneplatněním starých passkeys.
- 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:
- Vytvořte terapeuta.
- Povolte mu přístup do terapeutského portálu.
- Přihlaste se jeho účtem pomocí passkey.
- 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:
- Vytvořte nový zaměstnanecký účet.
- Nastavte mu roli
klientske,financeaadmin-klientske. - Odešlete passkey pozvánku.
- Upravte účet a zkontrolujte změnu dostupné navigace.
- 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:
- Založte klienta s e-mailem.
- Založte klienta s telefonem.
- Ověřte přihlášení existujícího klienta e-mailem.
- Ověřte registraci nového klienta e-mailem.
- 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:
- Vytvořte termín.
- Přesuňte termín.
- Prodlužte termín.
- Smažte termín.
- Vytvořte opakovaný termín.
- Vytvořte blokaci.
- 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:
- V klientské části vytvořte rezervaci.
- Zkontrolujte ji v administraci.
- 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:
- Zrušte včasnou rezervaci.
- Zrušte pozdní rezervaci.
- Ověřte variantu s vrácením peněz.
- Ověřte variantu bez vrácení peněz.
- Vyzkoušejte vrácení na kredit.
- 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:
- Po vytvoření termínu v administraci otevřete dialog platby.
- Ověřte nabídku balíček, kredit, výzva k platbě a platba na místě.
- U platby na místě zadejte externí ID platby / číslo pokladního dokladu a ověřte, že bez něj platbu nelze uložit.
- Ověřte, že skutečná platba kartou přes bránu se v tomto scénáři neprovádí.
- 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:
- Vytvořte novou rezervaci a ověřte notifikaci terapeutovi.
- Odešlete výzvu k platbě.
- Přesuňte existující termín.
- Zrušte termín.
- 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:
- Otevřete veřejný odkaz na doklad
/invoice. - Otevřete veřejný odkaz na storno poplatek
/storno. - Otevřete návratovou stránku platby
/payment-returns 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:
- Přihlaste existujícího klienta e-mailem a jednorázovým kódem.
- Zadejte neplatný e-mailový kód.
- Vyžádejte si nový e-mailový kód a ověřte, že lze pokračovat bez refreshu.
- Vytvořte nového klienta přes registrační e-mailový kód.
- Vyplňte profil včetně telefonu.
- Ověřte telefon SMS kódem při dokončení registrace.
- 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:
- Jako nový klient založte rezervaci bez absolvovaného prvního termínu.
- Prověřte nabídku balíčku.
- Prověřte nabídku kreditu.
- 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:
- Ověřte platební informace u rezervace.
- Zrušte rezervaci včas.
- Zrušte rezervaci po lhůtě.
- Otevřete detail klienta.
- 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:
- V klientském portálu kupte testovací balíček.
- V administraci vystavte testovací voucher na službu, která má povolené vystavení voucheru.
- 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:
- Přihlaste klienta.
- Obnovte stránku a ověřte, že klient zůstane přihlášený.
- Klikněte na odhlášení.
- Obnovte stránku.
- 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:
- Přepněte klientský portál do češtiny.
- Přepněte klientský portál do angličtiny.
- 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:
- Otevřete terapeutický portál.
- Přihlaste se jako terapeut pomocí passkey.
- 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:
- Přihlaste terapeuta do portálu.
- Obnovte stránku a ověřte zachování relace.
- Klikněte na odhlášení.
- Obnovte stránku a otevřete
/TherapistPortalznovu.
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:
- Nastavte online dostupnost.
- Vytvořte online termín.
- 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:
- Vytvořte osobní termín.
- 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:
- Ověřte, které výkony smí terapeut klientovi nabídnout.
- 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:
- Připravte pojišťovací službu.
- Připravte oprávněného klienta.
- Vytvořte rezervaci v administraci.
- 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:
- Po začátku termínu označte „Nedostavil se (pojišťovna)“.
- 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:
- Otevřete odkaz z e-mailu.
- Ověřte storno
1 000 Kč. - U stejné rezervace zkuste výzvu odeslat znovu.
- 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:
- V administraci vytvořte voucher na službu, která má povolené vystavení voucheru.
- Otevřete náhled QR kódu.
- Zkopírujte odkaz pro klienta.
- 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:
- Otevřete odkaz voucheru
/redeem?code=.... - Vyberte terapeuta, datum a čas.
- Dokončete rezervaci.
- 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:
- Otevřete Platby.
- Nastavte datum Od-Do.
- 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:
- S aktivními filtry stáhněte CSV.
- 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:
- V detailu klienta otevřete platby a doklady.
- 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:
- Vyexportujte celkový přehled.
- Vyexportujte souhrn podle ordinací.
- Vyexportujte souhrn podle terapeutů.
- Vyexportujte detail proběhlých terapií.
- 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:
- U scénářů, které mají odesílat potvrzení, pozvánku, výzvu ke storno poplatku nebo doklad, ověřte příjem e-mailu.
- 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:
- Vypněte informační SMS v nastavení notifikací.
- Ověřte, že šablonové informační SMS neodejdou.
- 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:
- Změňte rezervaci, stav či kalendář v jednom okně.
- 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.