सहायक टेक्नोलॉजी की जांच

यह मॉड्यूल, सुलभता जांच के लिए सहायक टेक्नोलॉजी (AT) के इस्तेमाल पर फ़ोकस करता है. दिव्यांग व्यक्ति किसी काम को करने की क्षमता को बढ़ाने, बनाए रखने या बेहतर बनाने के लिए AT का इस्तेमाल कर सकते हैं.

डिजिटल स्पेस में, AT ये काम कर सकते हैं:

  • नो/लो-टेक: हेड/माउथ स्टिक, हाथ में मौजूद मैग्निफ़ायर, बड़े बटन वाले डिवाइस
  • हाई-टेक: आवाज़ से चालू होने वाले डिवाइस, आई-ट्रैकिंग डिवाइस, अडैप्टिव कीबोर्ड/माइस
  • हार्डवेयर: स्विच बटन, एर्गोनॉमिक कीबोर्ड, अपने-आप रीफ़्रेश होने वाला ब्रेल डिवाइस
  • सॉफ़्टवेयर: लिखाई को बोली में बदलने वाले प्रोग्राम, लाइव कैप्शन, स्क्रीन रीडर

हमारा सुझाव है कि आप अपने पूरे टेस्टिंग वर्कफ़्लो में कई तरह के ATs का इस्तेमाल करें.

स्क्रीन रीडर टेस्टिंग की बुनियादी बातें

इस मॉड्यूल में, हमारा फ़ोकस सबसे लोकप्रिय डिजिटल ATs, स्क्रीन रीडर पर है. स्क्रीन रीडर, सॉफ़्टवेयर का एक हिस्सा होता है. यह किसी वेबसाइट या ऐप्लिकेशन के कोड को पढ़ता है. इसके बाद, वह उस जानकारी को लोगों के लिए, बोली या ब्रेल आउटपुट में बदलता है.

जो लोग दृष्टिहीन और सुन नहीं सकते हैं, उनके लिए स्क्रीन रीडर बहुत ज़रूरी हैं. हालांकि, वे कम दृष्टि, पढ़ने से जुड़ी समस्या या सीखने-बात से जुड़ी दिव्यांगता वाले लोगों के लिए भी फ़ायदेमंद हो सकते हैं.

वेबसाइट का अलग-अलग ब्राउज़र पर चलना

स्क्रीन रीडर के कई विकल्प उपलब्ध हैं. फ़िलहाल, सबसे लोकप्रिय स्क्रीन रीडर डेस्कटॉप कंप्यूटर के लिए JAWS, NVDA, और VoiceOver हैं. साथ ही, मोबाइल डिवाइसों के लिए VoiceOver और Talkback भी शामिल हैं.

आपके ऑपरेटिंग सिस्टम (ओएस), पसंदीदा ब्राउज़र, और इस्तेमाल किए जाने वाले डिवाइस के आधार पर, एक स्क्रीन रीडर सबसे अच्छा विकल्प हो सकता है. ज़्यादातर स्क्रीन रीडर, खास हार्डवेयर और वेब ब्राउज़र को ध्यान में रखकर बनाए जाते हैं. जब किसी ऐसे ब्राउज़र के साथ स्क्रीन रीडर का इस्तेमाल किया जाता है जिसके लिए उसे कैलिब्रेट नहीं किया गया था, तो आपको ज़्यादा "गड़बड़ी" या अनचाहे व्यवहार का सामना करना पड़ सकता है. स्क्रीन रीडर सबसे अच्छे तरीके से तब काम करते हैं, जब इनका इस्तेमाल इन कॉम्बिनेशन में किया जाता है.

स्क्रीन रीडर ओएस वेबसाइट का अलग-अलग ब्राउज़र पर चलना
बोली के साथ जॉब ऐक्सेस करना (JAWS) Windows Chrome, Firefox, Edge
नॉन-विज़ुअल डेस्कटॉप ऐक्सेस (NVDA) Windows Chrome और Firefox
नैरेटर Windows Edge
VoiceOver macOS Safari
ओर्का Linux Firefox
TalkBack Android Chrome और Firefox
VoiceOver (मोबाइल के लिए) iOS Safari
ChromeVox ChromeOS Chrome

