בדיקות והבטחת איכותMenu

כלי בדיקות אוטומציה המובילים היום בשוק – כיצד לבחור את הטוב ביותר

​בדיקות תוכנה אוטומטיות הופכת להיות יותר ויותר חשובה עבור פרויקטי תוכנה רבים על מנת לוודא באופן אוטומטי פונקציונליות במוצר תוכנה, בדיקות רגרסיה  ולסייע לצוותים להריץ מספר גדול של בדיקות בזמן קצר. יישומים רבים (במיוחד בפרויקטים גדולים יותר) עדיין דורשים כמות משמעותית של בדיקות פונקציונליות ידניות בנוסף לבדיקות אוטומטיות, אם בשל המחסור במשאבים או כישורים מספיקים כדי להפוך את כל הבדיקות לאוטומטיות.

ישנם כלים שונים המסייעים לצוותי איכות תוכנה לבנות ולבצע בדיקות אוטומטיות. צוותי פיתוח רבים כחלק ממאמצי הפיתוח שלהם מיישמים באופן פעיל בדיקות אוטומטיות באמצעות בדיקות יחידה Unit Test, כדי לוודא תקינות ואיכות של חלקים קריטיים של התוכנה, כגון libraries , Models and methods.

בעבר היה יותר מאתגר לבצע בדיקות אוטומציה לממשקי משתמש של יישומי שולחן עבודה והכלים הזמינים לבדיקות אלו בשוק הינם ברובם מסחריים ויקרים למדי.

לעומת זאת עם המספר הגדל של יישומים מבוססי אינטרנט הנושא נהיה קל יותר בבדיקות ממשקים מבוססי אינטרנט שכן קיימים היום כלים שונים המסיעים בכך , לרבות פרויקטים בקוד פתוח ללא תשלום.

כלי אוטומציה ליישומי אינטרנט

בדיקות אוטומציה ליישומי אינטרנט היא הדרך הטובה ביותר להבטיח שהגרסאות החדשות של יישום/תוכנה יהיו נקיות מבגים ורגרסיות.

כמו כן בדיקות אלו מאפשרות לצוותי הפיתוח לשנות קוד או לבצע refactor על הקוד בבטחון וללא חשש, שכן הם יכולים לאמת את הפונקציונאליות של היישום לאחר כל שינוי באמצעות בדיקות מתמשכות.

יחד עם זאת בניה של בדיקות אוטומציה ליישומי אינטרנט יכולים להיות מאתגרים מאחר וממשקי המשתמש של היישום עשוי להשתנות באופן קבוע, בגלל חוסר תאימות של דפדפנים ובדרך כלל צריך לתמוך בפלטפורמות Server  ו Client.

כלי בדיקות האוטומציה הבאים יהפכו את המלאכה לקלה יותר:

Selenium – הינו כלי בדיקות אוטומציה קוד פתוח לישומי אינטרנט מהפופולריים היום בשוק , הוא מאפשר בדיקות אוטומציה בסביבות אינטרנט על פלטפורמות שונות ונתמך ע"י מספר רב של דפדפנים.

Watir – הינו כלי בדיקות אוטומציה קוד פתוח ליישומי אינטרנט, מכיל סט של ספריות Ruby המאפשרים לכתוב בדיקות אוטומציה בדפדפנים שונים בצורה קלה ופשוטה לתחזוקה, ניתן באמצעותו לבצע פעולות הדומות לחוויית המשתמש כגון לחיצה על קישור, מילוי שדה מסוים, לחיצה על כפתור ועוד..) כמו כן ניתן לבדוק באמצעותו תשובות כדוגמת טקסט האם קיים בדף .

Windmill – הינו כלי בדיקות אוטומציה קוד פתוח ליישומי אינטרנט , מאפשר לבודקי אוטומציה לכתוב בדיקות אוטומציה וdebug , תומך ברוב הדפדפנים , מכיל אינטגרציה ל JavaScript ו Interactive Shell

Ranorex - הוא אחד הכלים המסחריים והפופולריים יותר ניתן באמצעותו לכתוב בדיקות אוטומציה ליישומי אינטרנט וGUI, הייחודיות שלו בכך שהוא יכול להקליט אינטראקציות משתמש, וניתן להשתמש בהקלטות אלו בשלבי הבדיקות השונים.

