TestNG Parameterization

Java Technologies - টেস্টএনজি (TestNG)
109
109

টেস্টএনজি প্যারামিটারাইজেশন কী?

TestNG-এর প্যারামিটারাইজেশন হলো এমন একটি ফিচার যা টেস্ট কেসগুলোতে ডায়নামিক ডেটা পাস করার সুযোগ দেয়। এটি বিশেষত তখন উপযোগী হয়, যখন একই টেস্ট কেস বিভিন্ন ইনপুট ডেটার জন্য একাধিকবার চালানোর প্রয়োজন হয়।

TestNG প্যারামিটারাইজেশন প্রধানত দুইভাবে করা যায়:

  1. XML প্যারামিটারাইজেশন
  2. @DataProvider প্যারামিটারাইজেশন

XML প্যারামিটারাইজেশন

TestNG XML ফাইল ব্যবহার করে প্যারামিটার ডিফাইন এবং পাস করা হয়। XML প্যারামিটারাইজেশনের মাধ্যমে ইনপুট ডেটা সরাসরি XML কনফিগারেশন ফাইলে সংজ্ঞায়িত করা হয়।

উদাহরণ

XML ফাইল:

<!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd">
<suite name="Suite">
    <test name="Parameter Test">
        <parameter name="username" value="testUser" />
        <parameter name="password" value="pass123" />
        <classes>
            <class name="com.example.ParameterTest" />
        </classes>
    </test>
</suite>

Java কোড:

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

public class ParameterTest {
    
    @Test
    @Parameters({ "username", "password" })
    public void loginTest(String username, String password) {
        System.out.println("Username: " + username);
        System.out.println("Password: " + password);
    }
}

আউটপুট:

Username: testUser  
Password: pass123

সুবিধা

  • সহজ কনফিগারেশন।
  • কেবলমাত্র স্ট্যাটিক ডেটার জন্য কার্যকর।

@DataProvider প্যারামিটারাইজেশন

@DataProvider হলো TestNG-এর আরেকটি শক্তিশালী প্যারামিটারাইজেশন ফিচার। এটি ডেটা ড্রাইভেন টেস্টিং (Data-Driven Testing) করার জন্য ব্যবহৃত হয়, যেখানে টেস্ট মেথডে একাধিক ইনপুট ডেটা পাস করা হয়।

উদাহরণ

Java কোড:

import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;

public class DataProviderTest {
    
    @DataProvider(name = "loginData")
    public Object[][] dataProviderMethod() {
        return new Object[][] { 
            { "user1", "pass1" }, 
            { "user2", "pass2" }, 
            { "user3", "pass3" }
        };
    }
    
    @Test(dataProvider = "loginData")
    public void loginTest(String username, String password) {
        System.out.println("Username: " + username);
        System.out.println("Password: " + password);
    }
}

আউটপুট:

Username: user1  
Password: pass1  

Username: user2  
Password: pass2  

Username: user3  
Password: pass3

XML এবং @DataProvider-এর তুলনা

বৈশিষ্ট্যXML প্যারামিটারাইজেশন@DataProvider প্যারামিটারাইজেশন
ডেটা স্টোরেজXML ফাইলে স্ট্যাটিক ডেটাকোডের মধ্যে ডাইনামিক ডেটা
ইনপুট ফ্লেক্সিবিলিটিসীমিতআরও বেশি ফ্লেক্সিবল
ডেটা ড্রাইভেন টেস্টিংসম্ভব নয়সম্পূর্ণ সম্ভব
পর্যবেক্ষণযোগ্যতাXML ফাইলের মাধ্যমে সহজকোডের মধ্যে যুক্ত করা প্রয়োজন

প্যারামিটারাইজেশনের প্রয়োজনীয়তা

১. ডেটা ড্রাইভেন টেস্টিং: একাধিক ইনপুট ডেটা ব্যবহার করে টেস্টিং প্রক্রিয়াকে সহজ করে।
২. রিইউজেবল টেস্ট কেস: এক টেস্ট মেথড দিয়ে বিভিন্ন ডেটা দিয়ে কাজ করা যায়।
৩. পরীক্ষণক্ষেত্রের বৈচিত্র: একই ফিচারের জন্য বিভিন্ন ধরনের ইনপুট যাচাই করা সহজ হয়।
৪. রানটাইম ডেটা পাস: টেস্ট কেস চলাকালীন ডেটা পাসের সুযোগ দেয়।


