Sobes.tech
Junior — Middle

Ինչպե՞ս է իրականացվում ծրագրային ապահովման ստուգման գործընթացը սքրինշոթերի միջոցով։

sobes.tech AI

Պատասխան AI-ից

Ծրագրային ապահովման ստուգումը էկրանային լուսանկարների միջոցով՝ դա տեսողական փորձարկման մեթոդ է, որի ժամանակ կիրառության ինտերֆեյսի ներկայիս տեսքը համեմատվում է ռեֆերանսային պատկերով։ Այս մոտեցումը հաճախ օգտագործվում է տեսողական ռեգրեսիաները հայտնաբերելու համար։

Ընթացիկը սովորաբար ներառում է հետևյալ քայլերը՝

  1. Ավտոմատ կամ ձեռքով որոշակի էկրանների կամ բաղադրիչների էկրանային լուսանկարների գրանցում։
  2. Ռեֆերանսային պատկերների պահպանում, որոնք համարվում են ճիշտ։
  3. Հաջորդ փորձարկումներում նոր լուսանկար է կատարվում նույն տարրից։
  4. Նոր լուսանկարը համեմատվում է ռեֆերանսային պատկերով հատուկ գործիքների միջոցով, որոնք հայտնաբերում են տարբերությունները (օրինակ՝ պիքսելային մակարդակում)։
  5. Եթե տարբերությունները գերազանցում են սահմանված շեմը, փորձարկումը համարվում է ձախողված, և տեսողական փոփոխությունները վերլուծվում են։

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 տարրերը, հատկապես դիզայնի փոփոխությունների կամ բրաուզերների միջև փորձարկումների ժամանակ։