पॉइंटर और मोशन एक्सेसिबिलिटी

Pointer और motion accessibility इस बारे में है कि लोग पेज को कैसे चलाते हैं: mouse, उँगली या stylus से, या device को ख़ुद हिलाकर। WCAG 2.2 इसके नियमों को guideline 2.5 Input Modalities के तहत रखता है, और साथ में 1.3.4 Orientation। विचार हर जगह एक ही है: जिस function के लिए दो उँगलियों से pinch, swipe, drag या device को shake करना पड़ता है, वह एक साधारण tap या click से भी चलना चाहिए; गलती से हुआ touch cancel किया जा सके; और content portrait और landscape दोनों में काम करे।

एक ठोस उदाहरण: एक to-do app में tasks का क्रम सिर्फ़ drag करके बदला जा सकता है। हाथ में कंपन (tremor) वाला व्यक्ति जो mouse इस्तेमाल करता है, या head pointer इस्तेमाल करने वाला व्यक्ति, भरोसे से click तो कर सकता है, लेकिन हो सकता है कि बटन दबाए रखते हुए pointer को किसी सटीक जगह तक न ले जा पाए। दो छोटे बटन, Move up और Move down, वही function single clicks से उपलब्ध करा देते हैं।

यह क्यों ज़रूरी है

जब कोई function सिर्फ़ किसी gesture के पीछे हो, तो जो लोग वह gesture नहीं कर सकते वे पूरा function खो देते हैं, सिर्फ़ कोई सुविधा नहीं। इनमें tremor या हाथों की सीमित पकड़ वाले लोग, एक उँगली या mouth stick से screen छूने वाले लोग, eye tracking या head pointer इस्तेमाल करने वाले लोग, और वे लोग शामिल हैं जिनका tablet wheelchair पर एक तय orientation में लगा है। गलती से हुआ activation भी नुकसान करता है: अगर Delete उँगली के screen छूते ही चल जाए, तो एक चूक data मिटा देती है।

Product के लिए, ये सभी criteria WCAG 2.2 Level AA conformance के लिए ज़रूरी हैं, यानी उस level के लिए जिसे ज़्यादातर organisations और contracts लक्ष्य बनाते हैं, और 2.5.7 Dragging Movements 2.2 में नया है, इसलिए WCAG 2.1 के आधार पर approve हुए designs शायद कभी इसके लिए जाँचे ही नहीं गए। Tester के लिए ये defects आसानी से छूट जाते हैं: desktop पर mouse से, या आपके अपने phone पर, gesture आपके लिए काम करता है। आपको जानबूझकर उन लोगों के लिए टेस्ट करना होता है जो वह gesture नहीं कर सकते।

Pointer gestures और pointer cancellation (2.5.1, 2.5.2)

2.5.1 Pointer Gestures (Level A) multipoint gestures को कवर करता है, जिनमें एक साथ दो या ज़्यादा उँगलियाँ चाहिए (zoom के लिए pinch, two-finger swipe), और path-based gestures को, जिनमें सिर्फ़ शुरुआत और अंत नहीं बल्कि movement का रास्ता मायने रखता है (किसी तय दिशा में swipe, कोई shape बनाना)। ऐसा हर function single pointer से, बिना path के, भी चलना चाहिए: tap, click, double tap या long press। Pinch-to-zoom वाला map pass होता है अगर उसमें + और − बटन भी हों; सिर्फ़ swipe से चलने वाला carousel fail होता है। अपवाद वह gesture है जो essential हो, जैसे अपना signature बनाना, जहाँ path ही input है; लेकिन अगर drawing सिर्फ़ किसी बात की स्वीकृति के लिए है, तो एक बटन काफ़ी है, इसलिए वह essential नहीं। यह criterion सिर्फ़ उन gestures पर लागू होता है जिन्हें पेज ख़ुद interpret करता है: browser का अपना pinch zoom और screen reader के gestures इसके दायरे से बाहर हैं।