TestNG প্যারামিটারাইজেশন টেস্টিং প্রক্রিয়াকে আরও কার্যকরী এবং ডাইনামিক করে তোলে, বিশেষত যেখানে বড় পরিসরে ডেটা ড্রাইভেন টেস্টিং প্রয়োজন। XML এবং @DataProvider উভয়ই ভিন্ন পরিস্থিতিতে টেস্টিংয়ের জন্য উপযোগী।

Content added By

TestNG এর মধ্যে টেস্ট প্যারামিটারাইজেশন এর ধারণা

83
83

টেস্ট প্যারামিটারাইজেশন (Test Parameterization) একটি গুরুত্বপূর্ণ ধারণা যা টেস্টএনজি-তে টেস্ট কেসগুলোকে ডাইনামিক ডেটার সঙ্গে চালাতে ব্যবহার করা হয়। এটি মূলত একই টেস্ট কেসে ভিন্ন ভিন্ন ডেটা ইনপুট দিয়ে টেস্ট করার জন্য ব্যবহৃত হয়। প্যারামিটারাইজেশন আপনাকে কোড পুনঃব্যবহারযোগ্য করতে এবং ম্যানুয়াল ডেটা পরিবর্তনের ঝামেলা থেকে মুক্তি দেয়।


প্যারামিটারাইজেশন করার পদ্ধতি

টেস্টএনজিতে প্যারামিটারাইজড টেস্ট করার দুটি পদ্ধতি রয়েছে:

  • TestNG.xml এর মাধ্যমে প্যারামিটার পাস করা
  • @DataProvider অ্যানোটেশন ব্যবহার করে প্যারামিটার পাস করা

TestNG.xml এর মাধ্যমে প্যারামিটার পাস করা

আপনি TestNG.xml ফাইল ব্যবহার করে টেস্টে প্যারামিটার পাস করতে পারেন।

উদাহরণ

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

public class ParameterizationWithXML {

    @Test
    @Parameters({"username", "password"})
    public void loginTest(String username, String password) {
        System.out.println("Username: " + username);
        System.out.println("Password: " + password);
    }
}

TestNG.xml ফাইল

<!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd">
<suite name="Suite">
    <test name="Parameter Test">
        <parameter name="username" value="testUser"/>
        <parameter name="password" value="testPass"/>
        <classes>
            <class name="ParameterizationWithXML"/>
        </classes>
    </test>
</suite>

আউটপুট

Username: testUser
Password: testPass

TestNG.xml এর মাধ্যমে ইনপুট প্যারামিটার সরবরাহ করা হয় এবং @Parameters অ্যানোটেশন ব্যবহার করে মেথডে তা রিসিভ করা হয়।


@DataProvider অ্যানোটেশন ব্যবহার করে প্যারামিটার পাস করা

@DataProvider একটি শক্তিশালী পদ্ধতি যা একাধিক ডেটা সেট সরবরাহ করতে পারে। এটি বড় আকারের ডেটা-চালিত টেস্টিং-এর জন্য আরও কার্যকর।

উদাহরণ

import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;

public class ParameterizationWithDataProvider {

    @DataProvider(name = "loginData")
    public Object[][] provideData() {
        return new Object[][]{
            {"user1", "pass1"},
            {"user2", "pass2"},
            {"user3", "pass3"}
        };
    }

    @Test(dataProvider = "loginData")
    public void loginTest(String username, String password) {
        System.out.println("Username: " + username + ", Password: " + password);
    }
}

আউটপুট

Username: user1, Password: pass1
Username: user2, Password: pass2
Username: user3, Password: pass3

এখানে @DataProvider একটি ডেটা সোর্স হিসেবে কাজ করে এবং loginTest মেথডে প্যারামিটার পাস করে।


