स्टेट ट्रांज़िशन जनरेटर

ब्राउज़र में चलता है टेस्ट डिज़ाइन

किसी workflow का मॉडल बनाएँ (जैसे order: new → paid → shipped) और state तालिका, transition-coverage टेस्ट केस तथा negative (अमान्य transition) टेस्ट के साथ एक Mermaid डायग्राम पाएँ।

गोपनीयता: यह टूल पूरी तरह आपके ब्राउज़र में चलता है। आपका इनपुट कभी आपके डिवाइस से बाहर नहीं जाता।
टूल लोड हो रहा है…

ब्लैक-बॉक्स टेस्ट डिज़ाइन तकनीकें क्या हैं?

ब्लैक-बॉक्स तकनीकें कोड पढ़े बिना स्पेसिफ़िकेशन से टेस्ट केस निकालती हैं: इक्विवैलेंस पार्टिशनिंग उन इनपुट को समूहित करती है जो एक जैसा व्यवहार करें, बाउंड्री वैल्यू एनालिसिस हर समूह के किनारे (0, 1, max, max+1) परखती है, डिसीज़न टेबल शर्तों के संयोजन गिनाती हैं, स्टेट ट्रांज़िशन टेस्टिंग अनुमत और निषिद्ध स्टेट बदलावों पर चलती है, और पेयरवाइज़ टेस्टिंग पूरे गुणनफल से कहीं कम केस में पैरामीटर वैल्यू की हर जोड़ी कवर करती है।

गाइड पढ़ें: टेस्ट केस कैसे लिखें

स्टेट ट्रांज़िशन जनरेटर कैसे इस्तेमाल करें

  1. हर पंक्ति में एक transition लिखें; पहला state ही initial state होता है।
  2. 0-switch या 1-switch coverage चुनें और तय करें कि अमान्य-transition टेस्ट शामिल करने हैं या नहीं।
  3. state तालिका, Mermaid डायग्राम और टेस्ट केस पाने के लिए Generate दबाएँ।

स्टेट ट्रांज़िशन जनरेटर की खूबियाँ

  • transitions "State --event--> State" के रूप में, वैकल्पिक guards के साथ
  • State × event तालिका जो वैध लक्ष्य और अमान्य संयोजन दिखाती है
  • 0-switch और 1-switch coverage के टेस्ट केस
  • हर अमान्य transition के लिए negative टेस्ट
  • पहुँच से बाहर state और ग़ायब final state की चेतावनियाँ
  • दस्तावेज़ीकरण के लिए Mermaid stateDiagram-v2 टेक्स्ट

स्टेट ट्रांज़िशन जनरेटर का उदाहरण

ऑर्डर का workflow

इनपुट:

New --pay--> Paid
Paid --ship--> Shipped
Shipped --deliver--> Delivered
New --cancel--> Cancelled

आउटपुट:

ST-001  New —pay→ Paid                          positive
ST-005  New —pay→ Paid —ship→ Shipped           positive (1-switch)
ST-007  Invalid: "ship" while in New             negative

stateDiagram-v2
  [*] --> New
  New --> Paid: pay
  Paid --> Shipped: ship
ऑर्डर का workflow डायग्राम के रूप में: 0-switch coverage हर तीर को एक बार टेस्ट करता है, और 1-switch लगातार आने वाले तीरों के हर जोड़े को।
ट्रांज़िशन
#सेतकevent · 0-switch टेस्ट
1NewशुरुआतPaidpay · ST-001
2PaidShippedship · ST-002
3ShippedDeliveredअंतdeliver · ST-003
4NewशुरुआतCancelledअंतcancel · ST-004

टूल की डिफ़ॉल्ट सेटिंग में 1-switch ST-005 New → Paid → Shipped और ST-006 Paid → Shipped → Delivered जोड़ता है; बिना तीर वाले 16 state × event संयोजन अमान्य-transition टेस्ट हैं, ST-007 से शुरू।

स्टेट ट्रांज़िशन जनरेटर के बारे में अक्सर पूछे जाने वाले सवाल

transitions कैसे लिखूँ?

हर पंक्ति में एक, "State --event--> State" के रूप में। Guards ब्रैकेट में जाते हैं ("Delivered --return [within 14 days]--> Returned")। जिस state का ज़िक्र सबसे पहले होता है वही initial state है।

0-switch और 1-switch coverage क्या है?

0-switch हर एक transition को टेस्ट करता है। 1-switch लगातार आने वाले दो transitions के हर वैध जोड़े को टेस्ट करता है, जिससे वे बग पकड़ में आते हैं जो किसी ख़ास क्रम के बाद ही दिखते हैं।

अमान्य-transition टेस्ट क्या हैं?

हर उस state × event संयोजन के लिए जिसका कोई transition परिभाषित नहीं है, एक negative टेस्ट जाँचता है कि event अस्वीकार हो और state न बदले — workflow बग का सबसे आम स्रोत यही है।

Mermaid डायग्राम का क्या करूँ?

उसे GitHub, GitLab, Notion, Obsidian या mermaid.live में पेस्ट करके state डायग्राम रेंडर करें — रिव्यू और दस्तावेज़ीकरण के लिए।

संदर्भ

  • ISTQB Certified Tester Foundation Level (CTFL) v4.0ISTQB · 2023सॉफ़्टवेयर टेस्टिंग का फ़ाउंडेशन पाठ्यक्रम: टेस्ट स्तर और प्रकार, टेस्ट डिज़ाइन तकनीकें, टेस्ट प्रबंधन और टूल।
  • ISTQB GlossaryISTQBटेस्टिंग शब्दों की मानक परिभाषाएँ — टेस्ट केस, रिग्रेशन टेस्टिंग, सेवेरिटी, प्रायोरिटी, बाउंड्री वैल्यू एनालिसिस आदि।
  • ISO/IEC/IEEE 29119-1:2022 — Software and systems engineering — Software testing — Part 1: General conceptsISO/IEC/IEEE · 2022सॉफ़्टवेयर टेस्टिंग का अंतरराष्ट्रीय मानक: अवधारणाएँ, प्रक्रियाएँ, दस्तावेज़ीकरण और तकनीकें।