Lua:
टेस्ट लिखना

कैसे:

लुआ, एक हल्की फिर भी शक्तिशाली स्क्रिप्टिंग भाषा होने के नाते, एक बिल्ट-इन परीक्षण फ्रेमवर्क को शामिल नहीं करती है। हालाँकि, थर्ड-पार्टी लाइब्रेरीज जैसे कि बस्टेड (Busted) और लुआयूनिट (LuaUnit) परीक्षण को अपेक्षाकृत सरल बनाती हैं। यहाँ, हम दोनों का उपयोग करके उदाहरण देखेंगे।

बस्टेड का उपयोग करते हुए

बस्टेड एक लोकप्रिय लुआ परीक्षण फ्रेमवर्क है जो परीक्षण लिखने के लिए एक लचीला तरीका प्रदान करता है। पहली बार, बस्टेड को लुआरॉक्स (लुआ का पैकेज मैनेजर) के माध्यम से luarocks install busted के साथ स्थापित करें। एक बार स्थापित होने के बाद, आप अपने परीक्षण लिख सकते हैं। यहाँ दो संख्याओं का योग करने वाले एक फंक्शन add का एक साधारण परीक्षण है:

-- add.lua
local function add(a, b)
  return a + b
end

return add
-- add_spec.lua
local add = require('add')

describe("Add function", function()
  it("should add two numbers correctly", function()
    assert.are.equal(5, add(2, 3))
  end)
end)

परीक्षण चलाने के लिए, अपने टर्मिनल में busted निष्पादित करें। पासिंग परीक्षण के लिए नमूना आउटपुट इस प्रकार दिखेगा:

●
1 सफलता / 0 विफलताएँ / 0 त्रुटियाँ / 0 लंबित: 0.002 सेकंड

लुआयूनिट का उपयोग करते हुए

लुआयूनिट एक अन्य परीक्षण फ्रेमवर्क है जो xUnit सम्मेलनों का अनुसरण करता है और सेटअप करने में आसान है। लुआयूनिट को लुआरॉक्स का उपयोग करके स्थापित करें luarocks install luaunit. यहाँ आप ऊपर के समान एक परीक्षण कैसे लिख सकते हैं:

-- add.lua वही रहता है

-- test_add.lua
luaunit = require('luaunit')
local add = require('add')

function testAdd()
  luaunit.assertEquals(add(2, 3), 5)
end

os.exit(luaunit.LuaUnit.run())

इस स्क्रिप्ट को सीधे लुआ के माध्यम से चलाने पर (lua test_add.lua) कुछ इस प्रकार का आउटपुट दिखाई देगा:

.
0.001 सेकंड में 1 परीक्षण चलाया, 1 सफलता, 0 विफलताएँ

बस्टेड और लुआयूनिट दोनों विभिन्न परीक्षण परिदृश्यों को संभालने के लिए व्यापक सुविधाएँ प्रदान करते हैं, जिसमें मॉकिंग, स्पाईंग, और एसिंक्रोनस परीक्षण शामिल हैं। उनमें से चयन आपकी परियोजना की विशेष आवश्यकताओं और आपकी व्यक्तिगत प्राथमिकताओं के बारे में है, सिंटैक्स और कार्यक्षमता को लेकर।