contract से शुरू कीजिए: status codes, response schema, content types, और कौन से field जरूरी हैं कौन से नहीं। फिर हर input जांचिए (गायब, गलत type, रेंज से बाहर, बहुत बड़ा), authentication और authorization टेस्ट कीजिए जिसमें किसी दूसरे user के resource तक पहुंच भी शामिल हो, error responses की एकरूपता देखिए, दोबारा भेजने पर idempotency, pagination और sorting, rate limiting, और यह कि कोई dependency फेल या timeout हो जाए तो क्या होता है।
इंटरव्यूअर यह क्यों पूछते हैं
आधुनिक QA की ज्यादातर मेहनत असल में API टेस्टिंग पर जाती है, और इंटरव्यूअर जानना चाहते हैं कि आप सीधे रास्ते के 200 से आगे जाते हैं या नहीं। सबसे मजबूत संकेत हैं अलग अलग users के बीच authorization टेस्ट करना, जो सबसे गंभीर असली bugs पकड़ता है, साथ ही idempotency और error contract की एकरूपता। जो कैंडिडेट सिर्फ सही और गलत payload की बात करते हैं वे इस सतह की उथली समझ दिखा रहे होते हैं।
अपना जवाब कैसे स्ट्रक्चर करें
- पहले contract टटोलें: codes, schema, types।
- हर input field पर व्यवस्थित हमला करें।
- authentication और authorization को अलग अलग चीजों की तरह टेस्ट करें।
- idempotency, pagination और rate limiting कवर करें।
- टेस्ट करें कि कोई dependency फेल होने पर क्या होता है।
उदाहरण जवाब
पहले मैं contract का नक्शा बनाता हूं, क्योंकि बिना docs के मुझे आकार जानना होगा तभी उस पर राय बना सकूंगा। सीधा call, फिर status code, headers, response body, और यह देखना कि fields के नाम और types एक जैसे हैं या नहीं। फिर मैं एक एक करके inputs पर हमला करता हूं: हर जरूरी field हटाकर देखो, जहां संख्या चाहिए वहां string भेजो, ऋणात्मक भेजो, जो लंबाई ठीक लगे उससे आगे की value भेजो, ऐसे अतिरिक्त fields भेजो जो मांगे ही नहीं गए और देखो कि वह उन्हें ठुकराता है या चुपचाप नजरअंदाज करता है। फिर वह हिस्सा जिसकी मुझे सबसे ज्यादा परवाह है, यानी authorization, जो authentication से अलग चीज है। logged in होना अनुमति नहीं है। तो मैं एक user का वैध token लेता हूं और ID से किसी दूसरे user का resource मांगता हूं, क्योंकि यह वर्ग वाला bug आम भी है और सच में गंभीर भी। उसके बाद: दोबारा भेजा गया POST दो records बनाता है क्या, pagination page शून्य पर और अंत से आगे कैसा बर्ताव करता है, error bodies का आकार एक जैसा है क्या, rate limiting है क्या, और नीचे की कोई service धीमी हो तो क्या होता है। मैं उस पर एक proxy लगाकर responses से छेड़छाड़ भी करूंगा ताकि देखूं कि वह संभलकर गिरता है या 500 फेंक देता है।
जल्दी ही यह इंटरव्यू देने जा रहे हैं? GhostPilot आपकी लाइव कॉल सुनता है, सवाल पूछे जाते ही उसे पकड़ लेता है, और रियल-टाइम में एक स्ट्रक्चर्ड जवाब आपकी स्क्रीन पर डाल देता है। अगले मॉक में इसे आजमाएं, या ले लें एक $29 Session Pass, कोई सब्सक्रिप्शन नहीं, असली इंटरव्यू के लिए।
देखें यह कैसे काम करता हैफॉलो-अप सवाल जिनकी उम्मीद रखें
- response schema को आंख से देखने की जगह अपने आप कैसे जांचेंगे?
- यहां 401 और 403 में क्या फर्क है, और क्या आप उसे जांचेंगे?
- ऐसे endpoint को कैसे टेस्ट करेंगे जो सिर्फ किसी दूसरी service से requests लेता है?
QA इंजीनियर के और सवाल
आपका इंटरव्यूअर इसका अपना वर्ज़न पूछेगा। फ्री Question Predictor में अपना असली जॉब डिस्क्रिप्शन पेस्ट कीजिए और वो 20 सवाल पाइए जो उस रोल में सबसे ज्यादा पूछे जाने की संभावना है, साथ में यह भी कि हर सवाल असल में क्या टटोल रहा है।
मेरे सवाल प्रेडिक्ट करें