mirror of
https://codeberg.org/Kankys/doxa.git
synced 2026-11-11 14:44:36 +01:00
136 lines
4.5 KiB
Markdown
136 lines
4.5 KiB
Markdown
# SEO a Playwright Testy - Audit a Plán Zlepšení
|
|
|
|
## Problémy Identifikované
|
|
|
|
### 🔴 SEO - Web (doxa-notes.org)
|
|
|
|
#### Kritické problémy:
|
|
1. **Chybějící Open Graph obrázek v index.html**
|
|
- `og:image` není specifikován, pouze Twitter image
|
|
- Bez OG image se socmédia nezobrazí korektně
|
|
|
|
2. **Chybějící meta tags pro mobily**
|
|
- Chybí `viewport` meta tag (nemá měřítko a zoomu)
|
|
- Dopad: špatné zobrazení na mobilech, horší SEO ranking
|
|
|
|
3. **Nejednotný formát title tagů**
|
|
- index.html: "DOXA Notes — Local-First poznámky..."
|
|
- about.html: "O projektu — Doxa" (bez "DOXA Notes")
|
|
- privacy.html: "Ochrana soukromí — DOXA Notes"
|
|
- Nejednotnost není ideální, měly by být konsistentní
|
|
|
|
4. **Chybí meta description na web_app/index.html**
|
|
- Web app má `robots: noindex, nofollow` (správně)
|
|
- Ale chybí base meta description, jen title
|
|
|
|
5. **Canonical URL - web_app/index.html**
|
|
- Chybí canonical tag na app stránce (jen na webu)
|
|
|
|
6. **Nejednotné sociální meta tags**
|
|
- O projektu a privacy nemají OG image, Twitter image
|
|
- Neúplné Twitter card metadata
|
|
|
|
7. **Missing lang attribute na web_app**
|
|
- web_app/index.html má `lang="cs"`, ale chybí OG locale
|
|
|
|
8. **robots.txt nedostatky**
|
|
- Sitemap odkazuje jen na wiki, ne na hlavní web
|
|
- Chybí explicit allow/disallow pro jednotlivé web stránky
|
|
|
|
### 🔴 SEO - Web App
|
|
|
|
1. **robots.txt správně blokuje web_app (noindex)**
|
|
- Správně: `Disallow: /web_app/`
|
|
|
|
2. **Chybějící Open Graph metadata**
|
|
- Není `og:*` tags vůbec
|
|
- Twitter card není definován
|
|
|
|
3. **Nedostatečný JSON-LD schema**
|
|
- Na web_app není vůbec strukturovaná data
|
|
- Jen na index.html SoftwareApplication schema
|
|
|
|
### 🔴 Playwright Testy - Problémy
|
|
|
|
1. **Chybí test pro Web App SEO**
|
|
- noteApp.test.ts nemá žádné SEO testy
|
|
- Měl by testovat noindex/nofollow, title, meta description
|
|
|
|
2. **Chybí testy pro OG tagy**
|
|
- HomePage.ts nemá metodu `getOGImage()`, `getOGTitle()`
|
|
- Chybí testy pro Twitter card
|
|
|
|
3. **Nevyhovující test abecedy menu**
|
|
- textHelpers nemá "Návod" v menu (ale existuje na webu)
|
|
- Neúplný seznam očekávaných textů
|
|
|
|
4. **Chybí accessibility testy (a11y)**
|
|
- Žádné testy pro ARIA labels, heading struktura
|
|
- Nejednotné heading struktura (h1, h2, h3)
|
|
|
|
5. **Chybí performance/lighthouse testy**
|
|
- Žádné testy pro load time, Core Web Vitals
|
|
- Žádné testy pro lazy loading obrázků
|
|
|
|
6. **Playwright config - omezený scope**
|
|
- Jen chromium, chybí firefox, webkit
|
|
- Reporter je jen HTML, žádné JSON/JUnit
|
|
|
|
7. **Chybí testy pro 404/error stránky**
|
|
- Žádné testy pro chybové strany
|
|
- Žádné testy pro chybné CSS/JS asety
|
|
|
|
8. **AppPage POM - nedostatečné selektory**
|
|
- Závisí na ID selektorech, měly by být odolnější
|
|
- Chybí error handling v navigate()
|
|
|
|
9. **Chybí data-testid atributy**
|
|
- HTML nemá `data-testid` pro stabilní test selektory
|
|
- Zranitelné na změny CSS/stylů
|
|
|
|
10. **Testy neuklízí state**
|
|
- Testy nevymazávají localStorage mezi spuštěním
|
|
- Chybí cleanup po testech
|
|
|
|
## Pracovní Plán
|
|
|
|
### Fáze 1: SEO Optimalizace (Primární)
|
|
- [ ] Přidat meta viewport tag do všech HTML
|
|
- [ ] Přidat Open Graph obrázek do všech stran
|
|
- [ ] Unifikovat title tagy podle formátu
|
|
- [ ] Doplnit meta descriptions na chybějící stránky
|
|
- [ ] Přidat OG locale pro Czech
|
|
- [ ] Doplnit Twitter Card tagy na všechny stránky
|
|
- [ ] Vytvořit sitemap.xml pro web (ne jen wiki)
|
|
- [ ] Zlepšit robots.txt
|
|
|
|
### Fáze 2: Web App Metadata
|
|
- [ ] Přidat OG tagy na web_app (s noindex varováním)
|
|
- [ ] Přidat JSON-LD schema pro WebApplication
|
|
- [ ] Ověřit noindex direktiva na web_app
|
|
|
|
### Fáze 3: Playwright Testy - SEO
|
|
- [ ] Přidat testy pro OG metadata
|
|
- [ ] Přidat testy pro Twitter Card
|
|
- [ ] Přidat testy pro meta descriptions
|
|
- [ ] Vytvořit SEO utility metody v HomePage.ts
|
|
- [ ] Vytvořit Web App SEO testy
|
|
|
|
### Fáze 4: Playwright Testy - Rozšíření
|
|
- [ ] Přidat a11y testy (ARIA, heading struktura)
|
|
- [ ] Přidat testy pro mobile viewport
|
|
- [ ] Přidat Firefox a WebKit do playwright.config
|
|
- [ ] Přidat data-testid atributy do HTML
|
|
- [ ] Přidat AppPage testy pro error states
|
|
- [ ] Přidat cleanup/setup hooks
|
|
|
|
### Fáze 5: Další Vylepšení
|
|
- [ ] Přidat lighthouse integration testy
|
|
- [ ] Přidat JSON reporter k playwright
|
|
- [ ] Přidat CI/CD integration
|
|
|
|
## Poznámky
|
|
- Zaměření primárně na SEO (dle požadavku)
|
|
- Web vs Web App: Web je SEO friendly, App je noindex (správně)
|
|
- Playwright testy potřebují kompletní refresh
|