2.5.2 Pointer Cancellation (Level A) गलती से होने वाले activation से बचाता है। Single pointer से चलने वाले हर function के लिए इनमें से कम से कम एक बात सही होनी चाहिए: down-event (जिस पल बटन या उँगली नीचे जाती है) function का कोई हिस्सा नहीं चलाता; function up-event पर पूरा होता है और पूरा होने से पहले abort या बाद में undo किया जा सकता है; up-event, down-event के हर असर को उलट देता है; या down-event पर पूरा होना essential है। Native buttons और links पहले से सही व्यवहार करते हैं: click छोड़ने के बाद fire होता है, इसलिए दबाना, control से बाहर खिसकना और छोड़ना कुछ नहीं करता। Defect तब आता है जब developer action को pointerdown, mousedown या touchstart से जोड़ देता है। On-screen keyboard या keypad की key दबाना essential माना जाता है।

  • Gestures: feature के हर swipe, pinch, two-finger और drawing interaction की list बनाएँ, फिर हर एक का single-pointer तरीका खोजें और उसे सच में इस्तेमाल करें।
  • Cancellation: action करने वाले हर control पर दबाएँ, pointer या उँगली को उससे बाहर ले जाएँ और छोड़ें; कुछ नहीं होना चाहिए। Delete और payment actions से शुरू करें।
  • Drag and drop भी गिना जाता है: down-event पर item उठ जाना ठीक है, बशर्ते उसे किसी drop target के बाहर छोड़ने से move cancel हो जाए।
// Defect (2.5.2): the item is deleted the moment the pointer goes down
deleteButton.addEventListener('pointerdown', deleteItem);

// Expected: click fires after release, and not if the pointer slid off the button
deleteButton.addEventListener('click', deleteItem);

Dragging movements और target size (2.5.7, 2.5.8)

2.5.7 Dragging Movements (Level AA) WCAG 2.2 में नया है। Dragging movement का मतलब है किसी element पर दबाना, pointer को हिलाना और किसी दूसरे point पर छोड़ना, जहाँ सिर्फ़ शुरुआत और अंत के points मायने रखते हैं: list का क्रम बदलना, card को columns के बीच ले जाना, slider का thumb खिसकाना, map को pan करना। ऐसे हर function के लिए एक तरीका चाहिए जो single pointer actions से, बिना drag के, चले, जब तक dragging essential न हो या व्यवहार browser ख़ुद देता हो और author ने उसे न बदला हो।

ध्यान दें कि क्या नहीं गिना जाता: keyboard support। Arrow keys पर चलने वाला slider 2.1.1 Keyboard पूरा करता है, लेकिन head pointer या tremor के साथ mouse इस्तेमाल करने वाला व्यक्ति अब भी pointer user है और हो सकता है कि अब भी drag न कर पाए। Alternatives असली controls होने चाहिए जो 2.5.8 Target Size (Minimum) (Level AA) पूरा करें: कम से कम 24 × 24 CSS pixels, या पर्याप्त spacing, उन अपवादों के साथ जो visual accessibility guide में सिखाए गए हैं। Move down से सटा 16 pixel का Move up arrow एक failure को दूसरे failure से बदल देता है। Level AAA का 2.5.5 Target Size (Enhanced) 44 × 44 माँगता है।

  • Sortable list: हर row पर Move up और Move down बटन, या Move to menu।
  • Kanban board: card चुनें, फिर menu से target column चुनें या column पर tap करें।
  • Slider: track पर tap या click से thumb उस value पर पहुँचे, या − और + बटन, या पास में एक number field।
  • Map: pan के लिए arrow बटन, zoom के लिए + और − बटन।
सिर्फ़ drag से क्रम बदलने वाली list 2.5.7 में fail होती है, जबकि Move up और Move down बटन या slider के − और + बटन single-pointer तरीका देते हैं। वैचारिक मॉडल

सिर्फ़ drag वाली sortable listफ़ेल

Row सिर्फ़ handle पर दबाने, खिसकाने और छोड़ने से हिलती है।

Drag handle: row हिलाने का इकलौता तरीकाRow का text
Criterion:
2.5.7 Dragging Movements (AA)
कैसे जाँचें:
Mouse, सिर्फ़ clicks: row नहीं हिलती

