PracticU

TestNG First Class

בלי כתוביותעם כתוביות
PracticU › קורס סלניום בסיסי - בדיקות אוטומטיות - Selenium › TestNG First Class
מילון מושגים:
בדיקות אוטומטיות - הרצת בדיקות תוכנה באמצעות סקריפטים וכלים, במקום בדיקה ידנית, כדי לחסוך זמן ולהגדיל כיסוי.
XML - שפת סימון לייצוג נתונים מובְנים בעזרת תגיות, המשמשת להחלפת מידע בין מערכות ולקובצי הגדרות.
לוג - רישום מתועד של אירועים ופעולות שמתרחשים במערכת או בתוכנה, המשמש למעקב ולאיתור תקלות.
דוח - מסמך או תצוגה שמסכמים נתונים בצורה מאורגנת לצורך הבנה וקבלת החלטות.
HTML - שפת הסימון שבה בונים את מבנה ותוכן דפי האינטרנט, באמצעות תגיות שמגדירות כותרות, פסקאות, קישורים ועוד.
מתודה - פונקציה המוגדרת בתוך מחלקה ומתארת פעולה שאובייקטים מאותה מחלקה יכולים לבצע.
Java - שפת תכנות עילית ומונחית עצמים, הרצה על מכונה וירטואלית (JVM) ומשמשת לפיתוח מגוון יישומים.
Selenium - כלי לאוטומציה של דפדפן, המשמש בעיקר לבדיקות אוטומטיות של אתרים ויישומי אינטרנט.

TestNG First Class
השיעור מציג את TestNG כחלק מפרויקט האוטומציה: איך כותבים מחלקת טסט, איך משתמשים באנוטציות, וכיצד מריצים דרך קובץ XML.
השלבים העיקריים
1. מה TestNG נותן: לוגים, ניהול טסטים באנוטציות, דוחות HTML, תיעדוף, ריצה מקבילית, ושליחת נתונים לטסטים.
2. אנוטציות: כל מתודה מסומנת לפי תפקידה. @Test למתודת בדיקה, ו-@BeforeClass, @BeforeMethod, @AfterMethod ו-@AfterClass להכנה ולניקוי.
3. הפרויקט: יוצרים פרויקט Java עם ספריות Selenium ו-TestNG, ומחלקת טסט בתוך חבילה.
4. קובץ XML: מגדיר אילו מחלקות ואילו טסטים להריץ. מריצים את קובץ ה-XML ולא את המחלקה ישירות.
5. הרצה ודוח: הקונסולה מציגה את סדר הביצוע, ובתיקייה test-output נוצר דוח HTML.
שימו לב
- הסדר במחלקה לא קובע את סדר הריצה, אלא האנוטציה. מתודת @BeforeClass תרוץ לפני הטסטים גם אם היא כתובה בסוף הקובץ.
- בדוח נספרות רק מתודות @Test. מתודות ההכנה והניקוי לא מופיעות בספירה.
TestNG מספק את השלד לניהול הטסטים, ו-XML שולט בהרצה.
השיעור הבא בקורס: TestNG Annotations

פרקי ההרצאה: TestNG First Class

  1. 00:00

    מבוא ל-TestNG וכוונת הכלי

  2. 01:18

    הגדרת אנוטציות לכל מתודה

  3. 02:14

    הפעלת הטסטים דרך קובץ XML

  4. 03:17

    יצירת פרויקט TestNG עם ספריות סלניום

  5. 05:51

    סוגי האנוטציות בקלאס TestNG

  6. 06:29

    Before Class ו-Before Method

  7. 08:28

    אנוטציית Test וסדר הריצה

  8. 10:37

    After Method והרצת הדוגמה

תמלול ההרצאה: TestNG First Class