स्क्रीन रीडर के लिए निर्देश

डेस्कटॉप या मोबाइल डिवाइस के लिए, स्क्रीन रीडर सॉफ़्टवेयर को सही तरीके से सेट-अप करने के बाद, आपको स्क्रीन रीडर के दस्तावेज़ (पिछली टेबल में लिंक किए गए) देखने चाहिए. साथ ही, इस टेक्नोलॉजी के बारे में अच्छे से जानने के लिए, कुछ स्क्रीन रीडर के ज़रूरी निर्देशों का पालन करना चाहिए. अगर आपने पहले कभी स्क्रीन रीडर का इस्तेमाल किया है, तो नया स्क्रीन रीडर आज़माएं!

सुलभता जांच के लिए स्क्रीन रीडर का इस्तेमाल करते समय, आपका लक्ष्य कोड में मौजूद उन समस्याओं का पता लगाना होता है जो आपकी वेबसाइट या ऐप्लिकेशन के इस्तेमाल में रुकावट डालते हैं, न कि स्क्रीन रीडर का इस्तेमाल करने वाले लोगों के अनुभव को एम्युलेट करना. इसलिए, कुछ बुनियादी जानकारी, स्क्रीन रीडर के कुछ निर्देशों, और थोड़ी-बहुत या प्रैक्टिस की मदद से, बहुत कुछ किया जा सकता है.

अगर आपको स्क्रीन रीडर और दूसरे AT का इस्तेमाल करने वाले लोगों के उपयोगकर्ता अनुभव को और समझना है, तो यह अहम जानकारी पाने के लिए आपको कई संगठनों और लोगों से जुड़ना होगा. याद रखें कि नियमों के किसी सेट के ख़िलाफ़ कोड की जांच करने के लिए AT का इस्तेमाल करने और उपयोगकर्ताओं से उनके अनुभव के बारे में पूछने से अक्सर अलग नतीजे मिलते हैं. पूरी तरह से बिना किसी भेदभाव के सभी को ध्यान में रखकर बनाए जाने वाले प्रॉडक्ट बनाने के लिए, ये दोनों अहम पहलू हैं.

डेस्कटॉप स्क्रीन रीडर के लिए मुख्य निर्देश

एलिमेंट NVDA (Windows) VoiceOver (macOS)
आदेश शामिल करें (NVDA कुंजी) कंट्रोल + विकल्प (VO बटन)
ऑडियो रोकें कंट्रोल कंट्रोल
अगला/पिछला पढ़ें ↓ या ↑ VO + → या ←
पढ़ना शुरू करें एनडीवीए + ↓ वॉइसओवर + A
एलिमेंट की सूची/रोटर एनवीडीए + F7 VO + U
लैंडमार्क D VO + U
शीर्षक H VO + Command + H
लिंक K VO + Command + L
फ़ॉर्म कंट्रोल F VO + Command + J
टेबल T VO + Command + T
टेबल के अंदर NDVA + Alt + ↓ ↑ ← → VO + ↓ ↑ ← →

मोबाइल स्क्रीन रीडर के लिए मुख्य निर्देश

एलिमेंट TalkBack (Android) VoiceOver (iOS)
और जानें स्क्रीन पर एक उंगली से खींचें और छोड़ें स्क्रीन पर एक उंगली से खींचें और छोड़ें
चुनें या चालू करें दो बार टैप करें दो बार टैप करें
ऊपर/नीचे ले जाएं दो उंगलियों से, ऊपर या नीचे की ओर स्वाइप करें तीन उंगलियों से, ऊपर या नीचे की ओर स्वाइप करें
पेज बदलना दो उंगलियों से बाईं या दाईं ओर स्वाइप करें तीन उंगलियों से बाईं/दाईं ओर स्वाइप करें
अगला/पिछला एक उंगली से बाईं/दाईं ओर स्वाइप करें एक उंगली से बाईं/दाईं ओर स्वाइप करें

स्क्रीन रीडर टेस्टिंग डेमो

