בדיקות תוכנה

הנדסת תוכנה
ערך זה שייך לקטגוריית הנדסת תוכנה
פעילויות ושלבים
דרישותניתוחאפיוןארכיטקטורהעיצובתכנותניפוי שגיאותבדיקהאימותבנייהפריסהתפעולתחזוקה
מתודולוגיות
זריזותמפל המיםתכנת ותקןCrystal ClearScrumUnified ProcessExtreme Programmingאינטגרציה רציפהDevOps
תחומים תומכים
ניהול פרויקטיםניהול תצורהתיעודהבטחת איכותProfiling
כלים
מהדרמקשרמפרשIDEניהול גרסאותאוטומציית בנייה

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

הקדמה

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

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

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

סוגי הבדיקות

בהתאם למודלים של פיתוח תוכנה כגון: מפל המים, מודל V, מודל W ואחרים; קיימים 4 שלבים מרכזיים בבדיקות תוכנה:

  • בדיקות יחידה (Unit) – בדיקות ברמת יחידת תוכנה (מודול). לרוב מבוצעות על ידי מפתח התוכנה.[1]
  • בדיקות אינטגרציה (Integration) – בדיקת שילוב יחידות תוכנה בהיקפים שונים, החל משתי יחידות ועד לכלל היחידות במערכת.
  • בדיקות מערכת (System) – בדיקת המערכת בכללותה, בדרך כלל בראיית המשתמש של יכולות המערכת.
  • בדיקות קבלה (Acceptance) – בדיקות הנעשות על ידי המשתמש או הלקוח במטרה לוודא כי המערכת פועלת בהתאם לדרישות שהוגדרו במסמך הדרישות המקורי ובשינויי דרישה (change request) שהועברו במהלך מחזור חיי הפיתוח.

בנוסף מקובל לסווג את הבדיקות גם לפי החלוקה שמתבססת על אופי הבנת המערכת ורמת הירידה של הבודק לפרטים:

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

