TestNG XML দিয়ে টেস্ট কনফিগার করা

TestNG XML কনফিগারেশন - টেস্টএনজি (TestNG) - Java Technologies

364

TestNG XML ফাইল ব্যবহার করে টেস্ট কনফিগারেশন এবং রান করার জন্য একটি কার্যকর পদ্ধতি। XML ফাইলের মাধ্যমে আপনি টেস্ট মেথড গ্রুপিং, প্যারামিটার পাসিং, টেস্ট অর্ডার নির্ধারণ এবং প্যারালাল এক্সিকিউশন কনফিগার করতে পারেন। এটি টেস্ট কেস ব্যবস্থাপনায় আরও নমনীয়তা নিয়ে আসে।


TestNG XML ফাইল কি?

TestNG XML ফাইল হলো একটি কনফিগারেশন ফাইল, যা টেস্ট এক্সিকিউশনের জন্য বিভিন্ন ইনস্ট্রাকশন নির্ধারণ করতে ব্যবহৃত হয়। এতে টেস্ট গ্রুপিং, প্যারামিটার সেটিং, এবং একাধিক ক্লাস রান করার সুবিধা দেওয়া হয়।


TestNG XML ফাইল তৈরির ধাপ

ধাপ ১: TestNG XML ফাইল তৈরি করা

  1. আপনার প্রজেক্টে Right-click > New > File-এ যান।
  2. ফাইলের নাম দিন, উদাহরণ: testng.xml
  3. নিচের স্ট্রাকচার অনুসরণ করে XML ফাইল তৈরি করুন:
<!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd">
<suite name="TestSuite">
    <test name="TestGroup">
        <classes>
            <class name="com.example.tests.TestClass1"/>
            <class name="com.example.tests.TestClass2"/>
        </classes>
    </test>
</suite>

স্ট্রাকচারের বিবরণ:

  • <suite>: পুরো টেস্ট স্যুট নির্দেশ করে।
  • <test>: এক বা একাধিক ক্লাস বা মেথড নির্দেশ করে।
  • <classes>: একাধিক টেস্ট ক্লাস তালিকাভুক্ত করে।
  • <class>: প্রতিটি ক্লাসের পুরো প্যাকেজ পাথ উল্লেখ করা হয়।

TestNG XML দিয়ে টেস্ট গ্রুপিং

TestNG XML ফাইল ব্যবহার করে টেস্ট মেথড গ্রুপিং করা যায়। টেস্ট মেথডগুলো গ্রুপিং করার জন্য মেথডে @Test(groups = "groupName") ব্যবহার করতে হয়।

উদাহরণ:

import org.testng.annotations.Test;

public class TestClass1 {

    @Test(groups = {"smoke"})
    public void testMethod1() {
        System.out.println("Smoke Test 1");
    }

    @Test(groups = {"regression"})
    public void testMethod2() {
        System.out.println("Regression Test 1");
    }
}

XML ফাইল কনফিগারেশন:

<!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd">
<suite name="TestSuite">
    <test name="GroupedTests">
        <groups>
            <run>
                <include name="smoke"/>
            </run>
        </groups>
        <classes>
            <class name="com.example.tests.TestClass1"/>
        </classes>
    </test>
</suite>

এটি শুধু "smoke" গ্রুপের মেথড এক্সিকিউট করবে।


TestNG XML দিয়ে প্যারামিটার পাসিং

XML ফাইল ব্যবহার করে প্যারামিটার ডিফাইন এবং তা টেস্ট মেথডে পাঠানো সম্ভব।

উদাহরণ:

import org.testng.annotations.Parameters;
import org.testng.annotations.Test;

public class TestClass2 {

    @Test
    @Parameters({"url", "username"})
    public void testMethod(String url, String username) {
        System.out.println("URL: " + url);
        System.out.println("Username: " + username);
    }
}

XML ফাইল কনফিগারেশন:

<!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd">
<suite name="ParameterizedTestSuite">
    <test name="ParameterizedTest">
        <parameter name="url" value="https://example.com"/>
        <parameter name="username" value="testUser"/>
        <classes>
            <class name="com.example.tests.TestClass2"/>
        </classes>
    </test>
</suite>

এখানে url এবং username প্যারামিটার testMethod-এ পাস হবে।


TestNG XML দিয়ে প্যারালাল টেস্টিং

TestNG XML ফাইল ব্যবহার করে একাধিক থ্রেডে টেস্ট রান করা যায়, যা প্যারালাল টেস্টিং এনাবল করে।

XML ফাইল কনফিগারেশন:

<!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd">
<suite name="ParallelTestSuite" parallel="tests" thread-count="2">
    <test name="Test1">
        <classes>
            <class name="com.example.tests.TestClass1"/>
        </classes>
    </test>
    <test name="Test2">
        <classes>
            <class name="com.example.tests.TestClass2"/>
        </classes>
    </test>
</suite>

প্রধান বৈশিষ্ট্য:

  • parallel: প্যারালাল এক্সিকিউশনের ধরন নির্ধারণ করে (উদাহরণ: tests, methods)।
  • thread-count: প্যারালাল রান করার জন্য থ্রেড সংখ্যা নির্ধারণ করে।

TestNG XML ফাইল রান করা

Eclipse-এ রান করার ধাপ:

  1. testng.xml ফাইলের উপর রাইট-ক্লিক করুন।
  2. Run As > TestNG Suite নির্বাচন করুন।
  3. কনসোলে টেস্ট এক্সিকিউশন আউটপুট দেখতে পাবেন।

সারাংশ

TestNG XML একটি টেস্টিং কনফিগারেশন ম্যানেজমেন্ট টুল, যা টেস্ট কেস গ্রুপিং, প্যারামিটার পাসিং, এবং প্যারালাল টেস্টিং সহজ করে তোলে। এটি ব্যবহার করে টেস্ট ম্যানেজমেন্ট প্রক্রিয়াকে আরও কার্যকর এবং সময়সাশ্রয়ী করা সম্ভব।

Content added By
Promotion

Are you sure to start over?

Loading...