Move up और Move down वाली listपास

Drag अब भी चलता है; हर click row को एक जगह खिसकाता है।

Drag handleRow का textMove up बटनMove down बटन
Criterion:
2.5.7 Dragging Movements (AA)
कैसे जाँचें:
Move down click करें: row एक जगह नीचे जाती है

− और + बटन वाला sliderपास

Thumb drag करें, track पर tap करें, या − और + click करें।

Label: Volume
− बटनSlider track: tap से value सेट होती है+ बटन
Criterion:
2.5.7 Dragging Movements (AA)
कैसे जाँचें:
Track पर tap या + click: बिना drag के value बदलती है

उदाहरण के लिए wireframes। Alternative बटनों को ख़ुद भी 2.5.8 पूरा करना होगा: कम से कम 24 × 24 CSS pixels, या पर्याप्त spacing।

Motion actuation और orientation (2.5.4, 1.3.4)

2.5.4 Motion Actuation (Level A) तब लागू होता है जब device को हिलाना (undo के लिए shake, scroll के लिए tilt) या camera के सामने user की movement (अगले पेज के लिए हाथ हिलाना) कोई function चलाती है। दो बातें ज़रूरी हैं: वही function एक साधारण on-screen control से भी उपलब्ध हो, और motion पर response बंद किया जा सके, ताकि tremor या हिचकोले खाती bus उसे trigger न कर दे। अपवाद हैं: accessibility supported interface के ज़रिए इस्तेमाल होने वाला motion (इसमें keyboard, mouse, touch screen या किसी assistive technology को चलाने की सामान्य हरकतें आती हैं), और वह motion जो activity के लिए essential है, जैसे step counter। यह input के रूप में motion है; screen पर animation और reduced-motion preference visual accessibility में कवर हो चुके हैं।

1.3.4 Orientation (Level AA) कहता है कि content अपना view और operation portrait या landscape में से किसी एक तक सीमित न करे, जब तक कोई ख़ास orientation essential न हो; WCAG के उदाहरणों में bank check, piano application, projector या television के लिए slides, और virtual reality content शामिल हैं। जिस व्यक्ति का tablet wheelchair पर fixed है, वह आपके पेज के हिसाब से उसे घुमा नहीं सकता। Orientation के साथ बदलने वाला layout ठीक और अपेक्षित है; failure वह पेज है जो काम करने से मना कर दे, सिर्फ़ "Please rotate your device" message दिखाए, या अपने content को 90 डिग्री घुमाकर दिखाए। टेस्ट करते समय पहले device का rotation lock बंद करें, वरना pass का कोई मतलब नहीं।

Where an orientation lock usually hides (search the code and config):

CSS       @media (orientation: landscape) { main { display: none; } }
JS        screen.orientation.lock('portrait')
Manifest  "orientation": "portrait"             (installed web app)
Android   android:screenOrientation="portrait"   (AndroidManifest.xml)
iOS       UISupportedInterfaceOrientations       (Info.plist, portrait only)

Mouse, touch device और device emulation से टेस्टिंग

