Sobes.tech
Junior — Middle

Proqram təminatının yoxlanma prosesi ekran görüntüləri vasitəsilə necə həyata keçirilir?

sobes.tech Süni İntellekt

AI-dan cavab

Proqram təminatının ekran görüntüləri ilə yoxlanması, tətbiqin istifadə interfeysinin hazırkı görünüşünün referens şəkli ilə müqayisə olunduğu vizual test metodudur. Bu yanaşma, vizual geriyə dönüşləri aşkar etmək üçün tez-tez istifadə olunur.

Proses adətən aşağıdakı mərhələləri əhatə edir:

  1. Müəyyən ekranların və ya komponentlərin avtomatik və ya əl ilə ekran görüntülərinin alınması.
  2. Doğru sayılan referens şəkillərinin saxlanması.
  3. Sonrakı testlərdə, eyni elementin yeni ekran görüntüsü çəkilir.
  4. Yeni ekran görüntüsü, xüsusi alətlər vasitəsilə referens ilə müqayisə edilir (məsələn, piksel səviyyəsində fərqlər).
  5. Əgər fərqlər müəyyən edilmiş sərhədi aşarsa, test uğursuz sayılır və vizual dəyişikliklər analiz edilir.

Python və Selenium və Pillow kitabxanaları ilə avtomatlaşdırma nümunəsi:

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  # Fərqlər mövcuddur
    return True  # Ekran görüntüləri uyğun gəlir

# Testdə ekran görüntüsü alınır və müqayisə edilir
browser = webdriver.Chrome()
browser.get('https://example.com')
browser.save_screenshot('current.png')

if not compare_screenshots('baseline.png', 'current.png'):
    print('Vizual dəyişikliklər aşkar edildi!')
else:
    print('Vizual uyğunluq təsdiqləndi.')

browser.quit()

Bu şəkildə, ekran görüntüləri ilə yoxlama, görünüş və UI elementlərinin idarə olunmasına kömək edir, xüsusən dizayn dəyişiklikləri və brauzerlararası testlər zamanı faydalıdır.