הטקסט המלא של הדקות הראשונות בהרצאה «TestNG First Class» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.

  1. 00:02

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

  2. 00:16

    האם רוצים שהיא תוכל לתעד את העריצות שלנו בעזרת לוגים, לנהל את הטסטים שלנו בעזרת אנוטציות, להוציא דוחות של עריצה, לנהל תיעדוף של הטסטים, להריץ טסטים בצורה פרללית, מקבילה, לבצע data parameterization זאת אומרת לשלוח נתונים לטסטים שלנו דרך פרמטרים לקובץ חיצוני

  3. 00:42

    כשאנחנו מדברים על testng כחלק מה automation framework שלנו אנחנו מדברים על ריצה בעזרת אנוטציות תיעדוף של הטסטים שלנו ריצה מקבילית הוצאת התוצאות ריצה ל-report ו-data parameterization כאמור אז ה-testng נותן לנו מענה לכל הדרישות או כמעט לכל הדרישות של automation framework ואנחנו נשתמש בו כחלק מסביבת הפרויקט אוטומציה שלנו.

  4. 01:16

    מה זה אומר הנוטציה? הנוטציה זה אומר איזושהי הכרזה בתחילת כל מתודה שמרכיבה את הקלאס של הטסט שלנו שהיא אומרת איזה סוג מתודה היא האם היא מתודה מסוג טסט או מתודה אחרת שקשורה ל-preparation או pre-process או post-process או הכנה לקראת הטסטים שיבואו אחר כך. הליבה של ה-Class

  5. 01:39

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

  6. 01:54

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

  7. 02:08

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

  8. 02:26

    מה זה אומר XML או קונפיגורציה בעזרת XML? XML זה אומר Extendable Markup Language שזה בעצם קובץ שהוא ידידותי גם מבחינת הטבעה שלו גם מבחינת הקריאה והוא קל מאוד לתחזוקה ולהבנה יחסית ככה שהוא מאפשר לנו לקנפג ולהחליט איזה טסטים להריץ, איזה פרמטרים לשלוח ואיך להפעיל את הטסטים שלנו. אנחנו נראה עכשיו מיד דוגמה של ה-XML של ה-TestNG, חשוב

  9. 02:41

    לדעת שה-TestNG דורש קובץ XML שבעצם מחליט איך ומתי להריץ את הטסטים שלנו. ולנצל את היכולות של ה-TestNG.

  10. 03:17

    אז בואו נתחיל ונעבוד עם ה-TestNG הראשון שלנו, קלאס מסוג TestNG בפרויקט Java Selenium שלנו. אני ניגש לסביבת האקליפס שלי ואני אצור פרויקט חדש, אני אצור פרויקט Java ואני אקרא לו TestNG Demo.

  11. 03:50

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

  12. 04:07

    אני יכול לעשות את זה על ידי Add Library. כמו שלמדנו בשיעורים הקודמים, אני אחרי שעדכנתי את ה-TestNG בסביבת הקליפס שלי, נוסף לליברי שלי גם ברשימה אפשרות להוסיף את ה-TestNG ואני מוסיף אותו.

  13. 04:26

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

  14. 04:57

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

  15. 05:14

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

  16. 05:31

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

  17. 05:56

    יבצע וכאן הוא יכתוב את השם שלו בוא נקרא לו דמו אחד אוקיי כאן אנחנו רואים את האנוטציה יש לנו מגוון של אנוטציות ואנחנו נעבור עליהן ונכיר אותה יש לנו את ה-Before Method, Before Class, Before Test, Before Soot, After Method, After Class,

  18. 06:18

    After Test, After Soot ו-Data Provider. היום אנחנו נכיר חלק מהם אבל אנחנו נכיר את כולם במהלך הקורס. בעיקרון אנחנו נרצה לעבוד בשלב הזה עם ה-Before Class זאת אומרת המתודה שאנחנו נייצר היא תרוץ שהיא תהיה משוייכת לאנוטציה ה-Before Class, היא תרוץ פעם אחת בתחילת הקלאס שאנחנו יוצרים.

  19. 06:44

    ה-Before Method הוא יתבצע לפני כל מתודה ויש לנו גם את ה-After Class ואפטר מתוד שהם מקבילים לאנוטציות האלה, מקבילות לאנוטציות של ה-before מתוד, האפטר מתוד, before class, after class. אז כרגע אנחנו לומדים את רק מה שמושפע מהקלאס הנוכחי.

  20. 07:08

    שאר הארבע אנוטציות האלה או חמשת האנוטציות האלה יחד עם data provider קשורות להיררכיה יותר גבוהה שאנחנו תכף נראה אותה ב-XML ונסביר אותה, לפור טסט, לפור סווט, אפטר טסט ואפטר סווט.

  21. 07:28

    תכף אנחנו נראה למה אני מתכוון אחרי שאני אצור את ה-XML. דאטה פרוביידר מאפשר לי לשייך קובץ חיצוני או נתונים חיצוניים לטסטים שלי. אנחנו נכיר את זה בשיעורים מתקדמים יותר.

  22. 07:43

    XML, ה-XML שלי אני רוצה ליצור אותו במקביל לקלאס שאני יוצר, אני אקרא לו DMO1 או DMO Testing ובעצם אני יכול לקרוא XML והוא ייווצר והוא בעצם יאפשר לי שליטה מורחבת על הקלאס שאני יוצר עכשיו, תכף אנחנו נראה למה אני מתכוון.

  23. 08:12

    אוקיי, אז יצרתי את הקלאס שלי, אני רואה demo1.java, בתוכו נוצרו לי מתודות ואני רואה שלכל מתודה ומתודה יש לי את האנוטציה שלה שהיא קשורה אליה, יש לנו את האנוטציה test, זה בעצם לב המערכת, זאת אומרת יש לנו את האנוטציה של test ופה בעצם

  24. 08:39

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

  25. 09:03

    הסדר לא משנה אבל המשמעות של ה-class הוא בעצם, המשמעות של האנוטציה היא זאת שתקבע את סדר הריצה. המיקום הפיזי לא משנה. before method הוא יבצע לפני הטסט.

  26. 09:19

    בואו נעביר למען הסדר טוב את הטסט שלנו מיד אחרי הנוטציה המתאימה. אז יש לנו את ה-Before Class, מיד אחר כך ה-Before Method, טסט, שאני יכול ליצור כמה טסטים, לא רק אחד.

  27. 09:36

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

  28. 10:08

    פה אנחנו רוצים לעשות תא. יש לנו את ה-class אוקיי ואנחנו ניקט אותו דבר לתחתית הדף כדי שנראה בדיוק את התהליך יש לנו את ה-after method זאת אומרת מה המשמעות של האנוטציות האלה זה אומר בעצם שאנחנו יכולים לשלוט בסדר של הריצה שלנו ואני אומר פה after אוקיי אז בואו נריץ איזה שנייה את ה-plus החדש שיצרנו ונראה איך בעצם זה מתבצע איך הדרך שלי

  29. 11:09

    להריץ את זה בעצם ואיך ה-testing אני רואה את הxml שלי אני חוזר הייתי בקלאס סידרתי את האנוטציות בצורה כזאתי אני יכול

לקורס המלא: קורס סלניום Selenium בסיסי

ההרצאה הקודמת: TestNG Setup

ההרצאה הבאה: TestNG Annotations

הרצאות קשורות מקורסים אחרים

  • The R Class
  • First services
  • FIRST YML SCRIPT
  • התקנת תוסף TestNG

קורסים נוספים במסלול

  • קורס מבוא ל-QA - מידע חשוב לבודק תוכנה
  • קורס פוסטמן - Postman - בדיקות לאתרי אינטרנט - API
  • קורס Robot Framework - בדיקות QA ממשק גרפי
  • קורס יסודות התכנות - שפת JAVA - קורס ג'אווה למתחילים
  • קורס סלניום מתקדם - CI/CD - Continues Integration
  • קורס מייבן - Maven