तीनों inputs इस्तेमाल करें, क्योंकि हर एक अलग defects पकड़ता है। Desktop पर mouse से शुरू करें: यह सटीक है, इसलिए दिखाता है कि हर function का single-click रास्ता है या नहीं। Gestures, motion और rotation के लिए असली phone या tablet पर जाएँ। बीच में browser device emulation से phone-width layouts जल्दी जाँचें, लेकिन touch या sensors पर उसे आख़िरी फ़ैसला न मानें।

  • Mouse: हर drag, swipe और pinch function सिर्फ़ single clicks से पूरा करें; action करने वाले हर control पर दबाएँ, बाहर खिसकें और छोड़ें; छोटे targets devtools में मापें।
  • Touch device: हर gesture करें, फिर उसका tap alternative खोजकर इस्तेमाल करें; बटन छुएँ, उँगली बाहर खिसकाएँ और उठाएँ; जहाँ feature motion पर react करता है वहाँ device shake और tilt करें, फिर settings में motion response बंद करें; rotation lock बंद करें और हर screen पर, खुले dialogs समेत, device घुमाएँ।
  • Device emulation: Chrome DevTools में device toolbar (Ctrl+Shift+M, Mac पर Cmd+Shift+M) phone viewport सेट करता है, mouse से touch simulate करता है और उसमें rotate बटन है; Sensors panel device orientation values सेट करता है। Firefox का Responsive Design Mode भी phone viewport, touch simulation और rotate बटन देता है। उन alternatives पर नज़र रखें जिन्हें phone layout छिपा देता है, जैसे carousel arrows जो किसी breakpoint (वह width जहाँ layout बदल जाता है) के नीचे गायब हो जाते हैं।
  • Emulation की सीमाएँ: यह सिर्फ़ वह बदलता है जो पेज को बताया जाता है, जैसे viewport, touch events और, device preset चुनने पर, User-Agent string (वह text जिसमें browser अपना नाम, version और operating system बताता है); hardware नहीं बदलता। यह phone shake नहीं कर सकता, यह नहीं दिखाता कि असली उँगली छोटे target को कैसे ढकती है, और असली operating system का rotation व्यवहार अलग हो सकता है। Console से navigator.userAgent को User-Agent parser में paste करें, तो दिखेगा कि session phone होने का दावा कर रहा है जबकि वह desktop hardware पर चल रहा है। हर pass को कम से कम एक असली device पर confirm करें।
  • हर result के साथ लिखें: device और OS, browser, इस्तेमाल हुआ input (mouse, उँगली या stylus), orientation और rotation lock की स्थिति। छोटी screen recording gesture defects को reproducible बनाती है।
हर pointer और motion criterion तीन तरीकों से जाँचा जाता है: mouse single-click रास्ता साबित करता है, असली touch device gestures, motion और rotation साबित करता है, और emulation phone width पर एक तेज़ जाँच है।
CriterionDesktop पर mouseअसली touch deviceBrowser device emulationसिर्फ़ पहली जाँच
2.5.1 Pointer GesturesLevel Aहर swipe या pinch function सिर्फ़ clicks से करेंहर gesture करें, फिर उसका tap alternativeजाँचें कि phone width पर alternatives अब भी दिखते हैं
2.5.2 Pointer CancellationLevel Aदबाएँ, बाहर खिसकें, छोड़ें: कुछ नहीं होताछुएँ, उँगली बाहर खिसकाएँ, उठाएँ: कुछ नहीं होताSimulated touch events के साथ दोहराएँ
2.5.4 Motion ActuationLevel Aहर motion feature के लिए on-screen control खोजेंShake या tilt करें, फिर motion response बंद करेंSensors panel tilt values सेट करता हैshake के लिए असली device चाहिए
2.5.7 Dragging MovementsLevel AA, 2.2 में नयाहर drag single clicks से पूरा करेंहर drag single taps से पूरा करेंजाँचें कि phone layout में Move controls बने रहें
2.5.8 Target Size (Minimum)Level AADevtools में मापें: 24 × 24 CSS px या spacingपास-पास के controls tap करें, गलत hits नोट करेंPhone width पर दोबारा मापें
1.3.4 OrientationLevel AAइस input से कोई जाँच नहींRotation lock बंद; हर screen पर घुमाएँDevice toolbar का rotate बटन

आज़माएँ: User-Agent पार्सर आज़माएँ: टेस्ट केस जनरेटर

Worked example: task board की टेस्टिंग

एक team mobile-friendly task board ship करती है। Cards columns के बीच drag से जाते हैं, card पर बाईं ओर swipe उसे archive करता है, phone shake करने से आख़िरी बदलाव undo होता है, और card का delete icon touch पर react करता है।