डेमो की जांच करने के लिए, हमने MacOS वाले लैपटॉप पर Safari का इस्तेमाल किया और आवाज़ को कैप्चर किया. किसी भी स्क्रीन रीडर का इस्तेमाल करके यह तरीका अपनाया जा सकता है. हालांकि, कुछ गड़बड़ियों का सामना करने का तरीका, इस मॉड्यूल में बताए गए तरीके से अलग हो सकता है.

पहला चरण

अपडेट किए गए CodePen पर जाएं. इस पर अपने-आप और मैन्युअल तरीके से किए जाने वाले सभी अपडेट लागू हैं.

अगले टेस्ट पर जाने के लिए, इसे डीबग मोड में देखें. यह ज़रूरी है, क्योंकि यह डेमो वेबपेज के आस-पास मौजूद <iframe> को हटा देता है. इससे कुछ टेस्टिंग टूल में रुकावट आ सकती है. CodePen के डीबग मोड के बारे में ज़्यादा जानें.

दूसरा चरण

अपनी पसंद के स्क्रीन रीडर को चालू करें और डेमो पेज पर जाएं. ऐसा हो सकता है कि खास समस्याओं पर ध्यान देने से पहले, आप पूरे पेज पर ऊपर से नीचे की ओर नेविगेट करें.

हमने डेमो में सुधार लागू होने से पहले और बाद में, हर समस्या के लिए अपने स्क्रीन रीडर को रिकॉर्ड किया है. हमारा सुझाव है कि आप इस डेमो को अपने स्क्रीन रीडर का इस्तेमाल करके देखें.

पहली समस्या: कॉन्टेंट का स्ट्रक्चर

शीर्षक और लैंडमार्क, स्क्रीन रीडर का इस्तेमाल करके नेविगेट करने के मुख्य तरीकों में से एक हैं. अगर ये मौजूद नहीं हैं, तो स्क्रीन रीडर का इस्तेमाल करने वाले व्यक्ति को संदर्भ समझने के लिए पूरा पेज पढ़ना होगा. इसमें ज़्यादा समय लग सकता है और इससे आपको परेशानी हो सकती है. अगर डेमो में किसी भी एलिमेंट के ज़रिए नेविगेट करने की कोशिश की जाती है, तो आपको तुरंत पता चल जाएगा कि वह एलिमेंट मौजूद नहीं है.

  • लैंडमार्क उदाहरण: <div class="main">...</div>
  • टाइटल का उदाहरण: <p class="h1">Join the Club</p>

अगर आपने सब कुछ सही तरीके से अपडेट किया है, तो कोई विज़ुअल बदलाव नहीं होगा. हालांकि, इससे आपके स्क्रीन रीडर का अनुभव काफ़ी बेहतर हो जाएगा.

इस समस्या के बारे में जानने के लिए, स्क्रीन रीडर से नेविगेट करें.
चलिए, इसे ठीक करते हैं.

कुछ ऐसी चीज़ें जिन्हें ऐक्सेस नहीं किया जा सकता, सिर्फ़ साइट को देखने से उन्हें पता नहीं लगाया जा सकता. आपको कॉन्टेंट स्ट्रक्चर मॉड्यूल में, हेडिंग लेवल और सिमैंटिक एचटीएमएल की अहमियत याद हो सकती है. कॉन्टेंट का कोई हिस्सा, किसी हेडिंग जैसा दिख सकता है, लेकिन असल में कॉन्टेंट को <div> स्टाइल से रैप किया जाता है.

हेडिंग और लैंडमार्क से जुड़ी समस्या को ठीक करने के लिए, आपको सबसे पहले हर उस एलिमेंट की पहचान करनी होगी जिसे इस तरह मार्क अप किया जाना चाहिए. साथ ही, आपको मिलते-जुलते एचटीएमएल को अपडेट करना होगा. साथ ही, मिलती-जुलती सीएसएस को भी अपडेट करें.

लैंडमार्क उदाहरण: <main>...</main>

टाइटल का उदाहरण: <h1>Join the Club</h1>

अगर आपने सब कुछ सही तरीके से अपडेट किया है, तो कोई विज़ुअल बदलाव नहीं होगा. हालांकि, इससे आपके स्क्रीन रीडर का अनुभव काफ़ी बेहतर हो जाएगा.