סוגי בדיקות עיקריים

  • בדיקות פונקציונליות (Functional) – לאימות פעילות המערכת. בדיקות אלו מבוססות על מסמך הדרישות ומסמך האפיון ומטרתן לבדוק כי המערכת עושה את מה שהיא צריכה ולא עושה את מה שאינה צריכה לעשות (valid and invalid testing).
  • בדיקות לא פונקציונליות (Non functional) – בדיקות אלו בודקות איך פועלת המערכת וכוללות בדיקות עומסים, ביצועים, שימושיות וסוגי בדיקות רבים נוספים (שחלקם מפורטים למטה).
  • בדיקות שימושיות (Usability) – בדיקות נוחות השימוש ויעילות העיצוב של האפליקציה ונגישות לבעלי מוגבלויות. לדוגמה: נוחות השימוש בתפריטים, ניווט נוח והתמצאות באתר.
  • בדיקות בינלאומיות (Internationalization and Localization) – בדיקות המתמקדות בשימוש בתוכנה בממשקים בשפות שונות. למשל – אתרי אינטרנט רבים (כמו ויקיפדיה) בהם יש דפים בשפות שונות, מבצעים בדיקות מהסוג הזה. 
  • בדיקות ממשק לקוח (GUI) – בדיקות הפקדים והשדות במסך. התנהגות תקינה, פורמט של שדות, בהתאם לחוקיות המוגדרת ברמת המסך ולא הלוגיקה העסקית. לדוגמה: בדיקת מינימום ומקסימום תווים בשדה.
  • בדיקות שילוב מערכת (Compatibility) – לאימות יכולת שילוב התוכנה/רכיב תוכנה במערכת קיימת/חדשה (למשל – תאימות של התוכנה לעדכוני מערכת הפעלה, דפדפנים שונים, תוכנות אחרות שהתוכנה אמורה לעבוד בשילוב עימן, וכדומה).
  • בדיקות אלפא/בתא (Alpha/Beta) – בדיקות שמבוצעות על ידי קבוצת משתמשים מוגדרת סגורה (אלפא) או פתוחה (בתא) אשר משתמשים במוצר ומדווחים על תקלות הצפות תוך כדי שימוש שוטף.
  • בדיקות שפיות (Sanity) – בדיקות בסיסיות המאפשרות לזהות במהירות וביעילות אם הפונקציונליות הבסיסית של המוצר פועלת כנדרש, והמוצר במצב יציב.
  • בדיקות עשן (Smoke) – סוג נוסף של בדיקות הנועד לזהות במהירות את מצב היציבות של המוצר, על ידי גילוי מוקדם של תקלות המראות על כשל חמור ברכיב כלשהו במוצר. בניגוד לבדיקות שפיות, בדיקות עשן בדרך כלל מבוצעות בצורה יותר אינטואיטיבית וגמישה, ולא בהכרח לפי תסריטים קבועים מראש.
  • בדיקות הרס (Destructive) – בדיקות אלו נעשות במטרה להכשיל ולהרוס חלקים שונים של המערכת הנבדקת ובכך לבדוק את יכולת השרידות שלה, בדיקות אלו נעשות בשלב מאוחר של התהליך כאשר המערכת נמצאת במצב עמיד ויציב. בשוק קיימים מספר כלים המאפשרים לדמות בדיקות הרס. לדוגמה: Winner.
  • קיימים סוגי בדיקות נוספים המותאמים למאפייני הנדסת תוכנה נוספים (ilities).
  • בדיקת תאימות (Compatibility) – בדיקות הבודקות שהתוכנה יכולה להתאים את עצמה למערכות הפעלה שונות כמו Windows XP/7/8/10 או אם האתר תומך בדפדפנים שונים כמו Chrome/Firefox/Explorer.
  • בדיקת תחזוקתיות ׁ(Maintainability) – בדיקה שבודקת שאפשר לעדכן או לתקן את התוכנה אחרי הוצאתה לאור, בדיקה זו בודקת גם אם הקוד כתוב בצורה פשוטה.
  • בדיקת ביצועים ועומסים (Performance and Load) – בסוג בדיקות זה נבדקת יכולת התגובה של צד השרת במערכות שרת/לקוח בהן צפויים משתמשים רבים בו זמנית. בדיקות אלו מתמקדות במדידת זמני התגובה ובמציאת "נקודת השבירה" של המערכת. מלבד עומס הנובע מ"משתמשים וירטואליים" מדומים גם עומסים הנובעים מטרנזקציות וג'ובים המורצים ברקע, שלא כתוצאה ישירה מתהליכים עסקיים. בשוק קיימים מספר כלים המאפשרים לדמות משתמשים רבים, לדוגמה: LoadRunner, WebLoad, TeamSystem. בבדיקת ביצועים יש שלושה סוגי בדיקות: LOAD, STRESS ו-VOLUME. ב-LOAD בודקים אם המערכת עובדת עם מספר משתמשים רגיל ותחת זרימת נתונים נורמטיבית (לא חריגה), ב-STRESS בודקים אם המערכת עובדת עם מספר משתמשים הגבוה בהרבה מהרגיל וכמו כן שימוש במידע רב, תוך גרימת זעזועים (לדוגמה: ניתוק וחיבור משתמשים, שימוש וביטול פונקציונליות במערכת), זאת במטרה לאבחן מהן נקודות הקצה של המערכת. האחרונה, VOLUME, היא בדיקה שבודקת את התנהגות וגבולות המערכת תחת הצפת המערכת בנתונים וכמו בבדיקה הקודמת – בודקת את קצוות המערכת בשימוש בכמויות אדירות של מידע.
  • בדיקת מבניות (Structural) .
  • בדיקות הקשורות לשינויים/רגרסיה – בבדיקה זו יש שני סוגי בדיקותː
    • בדיקות אי פגיעה Regression .Regression & Re-Testing – רגרסיה, בדיקה חוזרת על מקומות שכבר נבדקו בהצלחה (גם איפה שאף פעם לא הייתה תקלה) . בדיקה זו מבצעים אחרי הטמעה של פיצ'ר חדש במערכת (בדרך כלל בגרסה חדשה), כדי לבדוק שהשינויים שביצעו בקוד לא קלקלו מה שהיה תקין בעבר.
    • Re-Testing – בדיקה חוזרת (נקראת גםː בדיקות אישור או וידוא). בדיקה חוזרת על מקום ספציפי לשם וידוא תיקון תקלה.

