Κάτι νέο ετοιμάζεται για το AliveGR: μια σωστή αυτοματοποιημένη σουίτα δοκιμών (test suite). Δεν είναι ακόμα εδώ — αλλά έρχεται, και θα αλλάξει το πόσο γρήγορα αναπτύσσεται και διορθώνεται αυτό το πρόσθετο. Ιδού γιατί έχει σημασία και τι θα καλύπτει.

Το πρόβλημα που λύνει

Οι ελληνικοί ιστότοποι streaming αλλάζουν τη δομή τους διαρκώς — μερικές φορές κάθε βδομάδα. Μέχρι τώρα, αυτό το μαθαίναμε από αναφορά χρήστη «το κανάλι Χ δεν παίζει», και ακολουθούσε ο αργός κύκλος: άνοιγμα Kodi, κλικ στα μενού, αναπαραγωγή του σφάλματος, διάβασμα log, εικασία, patch, χειροκίνητη επανεξέταση. Και κάθε βιαστική διόρθωση κινδύνευε να χαλάσει άλλα δύο πράγματα, γιατί τίποτα δεν επιβεβαίωνε ότι τα υπόλοιπα δουλεύουν ακόμα.

Μια σουίτα δοκιμών μετατρέπει αυτόν τον κύκλο από λεπτά κλικ σε δευτερόλεπτα: τρέχεις και βλέπεις κόκκινο ή πράσινο.

Τι θα καλύπτει

  • Δοκιμές παλινδρόμησης των scrapers: αποθηκευμένα αντίγραφα πραγματικών σελίδων ως fixtures, ώστε όταν η ΕΡΤ, το MEGA, ο ANT1 ή μια πύλη VOD αλλάξει διάταξη, το σπάσιμο να φαίνεται ως αποτυχημένη δοκιμή — πριν την κυκλοφορία, όχι μετά.
  • Λογική επιλυτών και εναλλακτικών ροών: επιλογή ροής, μόνιμες προτιμήσεις και σιωπηλή εναλλαγή, όλα ελεγμένα χωρίς πρόσβαση στο δίκτυο.
  • Αναζήτηση και μεταγραφή: η αντιστοίχιση ελληνικών/Greeklish (mega → MEGA, ερτ → ERT) καρφωμένη, ώστε τα refactor να μην τη σπάνε σιωπηλά.
  • Αντιστοίχιση playlist και EPG: η γέφυρα IPTV Simple Client και η αντιστοίχιση καναλιών επαληθευμένες έναντι γνωστών-σωστών εξόδων.
  • Χωρίς να χρειάζεται Kodi: τα modules xbmc του Kodi προσομοιώνονται (mock), οπότε όλη η σουίτα τρέχει σε απλό μηχάνημα ή σε CI — χωρίς γραφικό περιβάλλον, χωρίς box, χωρίς συσκευή Android για να πιαστεί μια παλινδρόμηση.

Πώς επιταχύνει την ανάπτυξη

  • Refactor με αυτοπεποίθηση. Ο εκσυγχρονισμός 3.x άγγιξε σχεδόν τα πάντα· οι δοκιμές σημαίνουν ότι η επόμενη μεγάλη εκκαθάριση δεν θα βασίζεται στην τύχη.
  • Το CI ελέγχει κάθε αλλαγή. Χαλάς έναν scraper, και η αποτυχία φαίνεται στο commit — όχι μια βδομάδα μετά στο issue tracker.
  • Ταχύτερη διαλογή. Το «το κανάλι Χ δεν παίζει» γίνεται: αποθήκευση σελίδας, προσθήκη ως fixture, η δοκιμή αποτυγχάνει, διόρθωση, η δοκιμή περνά. Αναπαραγώγιμο από τον καθένα, όχι μόνο στο setup του συντηρητή.
  • Ταιριάζει με τη ροή AI. Η μηχανή ήδη αναλαμβάνει το βαρετό 80%· μια σουίτα δοκιμών δίνει σε εκείνη (και σε εμένα) άμεση ετυμηγορία για κάθε αλλαγή.

Κατάσταση

Υπό κατασκευή, θα προσγειωθεί μαζί με τη σταθεροποίηση του 3.0.0. Αν θέλετε να βοηθήσετε — σελίδες fixtures για χαλασμένες πηγές, οριακές περιπτώσεις, περίεργο markup — ανοίξτε θέμα στα GitHub Discussions. Όσα περισσότερα πραγματικά δείγματα, τόσο δυνατότερο το δίχτυ.