अब हमने कॉन्टेंट का स्ट्रक्चर ठीक कर दिया है. इसलिए, डेमो के बारे में फिर से जानने के लिए स्क्रीन रीडर को सुनें.

यह ज़रूरी है कि स्क्रीन रीडर का इस्तेमाल करने वालों को लिंक के मकसद के बारे में जानकारी दी जाए. साथ ही, यह भी बताया जाए कि क्या लिंक उन्हें वेबसाइट या ऐप्लिकेशन के बाहर किसी नई जगह पर रीडायरेक्ट कर रहा है.

अपने डेमो में, हमने ऐक्टिव इमेज के वैकल्पिक टेक्स्ट को अपडेट करते समय ज़्यादातर लिंक ठीक कर दिए हैं. हालांकि, कई ऐसी बीमारियों के बारे में कुछ अतिरिक्त लिंक भी हैं जिन्हें ज़्यादा जानकारी देने से फ़ायदा हो सकता है—खास तौर पर ऐसा तब होता है, जब हम किसी नई जगह पर रीडायरेक्ट करते हैं.

<a href="https://rarediseases.org/rare-diseases/maple-syrup-urine-disease">
  Maple syrup urine disease (MSUD)
</a>
इस समस्या के बारे में जानने के लिए, स्क्रीन रीडर का इस्तेमाल करें.
चलिए, इसे ठीक करते हैं.

स्क्रीन रीडर का इस्तेमाल करने वालों को इस समस्या को ठीक करने के लिए, हम विज़ुअल एलिमेंट पर असर डाले बिना ज़्यादा जानकारी जोड़ने के लिए, कोड को अपडेट करते हैं. इसके अलावा, पढ़ने और सीखने से जुड़ी बीमारियों से जूझ रहे लोगों जैसे और लोगों की मदद के लिए, हम अतिरिक्त विज़ुअल टेक्स्ट जोड़ सकते हैं.

लिंक की ज़्यादा जानकारी जोड़ने के लिए, हम कई अलग-अलग पैटर्न का इस्तेमाल कर सकते हैं. हमारे आसान माहौल के आधार पर, जो सिर्फ़ एक भाषा में काम करता है, उसके लिए ARIA लेबल एक आसान विकल्प है. आपको दिख सकता है कि ARIA लेबल, ओरिजनल लिंक टेक्स्ट को बदल देता है. इसलिए, अपने अपडेट में वह जानकारी ज़रूर शामिल करें.

<a href="https://rarediseases.org/rare-diseases/maple-syrup-urine-disease"
  aria-label="Learn more about Maple syrup urine disease on the Rare Diseases website.">
  Maple syrup urine disease (MSUD)
</a>
अब हमने लिंक का कॉन्टेक्स्ट ठीक कर दिया है. इसलिए, डेमो में स्क्रीन रीडर से नेविगेट करें.

समस्या 3: सजावटी इमेज

हमारे अपने-आप होने वाले टेस्टिंग मॉड्यूल में, Lighthouse इनलाइन SVG को पिक अप नहीं कर सका. यह हमारे डेमो पेज पर, मुख्य स्प्लैश इमेज के तौर पर काम करता है. हालांकि, स्क्रीन रीडर को यह इमेज मिल गई और बिना किसी ज़्यादा जानकारी के "इमेज" के तौर पर उसके बारे में जानकारी दे दी गई. यह बात तब भी लागू होती है, जब SVG में role="img" एट्रिब्यूट साफ़ तौर पर न जोड़ा गया हो.

<div class="section-right">
  <svg>...</svg>
</div>
इस समस्या के बारे में जानने के लिए, स्क्रीन रीडर का इस्तेमाल करें.
चलिए, इसे ठीक करते हैं.

इस समस्या को ठीक करने के लिए, हमें सबसे पहले यह तय करना होगा कि इमेज जानकारी देने वाला है या सजावटी है. उस फ़ैसले के आधार पर, हमें सही इमेज वैकल्पिक टेक्स्ट (जानकारी देने वाली इमेज) जोड़नी होगी या स्क्रीन रीडर का इस्तेमाल करने वालों के लिए उस इमेज को छिपाना होगा (सजावटी).