אופי הבדיקות

  • בדיקות תוכנה ידניות (Manual Testing) – בדיקות תוכנה הנעשות על ידי עובד שהוכשר לכך בדרך כלל על פי תוכנית בדיקות מסודרת ומוסכמת.
  • בדיקות תוכנה ממוכנות (Automation Testing) – בדיקות תוכנה הנעשות בצורה אוטומטית, רצוי עם מינימום התערבות אנושית.

ראו גם

קישורים חיצוניים

ויקישיתוף מדיה וקבצים בנושא בדיקות תוכנה בוויקישיתוף

הערות שוליים

  1. ^ Unit Testing vs Functional Testing: A Detailed Comparison, Insights on Latest Technologies - Simform Blog, ‏2019-03-16 (באנגלית אמריקאית)


Read other articles:

Falken TireJenisAnak perusahaanIndustriOtomotifDidirikan1983; 41 tahun lalu (1983)KantorpusatKobe, Jepang(kantor pusat global)Offenbach am Main, Jerman(kantor pusat Eropa)Rancho Cucamonga, Amerika Serikat(kantor pusat Amerika Utara)ProdukBanIndukSumitomo Rubber IndustriesSitus webwww.falken.tires Falken Tire adalah sebuah merek ban mobil, truk ringan, dan truk sedang yang dimiliki oleh Sumitomo Rubber Industries (SRI) asal Jepang. Merek ini diluncurkan di Jepang pada tahun 1983, lalu dip...

 

 

Menara IndahDesaNegara IndonesiaProvinsiSulawesi SelatanKabupatenKepulauan SelayarKecamatanBontomateneKode pos92854Kode Kemendagri73.01.03.2011 Luas2,94 km²Jumlah penduduk622 (2010)[1]Kepadatan210 jiwa/km² Menara Indah adalah sebuah desa yang berada di Kecamatan Bontomatene, Kabupaten Kepulauan Selayar, Provinsi Sulawesi Selatan, Indonesia. Wilayah Desa Menara Indah merupakan desa terluar paling utara di Kabupaten Kepulauan Selayar. Penduduk Pada tahun 2009, tercatat bahwa juml...

 

 

