Junior — Middle
Πώς πραγματοποιείται η διαδικασία ελέγχου του λογισμικού με τη βοήθεια στιγμιότυπων οθόνης;
sobes.tech AI
Απάντηση από AI
Ο έλεγχος λογισμικού μέσω στιγμιότυπων οθόνης είναι μια μέθοδος οπτικής δοκιμής κατά την οποία η τρέχουσα εμφάνιση του περιβάλλοντος χρήστη της εφαρμογής συγκρίνεται με μια εικόνα αναφοράς. Αυτή η προσέγγιση χρησιμοποιείται συχνά για την ανίχνευση οπτικών παλινδρομήσεων.
Η διαδικασία περιλαμβάνει συνήθως τα εξής βήματα:
- Αυτόματη ή χειροκίνητη λήψη στιγμιότυπων οθόνης συγκεκριμένων οθονών ή συστατικών της εφαρμογής.
- Αποθήκευση των εικόνων αναφοράς, που θεωρούνται σωστές.
- Σε μελλοντικές δοκιμές, λαμβάνεται ένα νέο στιγμιότυπο της ίδιας στοιχείου.
- Συγκρίνετε το νέο στιγμιότυπο με το αναφορά χρησιμοποιώντας ειδικά εργαλεία που ανιχνεύουν διαφορές (π.χ., σε επίπεδο pixel).
- Εάν οι διαφορές υπερβαίνουν ένα καθορισμένο όριο, η δοκιμή θεωρείται αποτυχημένη και αναλύονται οι οπτικές αλλαγές.
Παράδειγμα χρήσης σε αυτοματοποίηση με Python και τις βιβλιοθήκες Selenium και Pillow:
from selenium import webdriver
from PIL import Image, ImageChops
def compare_screenshots(img1_path, img2_path):
img1 = Image.open(img1_path)
img2 = Image.open(img2_path)
diff = ImageChops.difference(img1, img2)
if diff.getbbox():
return False # Υπάρχουν διαφορές
return True # Τα στιγμιότυπα ταιριάζουν
# Στη δοκιμή, λαμβάνεται ένα στιγμιότυπο και συγκρίνεται
browser = webdriver.Chrome()
browser.get('https://example.com')
browser.save_screenshot('current.png')
if not compare_screenshots('baseline.png', 'current.png'):
print('Εντοπίστηκαν οπτικές αλλαγές!')
else:
print('Επιβεβαιώθηκε οπτική συμφωνία.')
browser.quit()
Με αυτόν τον τρόπο, ο έλεγχος με στιγμιότυπα οθόνης βοηθά στον έλεγχο της εμφάνισης και των στοιχείων UI, και είναι ιδιαίτερα χρήσιμος σε αλλαγές σχεδίασης ή δοκιμές σε διαφορετικούς περιηγητές.