हमने इमेज को कैटगरी में बांटने के फ़ायदों और नुकसान को ध्यान में रखा और फ़ैसला लिया कि यह सजावटी है. इसका मतलब है कि हम इमेज को छिपाने के लिए कोड को जोड़ना चाहते हैं या उसमें बदलाव करना चाहते हैं. एक तेज़ तरीका यह है कि आप सीधे SVG इमेज में role="presentation" जोड़ें. इससे स्क्रीन रीडर को यह सिग्नल भेजा जाता है कि वह इस इमेज को छोड़कर आगे बढ़ जाए और इसे इमेज ग्रुप में शामिल न करे.

<div class="section-right">
  <svg role="presentation">...</svg>
</div>
अब हमने सजावटी इमेज ठीक कर दी है. इसलिए, डेमो में स्क्रीन रीडर का इस्तेमाल करें.

समस्या 4: बुलेट की सजावट

आपने देखा होगा कि स्क्रीन रीडर, खास बीमारियों वाले सेक्शन में मौजूद सीएसएस बुलेट इमेज को पढ़ता है. इमेज मॉड्यूल में जिस पुराने तरह की इमेज के बारे में चर्चा नहीं की गई है, वहीं इमेज में बदलाव करना ज़रूरी है. इससे कॉन्टेंट के फ़्लो में रुकावट आती है और इससे स्क्रीन रीडर का इस्तेमाल करने वाले व्यक्ति का ध्यान बंट सकता है या भ्रम में पड़ सकता है.

<p class="bullet">...</p>
इस समस्या के बारे में जानने के लिए, स्क्रीन रीडर का इस्तेमाल करें.
चलिए, इसे ठीक करते हैं.

जैसा कि ऊपर बताए गए सजावटी इमेज के उदाहरण में किया गया है, आप बुलेट क्लास के साथ एचटीएमएल में role="presentation" जोड़ सकते हैं, ताकि उसे स्क्रीन रीडर से छिपाया जा सके. इसी तरह, role="none" काम करेगा. बस यह पक्का करें कि आप aria-hidden: true का इस्तेमाल न करें. ऐसा न करने पर, स्क्रीन रीडर का इस्तेमाल करने वालों को पैराग्राफ़ की सारी जानकारी छिपा दी जाएगी.

<p class="bullet" role="none">...</p>

समस्या 5: फ़ॉर्म फ़ील्ड

फ़ॉर्म मॉड्यूल में, हमने सीखा कि सभी फ़ॉर्म फ़ील्ड में एक विज़ुअल और प्रोग्राम के हिसाब से, अपने-आप बनने वाला लेबल भी होना चाहिए. यह लेबल हमेशा दिखना चाहिए.

हमारे डेमो में, हमारे न्यूज़लेटर के लिए साइन-अप करने के ईमेल फ़ील्ड में विज़ुअल और प्रोग्राम के हिसाब से, अपने-आप होने वाला लेबल, दोनों मौजूद नहीं हैं. इस एलिमेंट में टेक्स्ट प्लेसहोल्डर एलिमेंट मौजूद है. हालांकि, यह लेबल को नहीं बदलता, क्योंकि यह विज़ुअल तौर पर लगातार नहीं दिखता. साथ ही, यह सभी स्क्रीन रीडर के साथ पूरी तरह काम नहीं करता.

<form>
  <div class="form-group">
    <input type="email" placeholder="Enter your e-mail address" required>
    <button type="submit">Subscribe</button>
  </div>
</form>
इस समस्या के बारे में जानने के लिए, स्क्रीन रीडर का इस्तेमाल करें.
चलिए, इसे ठीक करते हैं.

इस समस्या को ठीक करने के लिए, टेक्स्ट प्लेसहोल्डर को एक जैसे दिखने वाले लेबल एलिमेंट से बदलें. वह लेबल एलिमेंट, प्रोग्राम के हिसाब से फ़ॉर्म फ़ील्ड से कनेक्ट होता है. साथ ही, फ़ील्ड में कॉन्टेंट जोड़े जाने के बाद भी लेबल को बनाए रखने के लिए, मूवमेंट को JavaScript के साथ जोड़ा जाता है.