TestNG.xml এবং @DataProvider এর মধ্যে পার্থক্য

বৈশিষ্ট্যTestNG.xml@DataProvider
ডেটা সোর্সস্ট্যাটিক ডেটাডায়নামিক এবং প্রোগ্রাম্যাটিক ডেটা
ডেটার নমনীয়তাসীমিত নমনীয়তাবড় ডেটাসেট সাপোর্ট করে
মাল্টিপল ইনপুটসীমিতএকাধিক ডেটা সেট সহজেই সাপোর্ট করে
ইনটিগ্রেশনসহজ, ম্যানুয়ালজাভা কোডের মাধ্যমে কাস্টমাইজেবল

প্যারামিটারাইজড টেস্টের সুবিধা

  • ডেটা-চালিত টেস্টিং: ভিন্ন ভিন্ন ডেটা সেট দিয়ে একই টেস্ট পুনরায় চালানো যায়।
  • কোড পুনঃব্যবহারযোগ্যতা: একই মেথড একাধিক ইনপুট ডেটার জন্য ব্যবহার করা যায়।
  • বড় ডেটাসেট সাপোর্ট: @DataProvider ব্যবহার করে ডায়নামিক ডেটা চালানো সহজ হয়।
  • পরীক্ষণের স্বয়ংক্রিয়তা: একাধিক ডেটার উপর ভিত্তি করে টেস্টিং স্বয়ংক্রিয় করা যায়।

টেস্টএনজি-তে টেস্ট প্যারামিটারাইজেশন বড় প্রজেক্টের জন্য একটি অত্যন্ত কার্যকর পদ্ধতি। এটি একই টেস্ট কেসে ভিন্ন ভিন্ন ডেটার ওপর ভিত্তি করে পরীক্ষার মাধ্যমে কোডের কার্যকারিতা নিশ্চিত করতে সাহায্য করে।

Content added By

@Parameters অ্যানোটেশন এর ব্যবহার

92
92

@Parameters অ্যানোটেশনটি টেস্ট মেথডে ডেটা পাস করার জন্য TestNG-তে ব্যবহৃত হয়। এটি মূলত TestNG XML ফাইলের মাধ্যমে টেস্ট মেথডে ইনপুট প্যারামিটার পাস করার একটি সুবিধাজনক পদ্ধতি।


@Parameters কীভাবে কাজ করে?

  1. XML ফাইলে প্যারামিটার ডিক্লেয়ার করুন:
    TestNG XML ফাইলের মধ্যে <parameter> ট্যাগ ব্যবহার করে প্যারামিটার ডিফাইন করতে হয়।
  2. টেস্ট মেথডে প্যারামিটার ইনজেকশন:
    @Parameters অ্যানোটেশন ব্যবহার করে টেস্ট মেথডে XML ফাইল থেকে প্যারামিটার রিড করা হয়।

উদাহরণ

ধরুন, আমরা একটি টেস্ট মেথড তৈরি করব যেখানে দুটি প্যারামিটার username এবং password পাস করা হবে।

১. টেস্ট ক্লাস

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

public class ParametersExample {

    @Test
    @Parameters({"username", "password"})
    public void loginTest(String username, String password) {
        System.out.println("Username: " + username);
        System.out.println("Password: " + password);
    }
}

২. XML ফাইল

testng.xml ফাইল:

<suite name="SuiteExample">
    <test name="LoginTest">
        <parameter name="username" value="testuser"/>
        <parameter name="password" value="password123"/>
        <classes>
            <class name="ParametersExample"/>
        </classes>
    </test>
</suite>

৩. আউটপুট

Username: testuser
Password: password123

একাধিক প্যারামিটার পাস করা

TestNG-তে একাধিক প্যারামিটার পাস করা সহজ। টেস্ট মেথডে একাধিক প্যারামিটার যোগ করে এবং XML ফাইলে তাদের ডিফাইন করে এটি সম্পন্ন করা যায়।

উদাহরণ: তিনটি প্যারামিটার পাস করা

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

public class MultiParametersExample {