Tester पिछले section का session चलाता है और जो pass हुआ वह भी दर्ज करता है: board का zoom pinch के साथ + और − बटन से भी चलता है (2.5.1), और column header के बटन 32 × 32 CSS pixels के हैं (2.5.8)। फिर tester ये defects लिखता है, हर एक के साथ criterion और expected व्यवहार:

  • "Card को columns के बीच सिर्फ़ drag से ले जाया जा सकता है; कोई single-pointer तरीका नहीं": 2.5.7 (AA) fail। Expected: हर card पर Move to menu, या card चुनकर column पर tap।
  • "Archive सिर्फ़ बाईं ओर swipe से उपलब्ध है": 2.5.1 (A) fail, क्योंकि swipe एक path-based gesture है। Expected: card menu में Archive item।
  • "Shake to undo का कोई on-screen Undo नहीं और इसे बंद नहीं किया जा सकता": 2.5.4 (A) की दोनों शर्तों पर fail। Expected: हर बदलाव के बाद Undo बटन और shake बंद करने की setting।
  • "Card touchstart पर delete हो जाता है; उँगली बाहर खिसकाने से cancel नहीं होता": 2.5.2 (A) fail। Expected: release पर delete, बेहतर हो कि Undo के साथ।
  • "Tablets पर landscape में board rotate-to-portrait message दिखाता है": 1.3.4 (AA) fail; task board की कोई essential orientation नहीं है।

आज़माएँ: AI बग टाइटल जनरेटर

आम गलतियाँ

  • Drag या swipe के alternative के रूप में keyboard support को मान लेना। 2.1.1 Keyboard और 2.5.7 अलग requirements हैं: pointer users को pointer वाला तरीका चाहिए।
  • सिर्फ़ desktop emulation में टेस्ट करके touch, motion और orientation को pass मान लेना। Emulation device shake नहीं कर सकता और असली उँगली की नकल नहीं करता; असली phone या tablet पर confirm करें।
  • Browser के अपने pinch zoom या screen reader के gestures को 2.5.1 failure बताना। Pointer criteria उन gestures को कवर करते हैं जिन्हें पेज ख़ुद interpret करता है।
  • Pointer cancellation को सामान्य click से जाँचना। सामान्य click हमेशा ठीक दिखता है; आपको दबाकर control से बाहर खिसकना और छोड़ना होगा।
  • Rotation lock चालू रखकर orientation टेस्ट करना, या अलग landscape layout को failure बताना। Defect वह पेज है जो कोई orientation रोकता या थोपता है, वह नहीं जो ख़ुद को ढाल लेता है।
  • Alternatives को ही जाँचना भूल जाना: बिना spacing के सटे हुए 16 pixel के Move up और Move down बटन, या ऐसे बटन जो सिर्फ़ hover पर दिखते हैं, जो touch screens पर होता ही नहीं।

QA का नज़रिया

सबसे सस्ता पल design review है। Design या story में हर drag, swipe, pinch, shake या orientation rule के लिए एक सवाल पूछें: कोई इसे single tap से कैसे करेगा? जवाब acceptance criteria में लिखें, जैसे "card को उसके menu से दूसरे column में ले जाया जा सकता है", ताकि alternative किसी audit के बाद जोड़ा जाने की बजाय किसी भी दूसरी requirement की तरह बने और टेस्ट हो।

Testing के दौरान product के हर gesture-आधारित function की एक छोटी inventory रखें और हर release पर उसे दोबारा चलाएँ, क्योंकि नए components नए gestures लाते हैं। हर defect को exact criterion और level, device, browser, input और orientation, और एक छोटी screen recording के साथ report करें। अगर team किसी gesture को essential बताए, तो पूछें कि यह किसने तय किया और कारण दर्ज करें: WCAG में essential का मतलब है कि gesture हटाने से function बुनियादी रूप से बदल जाएगा, यह नहीं कि alternative बनाने में अतिरिक्त मेहनत लगेगी।

अभ्यास

Playlist screen में pointer और motion defects खोजें

आपका काम

एक music app की mobile web playlist screen टेस्टिंग के लिए तैयार है। नीचे दिए feature notes पढ़ें। हर numbered व्यवहार के लिए बताएँ कि वह WCAG 2.2 के किस criterion से जुड़ा है, बताए गए रूप में pass है या fail, आप उसे कैसे जाँचेंगे (mouse, touch device या emulation), और हर failure के लिए defect title लिखें।

