שאלות נפוצות
ציר זמן
צ'אט
פרספקטיבה
NUnit
כלי פיתוח חופשי לבדיקות יחידה מוויקיפדיה, האנציקלופדיה החופשית
Remove ads
NUnit הוא כלי פיתוח חופשי לבדיקות יחידה בשפת התכנות C# בסביבת הפיתוח .Net. מטרתו דומה לזה של JUnit בתכנות ב-Java. וגם הוא אחד מרבים השייכים למשפחת xUnit.
Remove ads
דוגמה לבדיקת יחידה
על מנת להריץ את הבדיקה יש ליצור תחילה מחלקה חדשה שבה נבצע את הבדיקות, בתוך מחלקה אחת ניתן לבצע בדיקות למספר מחלקות. בנוסף יש להוסיף את ה-DLL של NUnit לפרויקט. הדוגמה הבאה מציגה דוגמה פשוטה בשפת C#. מטרת הבדיקה היא לבדוק נכונות של ביטוי אריתמטי פשוט.
using NUnit.Framework;
[TestFixture]
public class ExampleTestOfNUnit
{
[Test]
public void TestMultiplication()
{
Assert.AreEqual(4, 2*2, "Multiplication");
// Equivalently, since version 2.4 NUnit offers a new and
// more intuitive assertion syntax based on constraint objects
// [http://www.nunit.org/index.php?p=constraintModel&r=2.4.7]:
Assert.That(2*2, Is.EqualTo(4), "Multiplication constraint-based");
}
}
Remove ads
שיטות ביאור
Remove ads
בדיקה אם הפונקציה עברה את הבדיקה
על מנת לבדוק אם התוצאות שקיבלנו בפונקציית הבדיקה תואמות את התוצאות שציפינו לקבל נשתמש במחלקת Assert. זוהי מחלקה סטטית הקובעת את תוצאת הבדיקה על ידי השוואה של תוצאת הפונקציה לתוצאה הרצויה. המחלקה קיימת גם ב-JUnit וגם ב-NUnit, השוני הוא בצורת הכתיבה. מאפשר לאמת את הקוד:
- על ידי בדיקת ביטויים בוליאניים.
- על ידי השוואת סוגים בסיסיים.
- על ידי השוואת משתנים (by reference).
- על ידי השוואת מערכים (by reference).
סוגים של Assert שניתנים לשימוש:
- Assert.AreEqual(Type expected, Type actual);
- Assert.AreEqual(Type expected, Type actual, Type delta);
- Assert.AreEqual(Type expected, Type actual, string message);
- Assert.AreEqual(Type expected, Type actual, Type delta, string message);
- Assert.IsFalse(bool condition);
- Assert.IsFalse(bool condition, string message);
- Assert.IsNotNull(object object);
- Assert.IsNotNull(object object, string message);
- Assert.AreNotSame(object expected, object actual);
- Assert.AreNotSame(object expected, object actual, string message);
- Assert.IsNull(object object);
- Assert.IsNull(object object, string message);
- Assert.AreSame(object expected, object actual);
- Assert.AreSame(object expected, object actual, string message);
- Assert.IsTrue(bool condition);
- Assert.IsTrue(bool condition, string message);
- Assert.Fail();
- Assert.Fail(string message);
אופן הרצת הבדיקות
הרצת הבדיקות ב-NUnit מתבצעת על ידי תוכנה חיצונית שמותקנת במחשב. במידת הצורך ניתן להוסיף תוספים לוויז'ואל סטודיו שמאפשרים את הרצת הבדיקות ללא תוכנה חיצונית.
השוואה בין JUnit ל-NUnit
NUnit היא שיטת בדיקה הדומה ל-JUnit, כאשר השוני העיקרי ביניהן הוא שפת הפיתוח שבה משתמשים. עם זאת, קיימים עוד כמה הבדלים מזעריים ביניהן מבחינת תחביר ואופן הרצת הבדיקות.
Remove ads
לקריאה נוספת
- Andrew Hunt, David Thomas: Pragmatic Unit Testing in C# with NUnit, 2nd Ed. The Pragmatic Bookshelf, Raleigh 2007, ISBN 0-9776166-7-3
- Jim Newkirk, Alexei Vorontsov: Test-Driven Development in Microsoft .NET. Microsoft Press, Redmond 2004, ISBN 0-7356-1948-4
- Bill Hamilton: NUnit Pocket Reference. O'Reilly, Cambridge 2004, ISBN 0-596-00739-6
- How .NET’s Custom Attributes Affect Design
Remove ads
קישורים חיצוניים
אתר האינטרנט הרשמי של NUnit
- השוואה בין NUnit ל-JUnit (באנגלית)
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads