JUnit হল Java-তে ইউনিট টেস্টিং করার জন্য ব্যবহৃত একটি ফ্রেমওয়ার্ক। JUnit এর মাধ্যমে আপনি কোডের বিভিন্ন অংশ পরীক্ষা করতে পারেন এবং নিশ্চিত করতে পারেন যে আপনার কোড ঠিকভাবে কাজ করছে। assertEquals(), assertTrue(), এবং assertFalse() হল JUnit এর কিছু গুরুত্বপূর্ণ Assertion Method যা আপনাকে টেস্টের ফলাফল যাচাই করতে সহায়তা করে।
এই টিউটোরিয়ালে আমরা assertEquals(), assertTrue(), এবং assertFalse() এর ব্যবহার সম্পর্কে আলোচনা করব এবং এর মাধ্যমে কিভাবে ইউনিট টেস্টে ভ্যালিডেশন করা যায় তা দেখাব।
১. assertEquals() এর ব্যবহার
assertEquals() মেথডটি দুইটি মানের মধ্যে সমতা যাচাই করার জন্য ব্যবহৃত হয়। এটি দুটি মানের তুলনা করে এবং যদি মান দুটি সমান না হয়, তবে এটি একটি ত্রুটি (failure) প্রদান করবে।
Syntax:
assertEquals(expected, actual);
- expected: প্রত্যাশিত মান
- actual: আসল মান, যা যাচাই করা হচ্ছে
উদাহরণ:
import org.junit.Test;
import static org.junit.Assert.assertEquals;
public class MyTest {
@Test
public void testAddition() {
int result = 2 + 3;
assertEquals(5, result); // expected value 5, actual value is the result of 2 + 3
}
}
এখানে, assertEquals(5, result) যাচাই করবে যে 2 + 3 এর ফলাফল আসলেই 5 কিনা।
২. assertTrue() এর ব্যবহার
assertTrue() মেথডটি একটি শর্ত যাচাই করতে ব্যবহৃত হয়। এটি একটি বুলিয়ান মান যাচাই করে, এবং যদি এটি true না হয়, তাহলে এটি একটি ত্রুটি প্রদান করবে।
Syntax:
assertTrue(condition);
- condition: এটি একটি বুলিয়ান এক্সপ্রেশন যা true হতে হবে।
উদাহরণ:
import org.junit.Test;
import static org.junit.Assert.assertTrue;
public class MyTest {
@Test
public void testCondition() {
int number = 10;
assertTrue(number > 5); // checks if number is greater than 5
}
}
এখানে, assertTrue(number > 5) যাচাই করবে যে number ৫ এর বেশি কিনা। যদি শর্তটি false হয়, তবে এটি একটি ত্রুটি তৈরি করবে।
৩. assertFalse() এর ব্যবহার
assertFalse() মেথডটি একটি শর্ত যাচাই করতে ব্যবহৃত হয়, তবে এটি নিশ্চিত করে যে শর্তটি false হওয়া উচিত। যদি শর্তটি true হয়, তাহলে এটি একটি ত্রুটি প্রদর্শন করবে।
Syntax:
assertFalse(condition);
- condition: এটি একটি বুলিয়ান এক্সপ্রেশন যা false হতে হবে।
উদাহরণ:
import org.junit.Test;
import static org.junit.Assert.assertFalse;
public class MyTest {
@Test
public void testCondition() {
int number = 3;
assertFalse(number > 5); // checks if number is not greater than 5
}
}
এখানে, assertFalse(number > 5) যাচাই করবে যে number ৫ এর চেয়ে বড় নয়, অর্থাৎ শর্তটি false হওয়া উচিত।
৪. মিথ্যা/সঠিক ব্যবহার
- assertEquals() মূলত দুটি মানের সমতা যাচাই করতে ব্যবহৃত হয়।
- assertTrue() এবং assertFalse() শর্তের সঠিকতা বা ভুলতা যাচাই করতে ব্যবহৃত হয়, যেখানে assertTrue() শর্তটি true হওয়া উচিত এবং assertFalse() শর্তটি false হওয়া উচিত।
৫. বিশেষ পরিস্থিতিতে Assertion ব্যবহার
assertEquals() এবং assertTrue() এর মাধ্যমে আপনি বিভিন্ন পরিস্থিতি যেমন, বেসিক অপারেশন, কন্ডিশনাল চেক, ডেটা ভ্যালিডেশন ইত্যাদির জন্য ইউনিট টেস্ট তৈরি করতে পারবেন। উদাহরণস্বরূপ:
উদাহরণ ১: String Comparison
import org.junit.Test;
import static org.junit.Assert.assertEquals;
public class MyTest {
@Test
public void testStringEquality() {
String expected = "Hello";
String actual = "Hello";
assertEquals(expected, actual); // checking if both strings are equal
}
}
উদাহরণ ২: Boolean Condition
import org.junit.Test;
import static org.junit.Assert.assertTrue;
public class MyTest {
@Test
public void testBooleanCondition() {
boolean isAdult = true;
assertTrue(isAdult); // checking if isAdult is true
}
}
উদাহরণ ৩: Non-equality Test
import org.junit.Test;
import static org.junit.Assert.assertFalse;
public class MyTest {
@Test
public void testNotEqual() {
int x = 4;
int y = 5;
assertFalse(x == y); // checking if x is not equal to y
}
}
সারাংশ
JUnit এ assertEquals(), assertTrue(), এবং assertFalse() হল কিছু মৌলিক assertion মেথড যা আপনার টেস্টের ফলাফল যাচাই করতে ব্যবহৃত হয়। assertEquals() ব্যবহার করে আপনি দুটি মানের সমতা যাচাই করতে পারেন, assertTrue() দিয়ে আপনি শর্তের সত্যতা যাচাই করতে পারেন এবং assertFalse() ব্যবহার করে আপনি শর্তের মিথ্যাতা যাচাই করতে পারেন। এই assertion মেথডগুলো ইউনিট টেস্টিংয়ের মৌলিক অংশ হিসেবে কাজ করে এবং আপনার কোডের সঠিকতা নিশ্চিত করতে সহায়তা করে।
Read more