सामग्री
Playlist screen, release 3.2 (mobile web)
1. हर row का handle drag करके songs का क्रम बदलें।
2. Volume slider: thumb drag करें; track पर tap करने से कुछ नहीं होता।
   Arrow keys से volume बदलता है।
3. Row को बाईं ओर swipe करने पर Remove दिखता है।
4. Shuffle के लिए phone shake करें। कोई Shuffle बटन नहीं है।
   Shake-to-shuffle बंद करने की कोई setting नहीं है।
5. Remove, touchstart पर चलता है।
6. Landscape में पेज "Rotate your phone" दिखाता है और list छिपा देता है।
7. Album art viewer: zoom के लिए pinch (app handle करता है); double tap से भी zoom।
चरण
  1. हर interaction को classify करें: multipoint या path-based gesture, dragging, single pointer action, device motion या orientation।
  2. उसे 2.5.1, 2.5.2, 2.5.4, 2.5.7, 2.5.8 या 1.3.4 से match करें और notes के आधार पर pass या fail तय करें।
  3. वह input और device चुनें जिससे आप result confirm करेंगे।
  4. हर failure के लिए expected व्यवहार के साथ defect title लिखें।
मॉडल उत्तर दिखाएँ
मॉडल उत्तर

1. Dragging, 2.5.7 (AA): fail, क्योंकि कोई single-pointer तरीका नहीं है। Mouse से, सिर्फ़ clicks के साथ जाँचें। Defect: "Songs का क्रम सिर्फ़ drag से बदला जा सकता है"। Expected: Move up और Move down बटन या Move to menu; फिर नए बटनों को 2.5.8 के अनुसार मापें।

2. Dragging, 2.5.7 (AA): fail। Keyboard support 2.1.1 पूरा करता है, 2.5.7 नहीं। Mouse से track पर click करके और touch device पर उसे tap करके जाँचें। Defect: "Volume slider सिर्फ़ thumb drag करके सेट होता है; track पर tap का कोई असर नहीं"। Expected: track पर tap से value सेट हो, या − और + बटन।

3. Path-based gesture, 2.5.1 (A): fail, क्योंकि Remove तक पहुँचने का एकमात्र तरीका swipe है। Touch device पर और mouse से जाँचें। Defect: "Remove सिर्फ़ row को बाईं ओर swipe करके मिलता है"। Expected: दिखने वाला Remove बटन या row menu।

4. Device motion, 2.5.4 (A): दो बार fail, न कोई on-screen control है और न response बंद करने का तरीका। असली phone पर confirm करें; emulation shake नहीं कर सकता। Defect: "Shuffle सिर्फ़ phone shake करने से चलता है और बंद नहीं किया जा सकता"। Expected: एक Shuffle बटन, और shake-to-shuffle बंद करने की setting।

5. Pointer cancellation, 2.5.2 (A): fail। असली device पर Remove छुएँ, उँगली बाहर खिसकाएँ और उठाएँ। Defect: "Touch down होते ही song हट जाता है; उँगली बाहर खिसकाने से cancel नहीं होता"। Expected: release पर remove, Undo के साथ।

6. Orientation, 1.3.4 (AA): fail; playlist की कोई essential orientation नहीं है। Phone पर rotation lock बंद करके, और emulation के rotate बटन से जाँचें। Defect: "Landscape में playlist एक rotate-your-phone message के पीछे छिप जाती है"। Expected: playlist दोनों orientations में काम करे; उसका layout बदल सकता है।

7. Multipoint gesture, 2.5.1 (A): pass, क्योंकि double tap बिना path वाला single-pointer action है। Touch device पर जाँचें: album art पर double tap करें और देखें कि zoom होता है। Improvement के रूप में दर्ज करें कि दिखने वाले zoom बटन double tap से ज़्यादा आसानी से मिलते हैं।

अक्सर पूछे जाने वाले सवाल

क्या keyboard support से 2.5.7 Dragging Movements पूरा हो जाता है?