Boy Syahril Qamar Informasi pribadiLahir26 Maret 1956 (umur 68)Cirebon, Jawa BaratKebangsaanIndonesiaPartai politikPKSAlma materAkademi Angkatan Udara (1980)Universitas Terbuka (1997)PekerjaanTentara, PolitisiKarier militerPihak IndonesiaDinas/cabang TNI Angkatan UdaraMasa dinas1980 – 2014Pangkat Marsekal Madya TNISatuanKorps PenerbangPertempuran/perangOperasi SerojaKonflik PapuaSunting kotak info • L • B Marsekal Madya TNI (Purn.) Boy Syahril Qamar, S.E. (lahir...

American actor (1936–2021) Dean StockwellStockwell in 1965BornRobert Dean Stockwell(1936-03-05)March 5, 1936Los Angeles, California, U.S.DiedNovember 7, 2021(2021-11-07) (aged 85)Whangarei, New ZealandOccupationActorYears active1945–2015Spouses Millie Perkins ​ ​(m. 1960; div. 1962)​ Joy Marchenko ​ ​(m. 1981; div. 2004)​Children2ParentHarry Stockwell (father)RelativesGuy Stockwell (b...

 

 

British painter Rémy NoëBorn8 December 1974Bromley, Kent, EnglandKnown forPaintingMovementStuckism Bill Lewis by Rémy Noë Rémy Noë (born 8 December 1974), is a British painter, a member of the international art movement Stuckism and co-founder of the Maidstone Stuckists.[1] Life and work Rémy Noë was born in Bromley, Kent, England, to a French and Dutch father and English mother, but has lived in Medway for most of their life. From 1986 to 1993, he attended Vinters Boys S...

 

 

2008 2020 Élections sénatoriales de 2014 dans les Alpes-de-Haute-Provence 28 septembre 2014 Type d’élection Élections sénatoriales Postes à élire 1 siège de sénateur Jean-Yves Roux – PS Voix au 1er tour 127 23,61 %  Voix au 2e tour 214 41,23 %  Bernard Jeanmet-Peralta – UMP Voix au 1er tour 137 25,46 %  Voix au 2e tour 162 31,21 %  Jacques Depieds – DVD Voix au 1er tour 114 21,19 %  Voix au 2e to...

BBC 2WCaractéristiquesCréation 5 novembre 2001Disparition 2 janvier 2009Propriétaire BBCLangue AnglaisPays Pays de GallesStatut Généraliste locale publiqueSiège social CardiffAncien nom BBC Two WalesSite web http://www.bbccymru.com/DiffusionAnalogique  OuiNumérique  OuiSatellite  OuiCâble  Ouimodifier - modifier le code - modifier Wikidata BBC 2W était une chaîne de télévision numérique de la BBC qui diffusait du 5 novembre 2001 au 2 janvier 2009 des émission...

 

 

Questa voce o sezione sull'argomento batteristi non cita le fonti necessarie o quelle presenti sono insufficienti. Puoi migliorare questa voce aggiungendo citazioni da fonti attendibili secondo le linee guida sull'uso delle fonti. Charlie WattsCharlie Watts nel 2008 Nazionalità Regno Unito GenereRock and rollBlues rockHard rockBebop Periodo di attività musicale1958 – 2021 GruppiThe Rolling Stones Blues Incorporated The Charlie Watts Tentet Album pubblicati65 ...

 

 

Questa voce sull'argomento calciatori tedeschi è solo un abbozzo. Contribuisci a migliorarla secondo le convenzioni di Wikipedia. Segui i suggerimenti del progetto di riferimento. Michael Stegmayer Nazionalità  Germania Altezza 175 cm Peso 74 kg Calcio Ruolo Difensore Termine carriera 2016 Carriera Giovanili  Ulma2001-2004 Bayern Monaco Squadre di club1 2004-2006 Bayern Monaco II50 (4)2006-2007 Wolfsburg11 (0)2006-2007 Wolfsburg II4 (0)2007-2008 Carl...

2004 film by Kundan Shah Ek Se Badhkar EkTheatrical release posterDirected byKundan ShahWritten byDilip ShuklaProduced byPammi SandhuStarringSuniel ShettyRaveena TandonShekhar SumanIsha KoppikarCinematographyThomas A. XavierEdited byAseem SinhaMusic byAnand Raj AnandProductioncompanySai Trinetra ArtsDistributed byUltra FilmsRelease date 17 September 2004 (2004-09-17) Running time146 minCountryIndiaLanguageHindi Ek Se Badhkar Ek (transl. One better than the next) is a 2004...

 

 

Questa voce sull'argomento centri abitati dell'Illinois è solo un abbozzo. Contribuisci a migliorarla secondo le convenzioni di Wikipedia. Segui i suggerimenti del progetto di riferimento. DeKalbcity(EN) DeKalb, Illinois DeKalb – Veduta LocalizzazioneStato Stati Uniti Stato federato Illinois ConteaDeKalb AmministrazioneSindacoKris Povlsen TerritorioCoordinate41°55′53″N 88°45′01″W / 41.931389°N 88.750278°W41.931389; -88.750278 (DeKalb)Coordinate...

 

 

This article relies largely or entirely on a single source. Relevant discussion may be found on the talk page. Please help improve this article by introducing citations to additional sources.Find sources: 1816 Maryland's 5th congressional district special elections – news · newspapers · books · scholar · JSTOR (February 2015)Elections in Maryland Federal government Presidential elections 1788–89 1792 1796 1800 1804 1808 1812 1816 1820 1824 1828 1832...

この項目には、一部のコンピュータや閲覧ソフトで表示できない文字が含まれています(詳細)。 数字の大字(だいじ)は、漢数字の一種。通常用いる単純な字形の漢数字(小字)の代わりに同じ音の別の漢字を用いるものである。 概要 壱万円日本銀行券(「壱」が大字) 弐千円日本銀行券(「弐」が大字) 漢数字には「一」「二」「三」と続く小字と、「壱」「�...

 

 

This article needs to be updated. Please help update this article to reflect recent events or newly available information. (September 2023)Disaster occurred in North India 2023 North India floods Satellite image of North India on 10 July, showing various systems causing floodingCauseHeavy rainDischargesLandslideMeteorological historyDuration1 April 2023 – presentFloodMaximum rainfall30 cm (11.81 in)Overall effectsFatalities422Injuries≥100Missing38Areas affectedNorth India H...

 

 

Act of the Parliament of Australia Broadcasting Services Act 1992Parliament of AustraliaCitationNo. 110, 1992 as amended or No. 110 of 1992Territorial extentStates and territories of AustraliaRoyal assent14 July 1992[1]Status: Amended The Broadcasting Services Act 1992 (Cth) is an Act of the Parliament of Australia, which broadly covers issues relating to content regulation and media ownership in Australia.[2][3] The law stipulates what is political advertising and the...

Trade association This article contains content that is written like an advertisement. Please help improve it by removing promotional content and inappropriate external links, and by adding encyclopedic content written from a neutral point of view. (October 2018) (Learn how and when to remove this message) Official logo of the ACI Airports Council International (ACI) is an organization of airport authorities aimed at uniting industry practices for airport standards. Established in 1991, its h...

 

 

County Jefferson, WisconsinJefferson County courthouseMap of Wisconsin highlighting County JeffersonLokasi di negara bagian WisconsinLokasi negara bagian Wisconsin di Amerika SerikatDidirikan1839Asal namaThomas JeffersonSeatJeffersonKota terbesarWatertownWilayah • Keseluruhan583 sq mi (1.510 km2) • Daratan556 sq mi (1.440 km2) • Perairan26 sq mi (67 km2), 4.5Distrik kongreske-5Zona waktuTengahSitus webwww.jeffers...

 

 

Voce principale: Unione Sportiva Foggia. US FoggiaStagione 1983-1984I foggiani con la seconda divisa bianca Sport calcio Squadra Foggia Allenatore Romano Fogli, poi Cosimo Nocera Presidente Antonio Fesce Serie C110º nel girone B Coppa ItaliaPrimo turno Coppa Italia Serie CSedicesimi di finale Maggiori presenzeCampionato: Laveneziana (32) Miglior marcatoreCampionato: Bruzzone (9) 1982-1983 1984-1985 Si invita a seguire il modello di voce Questa voce raccoglie le informazioni riguardanti...

Voce principale: Yokohama F·Marinos. Yokohama MarinosStagione 1995Sport calcio Squadra Yokohama Marinos Allenatore Jorge Solari Hiroshi Hayano J. League1º Coppa dell'ImperatoreSecondo turno Miglior marcatoreCampionato: Bisconti (27)Totale: Bisconti (28) 1994 1996 Si invita a seguire il modello di voce Questa voce raccoglie le informazioni riguardanti lo Yokohama Marinos nelle competizioni ufficiali della stagione 1995. Indice 1 Stagione 2 Maglie e sponsor 3 Rosa 4 Statistiche 4.1 Stat...

 

 

Serie B d'Eccellenza maschile FIP 2005-2006Dettagli della competizioneSport Pallacanestro OrganizzatoreLNP Federazione FIP Periodosettembre 2005 —giugno 2006 Squadre32  (in 2 gironi) VerdettiCampione V.L. Pesaro(1º titolo) Promozioni Triboldi V.L. Pesaro Retrocessioni Celana Bergamo Basket Cecina Virtus Ragusa Ripescaggi Stamura Ancona Non ammesse allastagione successiva Ares Ribera Cronologia della competizioneed. successiva →  ...