QA The Other Wayხარისხის უზრუნველყოფა AI-ის მიერ დაწერილი ტესტების ეპოქაში. QA The Other Way.
პრაქტიკული QA

სემანტიკური სნეპშოტი არ არის ხელმისაწვდომობის სერტიფიკატი.

გამოიყენეთ პატარა ARIA სნეპშოტი სტრუქტურული რეგრესიების დასაჭერად, შემდეგ შეამოწმეთ ქცევა და ხელმისაწვდომობა ამ შაბლონის მიღმა.

7 კითხვა: წუთიQA The Other Way
ავტორის სემანტიკური ხის დიაგრამა, რომელიც აკავშირებს რეგიონს, სათაურს და ღილაკს.
დაწერილი სარედაქციო ილუსტრაცია.
საილუსტრაციო ვიდეო ამ სტატიისთვის. ინგლისური ტექსტი ეკრანზე; აირჩიეთ სუბტიტრები ამ ენისთვის.

ნათარგმნი გამოცემა. ტექნიკური იდენტიფიკატორები რჩება თავდაპირველ ფორმაში.

გამოიყენეთ პატარა ARIA სნეპშოტი სტრუქტურული რეგრესიების დასაჭერად, შემდეგ შეამოწმეთ ქცევა და ხელმისაწვდომობა ამ შაბლონის მიღმა.
საილუსტრაციო ადგილობრივი დემო. არ არის რეალური ანგარიში, მომხმარებლის მონაცემები ან გამყიდველის ინტერფეისი.

შეკვეთის ხელახალი დიზაინი უფრო სუფთად გამოიყურება. მისი სათაური ხდება სტილისტური div და Continue ღილაკი კარგავს თავის სასარგებლო სახელს. სკრინშოტის შედარებამ შეიძლება დაამტკიცოს გარეგნობა, ხოლო სემანტიკური ცვლილება აკლია. ARIA სნეპშოტს შეუძლია ეს სტრუქტურა ხილული გახადოს, მაგრამ მწვანე სნეპშოტი არ ადასტურებს, რომ მთელი გამოცდილება ხელმისაწვდომია.

ეს სახელმძღვანელო იყენებს Playwright's ARIA snapshot documentation მცირე სემანტიკური კონტრაქტის შესაქმნელად. თანმხლები ეკრანი ადგილობრივი გამოგონილი ფორმაა. ის ასახავს სათაურის და ღილაკების ურთიერთობას და არა კლიენტის ტესტირებას ან ხელმისაწვდომობის სრულ აუდიტს.

დაიწყეთ რეგიონით, რომლის ახსნაც შეგიძლიათ

Playwright აღწერს ARIA სნეპშოტებს, როგორც ხელმისაწვდომი სტრუქტურის YAML წარმოდგენებს. როლები, სახელები და შერჩეული ატრიბუტები მოდის HTML სემანტიკიდან ან ARIA-დან. შაბლონი არის შეზღუდვა; ეს სულაც არ არის ხელმისაწვდომობის ხეში არსებული ყველაფრის სრული სერიალიზაცია.

კონტროლირებადი დემო რეგიონისთვის სათაურით და ღილაკით, ჩეკი შეიძლება იყოს საკმარისად მცირე, რომ წაიკითხოთ მიმოხილვა:

await expect(page.getByRole('region', { name: 'Demo checkout' }))
  .toMatchAriaSnapshot(`
- heading "Review order" [level=2]
- button "Continue"
  `);

მაგალითი ვარაუდობს, რომ აპლიკაცია ავლენს დასახელებულ რეგიონს და ამ კონტროლს. ეს არ ქმნის მათ. შეინახეთ ფარგლები ვიწრო და სახელები მიბმული მომხმარებლის დანიშნულ ამოცანასთან. გიგანტურ სრულ გვერდიან კადრს შეუძლია მნიშვნელოვანი განსხვავება ჩააფაროს შეუსაბამო ნავიგაციასა და ქვედა კოლონტიტულის ცვლილებებს შორის.

წაიკითხეთ რას ტოვებს შაბლონი

დოკუმენტაცია განმარტავს, რომ სახელები არის რეგისტრირებული ასოების მიმართ, თეთრი სივრცე ნორმალიზებულია და შეკვეთის საკითხები. სახელის ან ატრიბუტის გამოტოვება ნაწილობრივ შესატყვისს იძლევა. ეს მოქნილობა სასარგებლოა შეუსაბამო დინამიური დეტალებისთვის, მაგრამ ის ასევე ხსნის შეზღუდვებს, რომლებმაც შეიძლება დაიცვან გამოცდილება.

შაბლონი, რომელიც ამბობს მხოლოდ ღილაკს, შეიძლება კვლავ გაიაროს მას შემდეგ, რაც გაგრძელება გახდება არასასარგებლო ლეიბლი. მოსანიშნი ველი შემოწმებული მდგომარეობის შეზღუდვის გარეშე შეიძლება გაიაროს ნებისმიერ მდგომარეობაში. დაწერეთ, რატომ არის თითოეული გამოტოვება უსაფრთხო. თუ ხელმისაწვდომ სახელს ან მდგომარეობას მნიშვნელობა აქვს მოგზაურობისთვის, შეინახეთ იგი ხელშეკრულებაში ან დაამატეთ ორიენტირებული მტკიცება.