SoapUI – הינו כלי אוטומציה קוד פתוח לבדיקות פונקציונאליות ליישומי אינטרנט, כלי זה מסייע באופן אוטומטי לבדוק ממשקים  API  כגון SOAP וREST   ומבטיח את הפעילות ההדדית בין יישומים שונים.

Tellurium – כלי בדיקות אוטומציה מסחרי המאפשר לכתוב בדיקות אוטומציה ללא ידע מקדים בכתיבת סקריפטים או שפות תכנות.


כלי אוטומציה ל-GUI

בניית בדיקות GUI אוטומטיים חזקות עבור יישומי שולחן עבודה (למשל במערכות - Windows או Mac ) היא די קשה , שינויים קטנים בממשק המשתמש יכולים לעתים לגרום למצב של שבירת בדיקות .

הכלים הבאים יעזרו לך לבנות ולבצע בדיקות GUI חזקות לפלטפורמות ומערכות הפעלה שונות:

Squish – הינו כלי בדיקות אוטומציה לסביבות GUI, הינו כלי מסחרי ונתמך ע"י מספר מגוון של פלטפורמות כגון: Windows , QT , ויישומי Mac . כלי זה מאפשר לבודקים ולמפתחי אוטומציה לכתוב בדיקות אוטומטיות בשפות סקריפטים מוכרות כגון: JavaScript, Perl, Python ו – Ruby .

Ranorex - הוא אחד הכלים המסחריים הפופולריים יותר לבנות ולהפעיל בדיקות   GUIואינטרנט, כלי זה מאפשר אוטומציה ליישומי שולחן עבודה, להקליט אינטראקציות משתמש ולהשתמש בהקלטות אלו בשלבי הבדיקות השונים.

TestComplete – הוא כלי בדיקות אוטומציה עבור פלטפורמת Windows. מאפשר להקליט ,לכתוב תסריט ולהריץ בדיקות GUI עבור יישומים שנבנו באמצעות מסגרות שונות ובשפות , כגון .NET או C ++ .

TestStudio – הוא כלי מסחרי לבדיקות אוטומציה לפונקציונליות ועומסים שמסייע לבדוק יישומים על פלטפורמות שונות שנבנו באמצעות מסגרות וכלים שונות.

eggPlanet – הינו כלי מסחרי לבדיקות אוטומציה, מאפשר לכתוב בדיקות אוטומציה לסוגים שונים של יישומים מבוססי: .NET  , Java , Flash ועוד..

בדיקות יחידה Unit Testing Framework


בדיקות יחידה הן בדיקות ברמת יחידת המערכת הקטנה ביותר) מודול(  שמאמתות את פעילותה התקינה של היחידה. הבדיקות נערכות לרוב לאחר הכנת המודול או לאחר שבוצעו בו שינויים, אך קיימות גם שיטות בהן מורצות בדיקות יחידה בטרם הכנת המודול. הרעיון הוא ליצור קבוצה של בדיקות, אשר תכסה את כל פעילות המודול, והצלחתה תוכיח בוודאות סבירה כי המודול תקין. סוג זה של בדיקות מבוצע בדרך כלל על ידי אנשי הפיתוח.

לאחר כתיבת בדיקות היחידה ניתן להשתמש כדי לבדוק באופן אוטומטי גרסאות חדשות.

להלן רשימת מסגרות וכלים שונים לבדיקות יחידה:

NUnit – עבור קוד  .NET

xUnit.net – עבור קוד C#, F#, VB.NET, .NET

PyUnit/unittest – עבור קוד Python

Junit – עבור קוד java

PHPUnit – עבור קוד PHP

Symfony Lime – בנויה למסגרת יישום האינטרנט הפופולרית Symfony PHP

 

מחבר המאמר: תמיר זנו, מנהל תחום DevOps ואוטומציה, חטיבת הבדיקות V-Ness, נס

 

עוד בנושא...

עוד פרסומים בנושא אשר עשויים לעניין אותך