    @Test
    @Parameters({"url", "browser", "timeout"})
    public void configTest(String url, String browser, int timeout) {
        System.out.println("URL: " + url);
        System.out.println("Browser: " + browser);
        System.out.println("Timeout: " + timeout);
    }
}

testng.xml:

<suite name="SuiteExample">
    <test name="ConfigTest">
        <parameter name="url" value="http://example.com"/>
        <parameter name="browser" value="Chrome"/>
        <parameter name="timeout" value="30"/>
        <classes>
            <class name="MultiParametersExample"/>
        </classes>
    </test>
</suite>

আউটপুট:

URL: http://example.com
Browser: Chrome
Timeout: 30

ডিফল্ট ভ্যালু ব্যবহার করা

যদি XML ফাইলে কোনো প্যারামিটার উল্লেখ না করা হয়, তবে ডিফল্ট ভ্যালু সেট করা যায় কোডের মধ্যে।

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

public class DefaultParametersExample {

    @Test
    @Parameters({"username", "password"})
    public void loginTest(String username, String password) {
        // ডিফল্ট ভ্যালু
        if (username == null) username = "defaultUser";
        if (password == null) password = "defaultPass";

        System.out.println("Username: " + username);
        System.out.println("Password: " + password);
    }
}

বাস্তব জীবনে ব্যবহার

  1. কনফিগারেশন সেটআপ:
    ব্রাউজার টাইপ, URL, অথবা সার্ভার ইনফরমেশন পাস করতে ব্যবহার করা যায়।
  2. পরিবেশভিত্তিক টেস্টিং:
    ডেভেলপমেন্ট, টেস্টিং, অথবা প্রোডাকশন পরিবেশ অনুযায়ী টেস্টিং কনফিগারেশন সেট করা।
  3. ডেটা চালিত টেস্টিং:
    একাধিক ভিন্ন ইনপুট ডেটা ব্যবহার করে টেস্ট কেস চালানোর জন্য।

সীমাবদ্ধতা

  • শুধুমাত্র XML ফাইলের মাধ্যমে প্যারামিটার পাস করা যায়।
  • বড় এবং জটিল ডেটা সেটের জন্য DataProvider ব্যবহার করা বেশি কার্যকর।

সারাংশ

@Parameters অ্যানোটেশন TestNG-তে টেস্ট মেথডে সহজে প্যারামিটার পাস করার সুযোগ দেয়। এটি বিশেষ করে কনফিগারেশন সেটআপ এবং পরিবেশভিত্তিক টেস্টিংয়ের জন্য কার্যকর। TestNG XML ফাইলের সাথে একত্রে কাজ করে এটি টেস্ট স্ক্রিপ্টের গঠন আরও সহজ করে তোলে।

Content added By

TestNG XML এর মাধ্যমে প্যারামিটার পাস করা

92
92

TestNG XML কনফিগারেশন ফাইল ব্যবহার করে টেস্ট মেথডে প্যারামিটার (Parameter) পাস করা সম্ভব। এটি সাধারণত টেস্ট কনফিগারেশনের সময় ভিন্ন ডেটা প্রদান করতে ব্যবহৃত হয়।


TestNG XML এর মাধ্যমে প্যারামিটার পাস করার ধাপ

  1. TestNG XML ফাইল তৈরি করুন।
  2. <parameter> ট্যাগ ব্যবহার করে প্যারামিটার ডিফাইন করুন।
  3. টেস্ট মেথডে @Parameters অ্যানোটেশন ব্যবহার করুন।
  4. XML ফাইল থেকে প্যারামিটার রিড করুন এবং টেস্ট মেথডে ব্যবহার করুন।

উদাহরণ: সাধারণ প্যারামিটার পাস

Step 1: TestNG XML ফাইল

<!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd">
<suite name="Parameter Suite">
    <test name="Parameter Test">
        <parameter name="username" value="TestUser"/>
        <parameter name="password" value="12345"/>
        <classes>
            <class name="ParameterExample"/>
        </classes>
    </test>
</suite>

Step 2: টেস্ট মেথডে প্যারামিটার রিড করা

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