नहीं। 2.1.1 Keyboard keyboard से operation माँगता है; 2.5.7 अलग से माँगता है कि हर dragging function single pointer actions से, बिना drag के, हो सके। Understanding 2.5.7 यह सीधे कहता है: keyboard equivalent इसे तभी पूरा करता है जब वह ऐसे controls भी दे जिन पर click या tap किया जा सके। Head pointer, eye tracking या tremor के साथ mouse इस्तेमाल करने वाले लोग pointer users हैं, इसलिए उन्हें clicks या taps चाहिए, arrow keys नहीं।

क्या double tap या long press, swipe का स्वीकार्य alternative है?

2.5.1 के अनुसार हाँ: दोनों बिना path वाले single-pointer actions हैं। लेकिन इन्हें खोजना मुश्किल है, इसलिए दिखने वाला बटन आम तौर पर बेहतर design होता है।

क्या मैं ये criteria असली phone के बिना टेस्ट कर सकता हूँ?

आंशिक रूप से। Desktop पर mouse से testing single-click alternatives, pointer cancellation और target size को कवर करती है, और device emulation phone-width layouts, touch events और rotate बटन को। Shake, असली उँगली का स्पर्श और operating system का rotation व्यवहार असली device माँगते हैं, इसलिए कम से कम एक device की योजना बनाएँ।

Motion actuation और reduced motion में क्या फ़र्क है?

2.5.4 Motion Actuation input के रूप में motion के बारे में है: कोई function चलाने के लिए device को, या ख़ुद को, हिलाना। Reduced motion, 2.3.3 Animation from Interactions और prefers-reduced-motion setting output के रूप में motion के बारे में हैं: वह animation जो पेज दिखाता है। Shake-to-undo feature 2.5.4 के तहत आता है; sliding page transition animation वाले criteria के तहत।

संदर्भ

  • Web Content Accessibility Guidelines (WCAG) 2.2W3C · 2024W3C की Recommendation जो सुलभ वेब कंटेंट के लिए टेस्ट करने योग्य success criteria तय करती है — चार सिद्धांतों और तीन conformance स्तरों (A, AA, AAA) में व्यवस्थित।
  • Understanding WCAG 2.2W3C Web Accessibility Initiative (WAI)WCAG 2.2 की हर guideline और success criterion की व्याख्या: उद्देश्य, किसे लाभ, उदाहरण और तकनीकें (नॉर्मेटिव नहीं)।
  • How to Meet WCAG (Quick Reference)W3C Web Accessibility Initiative (WAI)WCAG 2.2 के हर success criterion की फ़िल्टर करने योग्य सूची, पर्याप्त तकनीकों और आम विफलताओं के साथ।
  • What are browser developer tools? — MDNMDN Web Docs (Mozilla)ब्राउज़र में बने developer tools का परिचय — inspector, JavaScript console और debugger — टेस्ट करते समय पेज की जाँच के लिए।

Mutqan tools से अभ्यास करें

फ़ीचर के विवरण और फ़ील्ड सूची से संरचित टेस्ट केस (id, शीर्षक, पूर्व-शर्तें, स्टेप, अपेक्षित परिणाम, प्राथमिकता) जनरेट करें।

टेस्ट डिज़ाइन

क्रमांकित आवश्यकताओं की सूची को requirement-to-test मैट्रिक्स के साथ ट्रेस करने योग्य टेस्ट केस में बदलें।

टेस्ट डिज़ाइन

User-Agent स्ट्रिंग से ब्राउज़र, वर्शन, इंजन, OS, डिवाइस टाइप और बॉट की पहचान करें।

वेब

Mutqan AI से किसी भी फ़ीचर के लिए अनुकूलित QA चेकलिस्ट (functional, UI, API, security, performance, accessibility, release) बनाएँ।

टेस्ट जनरेशन AI

Mutqan AI से बिखरे हुए विवरण से स्पष्ट और खोजने में आसान बग टाइटल बनाएँ।

बग विश्लेषण AI

और गहराई से

इस topic में आपकी प्रगति

QA रोडमैप का हिस्सा