მოერიდეთ ყოველი შემთხვევითი სიტყვის საბაზისო მოთხოვნად თარგმნას. ლოკალიზებულ ინტერფეისს შეიძლება ჰქონდეს ლეგიტიმური სახელები, რომლებიც განსხვავდება ენის მიხედვით. მკაფიოდ აირჩიეთ ტესტის ლოკალი და გადახედეთ მის მოსალოდნელ ტექსტს. შეინახეთ ამოცანის განზრახვა შემოწმების შესუსტების ნაცვლად, სანამ ყველა ენა არ გაივლის.

სემანტიკური განსხვავება იმსახურებს პროდუქტის მიმოხილვას

როდესაც სნეპშოტი ვერ ხერხდება ხელახალი დიზაინის შემდეგ, შეამოწმეთ ცვლილება მოსალოდნელი YAML-ის განახლებამდე. სათაურის დონე განზრახ შეიცვალა? წაიშალა დასახელებული რეგიონი? ღილაკი კვლავ აღწერს მის მოქმედებას? საბაზისო განახლება აღრიცხავს ახალ მოლოდინს; ეს არ ხსნის, რატომ არის ეს მოლოდინი სწორი.

შეინახეთ განსხვავება შესაბამისი დიზაინის ან პროდუქტის გადაწყვეტილებასთან ერთად. თუ ცვლილება გაუთვალისწინებელია, დააფიქსირეთ ინტერფეისი. თუ ეს გამიზნულია, განაახლეთ ყველაზე პატარა დაზიანებული შაბლონი და შეინახეთ მიზეზი. არ მიიღოთ ფართო ახალი სნეპშოტი მხოლოდ CI მწვანედ.

ლოკალური დემოსთვის, Continue ღილაკის შეცვლა უსახელო ვიზუალური კონტროლით უნდა იყოს გამოვლენილი არჩეული კონტრაქტით. ეს უარყოფითი შემოწმება გვეხმარება იმის ჩვენებაში, თუ რას იცავს მტკიცება. ეს ჯერ კიდევ არ ამტკიცებს, რომ ყველა შესაძლო რეგრესია დაფარულია. ფარგლები არის არჩეული რეგიონი და შაბლონი და არა მთელი საიტი.

სტრუქტურა არის ხელმისაწვდომობის მტკიცებულების ერთი ფენა

შესატყვისი ხე არ ადგენს წასაკითხად კონტრასტს, გამოსაყენებელ ფოკუსს, კლავიატურის დასრულებას, გონივრული შეცდომებს ან ეკრანის წაკითხვის კარგ გამოცდილებას. გამოიყენეთ ცალკე შემოწმებები ამ რისკებისთვის. Playwright-ის წვდომის ტესტირების სახელმძღვანელო აღწერს ავტომატურ სკანირებას და მის საზღვრებს; საჭიროების შემთხვევაში, ავტომატურ შემოწმებებს თან უნდა ახლდეს ხელით შეფასება.

ამ მცირე ნაკადისთვის, ქცევის ტესტმა უნდა გაააქტიუროს გაგრძელება და გადაამოწმოს დაგეგმილი შემდეგი მდგომარეობა. კლავიატურის შემოწმებამ უნდა დაადგინოს, რომ მომხმარებლებს შეუძლიათ წვდომა და გამოიყენონ სამართავები მაჩვენებლის გარეშე. ვიზუალურმა მიმოხილვამ უნდა შეამოწმოს რეალურად გაწეული ტექსტი და განლაგება. ეს არის დამატებითი მტკიცებულება და არა თვისებები, რომლებიც ავტომატურად მიიღება YAML-დან.

დაასახელეთ შედეგები ზუსტად. დემო გადახდა ემთხვევა არჩეულ სემანტიკურ შაბლონს დასაცავი განცხადებაა. გადახდა ხელმისაწვდომია ბევრად უფრო დიდი პრეტენზიაა, რომელიც მეტ მტკიცებულებას მოითხოვს. დასახელების ეს დისციპლინა ეხმარება პატარა QA გუნდს დაიცვას მნიშვნელოვანი კონტრაქტები შეცდომაში შემყვანი სერთიფიკატის სამკერდე ნიშნის შექმნის გარეშე.

AnyTest აღწერს აგენტებს, რომლებიც იკვლევენ აპლიკაციებს და ქმნიან ბოლომდე ტესტებს ადამიანის განსახილველად. მიმომხილველს შეუძლია გამოიყენოს ეს სახელმძღვანელო, რათა ჰკითხოს, თუ რომელ სტრუქტურასა და ქცევას ამოწმებს გენერირებული მოგზაურობა. აქ არ არის დამტკიცებული კონკრეტული ARIA სნეპშოტი ან ხელმისაწვდომობის ინტეგრაცია AnyTest-ში. სარგებელი არის იკითხებადი სემანტიკური საზღვარი, რომელიც გადარჩება ხელახალი დიზაინის დროს და რჩება გულწრფელი იმის შესახებ, რაც არ არის გამოცდილი.

საერთო კითხვები

ადასტურებს თუ არა გადასასვლელი სნეპშოტი ხელმისაწვდომობას?

არა. ის ადგენს მხოლოდ არჩეულ სემანტიკურ შეზღუდვებს; ქცევა, კლავიატურა, ვიზუალური და ხელით შემოწმება ცალკე რჩება.

უნდა განაახლოს თუ არა ყველა განსხვავება საბაზისო ხაზს?

არა. გადახედეთ არის თუ არა სემანტიკური ცვლილება განკუთვნილი მოსალოდნელი შაბლონის შეცვლამდე.

წყაროები