public class ParameterExample {

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

আউটপুট

Username: TestUser
Password: 12345

উদাহরণ: প্যারামিটারকে ডিফল্ট ভ্যালু সহ ব্যবহার

Step 1: TestNG XML ফাইল

<!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd">
<suite name="Parameter Suite">
    <test name="Default Parameter Test">
        <parameter name="env" value="Production"/>
        <classes>
            <class name="DefaultParameterExample"/>
        </classes>
    </test>
</suite>

Step 2: প্যারামিটার রিড করার সময় ডিফল্ট ভ্যালু দেওয়া

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

public class DefaultParameterExample {

    @Test
    @Parameters({"env"})
    public void testMethod(String env) {
        System.out.println("Environment: " + env);
    }
}

আউটপুট

Environment: Production

উদাহরণ: একাধিক প্যারামিটার ব্যবহার

Step 1: TestNG XML ফাইল

<!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd">
<suite name="Multiple Parameter Suite">
    <test name="Multiple Parameter Test">
        <parameter name="browser" value="Chrome"/>
        <parameter name="version" value="110.0"/>
        <classes>
            <class name="MultipleParameterExample"/>
        </classes>
    </test>
</suite>

Step 2: টেস্ট মেথডে একাধিক প্যারামিটার রিড করা

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

public class MultipleParameterExample {

    @Test
    @Parameters({"browser", "version"})
    public void testMethod(String browser, String version) {
        System.out.println("Browser: " + browser);
        System.out.println("Version: " + version);
    }
}

আউটপুট

Browser: Chrome
Version: 110.0

DataProvider বনাম TestNG XML প্যারামিটার

বৈশিষ্ট্যDataProviderTestNG XML প্যারামিটার
ডেটা উৎসকোডে ডেটা সরবরাহ করা হয়।XML ফাইল থেকে ডেটা সরবরাহ করা হয়।
প্রতিস্থাপন ক্ষমতাজটিল ডেটা সেটের জন্য কার্যকর।সাধারণ প্যারামিটার পাস করার জন্য কার্যকর।
ডাইনামিক ডেটাডাইনামিক ডেটা জেনারেট করা যায়।ডেটা স্ট্যাটিক থাকে।

সুবিধা

  • TestNG XML সহজ কনফিগারেশন: টেস্ট কনফিগারেশনে প্যারামিটার ব্যবহার সহজ।
  • পুনঃব্যবহারযোগ্যতা: একবার প্যারামিটার সেট করে, তা একাধিক টেস্টে ব্যবহার করা যায়।
  • পরিবর্তন সহজ: XML ফাইলের ভ্যালু পরিবর্তন করে কোড না পরিবর্তন করেও ডেটা আপডেট করা যায়।

সারাংশ

TestNG XML এর মাধ্যমে প্যারামিটার পাস করা সহজ এবং কার্যকর পদ্ধতি, বিশেষত যেখানে ডেটা কনফিগারেবল এবং সহজে পরিবর্তনযোগ্য হওয়া দরকার। এটি প্রজেক্টের টেস্ট কনফিগারেশনকে আরও উন্নত করে।

Content added By

উদাহরণ সহ Parameterization

103
103

Parameterization কী?

Parameterization টেস্টএনজি (TestNG) তে এমন একটি ফিচার যা টেস্ট মেথডে ডায়নামিক ডেটা প্রদান করতে ব্যবহার করা হয়। এটি কনফিগারেশন ফাইল (TestNG XML) বা @Parameters অ্যানোটেশনের মাধ্যমে ইনপুট সরবরাহ করে।

Parameterization এর প্রয়োজনীয়তা

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

Parameterization এর ধরন

১. TestNG XML ফাইলের মাধ্যমে Parameterization

TestNG XML ফাইল ব্যবহার করে টেস্ট মেথডে ডেটা সরবরাহ করা যায়।

উদাহরণ:

ধাপ ১: কোড তৈরি করুন
import org.testng.annotations.Parameters;
import org.testng.annotations.Test;

public class ParameterizationExample {

