אנחנו כבר מכירים את JUnit מסגרת בדיקה. הוא משמש לביצוע בדיקות יחידות ב-Java. מקרה הבדיקה של JUnit הוא קבוצת הקוד שמבטיחה אם קוד התוכנית שלנו פועל כמצופה או לא.
ב Java , ישנם שני סוגים של בדיקות יחידות אפשריות, בדיקה ידנית ובדיקה אוטומטית. בדיקה ידנית היא סוג מיוחד של בדיקה שבה מקרי הבדיקה מבוצעים ללא שימוש בכלי כלשהו. שלא כמו בדיקות ידניות, בדיקה אוטומטית אינה אפשרית ללא תמיכה בכלי כלשהו.
ה org.junit החבילה מספקת מספר מחלקות וחבילות, מה שעוזר לנו להבטיח אם הקוד שלנו מספק את הפלט הצפוי או לא. חבילות ושיעורים אלו הם Assert, After, Before, ו-Test וכו'.
נשתמש בכלי eclipse כדי לבדוק את קוד ה-Java. תחילה אנו יוצרים את קוד ה-Java שברצוננו לבדוק, ולאחר מכן, נכתוב את מחלקת הבדיקה או המבחן עבור קוד ה-Java שלנו.
ניקח את הדוגמה של מקרה בדיקה של JUnit כדי להבין כיצד מתבצעת הבדיקה בפועל ב-Java.
JunitTestCaseExample.java
package JavaTpoint. JunitExamples; import java.util.ArrayList; import java.util.List; public class JunitTestCaseExample { private List students = new ArrayList(); public void remove(String name) { students.remove(name); } public void add(String name) { students.add(name); } public void removeAll(){ students.clear(); } public int sizeOfStudent() { return students.size(); } }
TestJunitTestCaseExample.java
package JavaTpoint.JunitExamples; import static org.junit.Assert.assertEquals; import org.junit.Test; public class TestJunitTestCaseExample { JunitTestCaseExample obj = new JunitTestCaseExample(); @Test public void testAdd() { obj.add('Emma'); obj.add('Ronan'); obj.add('Antonio'); obj.add('Paul'); assertEquals('Adding 4 student to list', 4, obj.sizeOfStudent()); } @Test public void testSize() { obj.add('Emma'); obj.add('Ronan'); obj.add('Antonio'); assertEquals('Checking size of List', 3, obj.sizeOfStudent()); } @Test public void testRemove() { obj.add('Antonio'); obj.add('Paul'); obj.remove('Paul'); assertEquals('Removing 1 student from list', 1, obj.sizeOfStudent()); } @Test public void removeAll() { obj.removeAll(); } }
TestRunner.java
package JavaTpoint.JunitExamples; import org.junit.runner.Result; import org.junit.runner.JUnitCore; import org.junit.runner.notification.Failure; public class TestRunner { public static void main(String[] args) { Result result = JUnitCore.runClasses(TestJunitTestCaseExample.class); for (Failure fail : result.getFailures()) { System.out.println(fail.toString()); } System.out.println(result.wasSuccessful()); } }
הֶסבֵּר
יצרנו שלוש מחלקות Java, כלומר, JunitTestCaseExample.java, TestJunitTestCaseExample.java , ו TestRunner .java. בתוך ה JunitTestCaseExample.java class, יצרנו את הקוד שברצוננו לבדוק. במחלקה זו, אנו יוצרים רשימה של שמות וארבע שיטות להוספת אלמנט, הסרת אלמנט, קבלת גודל הרשימה והסרה של כל האלמנטים מהרשימה.
בתוך ה TestJunitTestCaseExample.java , אנו כותבים את מקרי הבדיקה עבור מחלקת JunitTestCaseEample.java. אנו יוצרים אובייקט של JunitTestCaseExample.java class, ועל ידי שימוש באובייקט שלו, נבדוק את כל השיטות שלו. אנו משתמשים ב- assertEquals() שיטה לבדוק את התוצאה בפועל עם הפלט הצפוי.
אנו יוצרים את המחלקה TestRunner.java כדי לבצע את מקרי הבדיקה. הוא מכיל את השיטה main() שבה אנו מריצים את המחלקה TestJunitTestCaseExample.java באמצעות שיטת runClasses() של ה-JUnitCore. בשיטה זו, אנו מעבירים את קובץ המחלקה של TestJunitTestCaseExample.java. התוצאה המוחזרת על ידי שיטת runClasses() תישמר במשתנה התוצאה מסוג Result.
כעת, נריץ את המחלקה TestRunner.java כדי לבצע את מקרי הבדיקה. נקבל את הפלט אמת כאשר מקרי המבחן יעברו ו-false כאשר מקרי המבחן לא יעברו.
תְפוּקָה