<form>
  <div class="form-group">
    <input type="email" required id="youremail" name="youremail" type="text">
    <label for="youremail">Enter your e-mail address</label>
    <button type="submit" aria-label="Subscribe to our newsletter">Subscribe</button>
  </div>
</form>
अब जब हमने फ़ॉर्म को ठीक कर दिया है, तो डेमो में दिए गए स्क्रीन रीडर को सुनें.

आखिर में खास जानकारी

बधाई! आपने इस डेमो की सभी जांच पूरी कर ली है. ये सभी बदलाव इस डेमो के लिए अपडेट किए गए Codepen में देखे जा सकते हैं.

अब आप अपनी वेबसाइटों और ऐप्लिकेशन की सुलभता की समीक्षा करने के लिए, सीखी हुई बातों का इस्तेमाल कर सकते हैं.

इस सुलभता टेस्टिंग का मकसद ऐसी ज़्यादा से ज़्यादा समस्याओं का पता लगाना है जिनका सामना उपयोगकर्ता को करना पड़ सकता है. हालांकि, इसका मतलब यह नहीं है कि काम पूरा होने के बाद, आपकी वेबसाइट या ऐप्लिकेशन को आसानी से ऐक्सेस किया जा सकेगा. पूरी प्रोसेस के दौरान, अपनी वेबसाइट या ऐप्लिकेशन को सुलभता सुविधाओं के साथ डिज़ाइन करें. साथ ही, इन टेस्ट को प्री-लॉन्च टेस्टिंग में शामिल करके, आपको सबसे ज़्यादा सफलता मिलेगी.

आपने जो सीखा है उसकी जांच करें

अपने-आप होने वाली सुलभता सुविधाओं की जांच के बारे में अपनी जानकारी की जांच करें

सुलभता की जांच करने के लिए, सबसे अच्छा स्क्रीन रीडर कौनसा है?

JAWS
हालांकि, JAWS सबसे लोकप्रिय स्क्रीन रीडर में से एक है, लेकिन ज़रूरी नहीं है कि यह सबसे अच्छा विकल्प हो.
VoiceOver
VoiceOver, MacOS और iOS उपयोगकर्ताओं के लिए एक टूल है. अगर Windows पीसी का इस्तेमाल किया जा रहा है, तो आपको किसी दूसरे टूल का इस्तेमाल करना होगा.
ओर्का
Orca, Linux Firefox उपयोगकर्ताओं के लिए है. इसका मतलब है कि आपको किसी दूसरे टूल का इस्तेमाल करना होगा.
यहां एक भी नहीं है
हर स्क्रीन रीडर को एक खास डिवाइस, ऑपरेटिंग सिस्टम या ब्राउज़र के लिए बनाया गया है. इसलिए, जांच करने के आपके तरीके पर निर्भर करता है कि आपके लिए क्या बेहतर है. अगर आपके पास ऐसे आंकड़े या रिसर्च है जिससे आपको स्क्रीन रीडर का इस्तेमाल करने वाले उपयोगकर्ताओं के बारे में ज़्यादा जानकारी मिलती है, तो उसी स्क्रीन रीडर से टेस्ट करना फ़ायदेमंद हो सकता है जिसका वे इस्तेमाल कर रहे हैं.

सहायक टेक्नोलॉजी की मदद से टेस्ट करने का मकसद क्या होता है?

सहायक टेक्नोलॉजी इस्तेमाल करने वाले लोगों जैसा अनुभव पाना.
आप AT का इस्तेमाल करने वाले किसी व्यक्ति के अनुभव को जैसा सही नहीं बना सकते. एक स्थिति में एक जांच, अन्य अनुभवों जैसी नहीं होगी.
अपनी वेबसाइट या ऐप्लिकेशन की कमियों की जांच करने के लिए.
सुलभता सुविधाओं की जांच करने की सुविधा से, डेवलपर को उन समस्याओं का पता लगाने और उन्हें ठीक करने में मदद मिलती है जो AT उपयोगकर्ताओं को उनकी वेबसाइट या ऐप्लिकेशन पर आ सकती हैं.