    @Test
    @Parameters({"username", "password"})
    public void testLogin(String username, String password) {
        System.out.println("Username: " + username);
        System.out.println("Password: " + password);
    }
}
ধাপ ২: TestNG XML ফাইল তৈরি করুন
<!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd">
<suite name="ParameterizationSuite">
    <test name="LoginTest">
        <classes>
            <class name="ParameterizationExample">
                <parameter name="username" value="admin"/>
                <parameter name="password" value="admin123"/>
            </class>
        </classes>
    </test>
</suite>

আউটপুট:

Username: admin  
Password: admin123

২. @DataProvider ব্যবহার করে Parameterization

@DataProvider অ্যানোটেশন ব্যবহার করে একাধিক ইনপুট সরবরাহ করা যায়। এটি ডেটা-ড্রিভেন টেস্টিংয়ে বেশি ব্যবহৃত হয়।

উদাহরণ:

import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;

public class DataProviderExample {

    @DataProvider(name = "loginData")
    public Object[][] dataProviderMethod() {
        return new Object[][] {
            {"admin", "admin123"},
            {"user1", "password1"},
            {"user2", "password2"}
        };
    }

    @Test(dataProvider = "loginData")
    public void testLogin(String username, String password) {
        System.out.println("Username: " + username + ", Password: " + password);
    }
}

আউটপুট:

Username: admin, Password: admin123  
Username: user1, Password: password1  
Username: user2, Password: password2

Parameterization এর মাধ্যমে গণনা টেস্ট

উদাহরণ: দুই সংখ্যার যোগফল টেস্ট করার জন্য Parameterization ব্যবহার।

TestNG XML ফাইলের মাধ্যমে:

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

public class CalculatorTest {

    @Test
    @Parameters({"num1", "num2"})
    public void testAddition(int num1, int num2) {
        int result = num1 + num2;
        System.out.println("Addition of " + num1 + " and " + num2 + " is: " + result);
    }
}

TestNG XML:

<!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd">
<suite name="CalculatorSuite">
    <test name="AdditionTest">
        <classes>
            <class name="CalculatorTest">
                <parameter name="num1" value="10"/>
                <parameter name="num2" value="20"/>
            </class>
        </classes>
    </test>
</suite>

আউটপুট:

Addition of 10 and 20 is: 30

@DataProvider ব্যবহার করে:

import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;

public class CalculatorDataProvider {

    @DataProvider(name = "additionData")
    public Object[][] dataProviderMethod() {
        return new Object[][] {
            {5, 3, 8},
            {10, 15, 25},
            {7, -2, 5}
        };
    }

    @Test(dataProvider = "additionData")
    public void testAddition(int num1, int num2, int expectedResult) {
        int actualResult = num1 + num2;
        System.out.println("Addition of " + num1 + " and " + num2 + " is: " + actualResult);
        assert actualResult == expectedResult : "Test Failed!";
    }
}

আউটপুট:

Addition of 5 and 3 is: 8  
Addition of 10 and 15 is: 25  
Addition of 7 and -2 is: 5

Parameterization এর সুবিধা

  • কোড রিইউজেবিলিটি: একই টেস্ট মেথড বারবার ব্যবহার করা যায়।
  • ডায়নামিক ইনপুট: XML বা @DataProvider থেকে সরাসরি ইনপুট ডেটা আসতে পারে।
  • সহজ রক্ষণাবেক্ষণ: ডেটা আলাদাভাবে সংজ্ঞায়িত থাকায় টেস্ট কোড পরিষ্কার থাকে।
  • টেস্ট কভারেজ বৃদ্ধি: একাধিক ডেটা সেট দিয়ে টেস্ট চালানোর মাধ্যমে কভারেজ বাড়ানো যায়।

সারাংশ

TestNG-র Parameterization বৈশিষ্ট্য ডেটা-ড্রিভেন টেস্টিংয়ের একটি অত্যন্ত কার্যকর উপায়। এটি কনফিগারেশন ফাইল বা @DataProvider ব্যবহার করে টেস্ট মেথডে ইনপুট প্রদান সহজ করে। এটি বড় মাপের টেস্টিং প্রজেক্টে সময় বাঁচায় এবং টেস্ট কভারেজ উন্নত করে।

Content added By
Promotion