PracticU

Run Tests in Parallel

בלי כתוביותעם כתוביות
PracticU › קורס סלניום בסיסי - בדיקות אוטומטיות - Selenium › Run Tests in Parallel
מילון מושגים:
מחלקה - תבנית בתכנות מונחה עצמים שמגדירה אילו נתונים ופעולות יהיו לאובייקטים שנוצרים ממנה.
XML - שפת סימון לייצוג נתונים מובְנים בעזרת תגיות, המשמשת להחלפת מידע בין מערכות ולקובצי הגדרות.
דפדפן - תוכנה שמציגה דפי אינטרנט ומריצה את הקוד שבהם, ומאפשרת לגלוש בין אתרים, למשל Chrome או Firefox.
מתודה - פונקציה המוגדרת בתוך מחלקה ומתארת פעולה שאובייקטים מאותה מחלקה יכולים לבצע.

Run Tests in Parallel
השיעור מראה איך מריצים כמה טסטים במקביל ב-TestNG כדי לחסוך זמן, ואיך מריצים טסט בודד.
השלבים העיקריים
1. שכפול המחלקה: מעתיקים את מחלקת הטסט, ובעותק משנים את הבדיקה, למשל לחיצה על Weather במקום על Calendar.
2. הפעלת ריצה מקבילית: בקובץ ה-XML מגדירים ריצה מקבילית. כדי שהטסטים ירוצו במקביל, הם צריכים להיות באותה עדיפות (priority).
3. תוצאה: נפתחים שני דפדפנים במקביל, כל אחד מבצע בדיקה נפרדת, והזמן הכולל קצר יותר.
4. הרצת טסט בודד: מסמנים את שם המתודה ולוחצים Run, ואז רק המתודה הנבחרת רצה.
שימו לב
- ריצה מקבילית מתאימה כשיש הרבה טסטים. בדוגמה של שני טסטים החיסכון קטן.
ריצה מקבילית וריצה ממוקדת חוסכות זמן ומאפשרות לבדוק חלק מהטסטים בלבד.
השיעור הבא בקורס: getParameter from TestNG

פרקי ההרצאה: Run Tests in Parallel

  1. 00:00

    מבוא להרצה מקבילית של טסטים

  2. 00:38

    שכפול הטסט לווריאציה אחרת

  3. 02:03

    הגדרת הרצה מקבילית בקובץ XML

  4. 03:18

    שינוי הגדרת parallel להרצה מקבילית

  5. 03:55

    תוצאות הרצה במקביל בשני דפדפנים

  6. 04:30

    כלל זהה לעדיפות של הטסטים

תמלול ההרצאה: Run Tests in Parallel

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

  1. 00:02

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

  2. 00:24

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

  3. 00:45

    אם ינצל לנו גם את הטסט 1, טסט 1, כאן יש לנו את ה-calendar ו-calendar, אבל אנחנו נרצה כאן לעשות איזושהי וריאציה אחרת של הטסט שלנו, בואו נראה, יש לנו את ה.. אם אנחנו רוצים ללחוץ על weather אז אנחנו יכולים ללחוץ על הלינק weather ולעשות את הטסט שלנו במקום calendar weather אז ככה יש לנו את הטסט פה

  4. 01:31

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

  5. 02:18

    אנג'יני צובע אותו עומד על הפקאץ' ועושה פייסט אחרי שעשיתי קופי הוא ישר מעלה לי את זה לסלנאום 2 וכאן אני בסלנאום 1 בטסט עצמו אני מנטרן את אחד הטסטים ובעצם טסט שתיים אני שירת אחד ומה שאני מצפה שיקרה זה שבעצם ירוצו הטסטים במקביל לשני בראוזרים של חום מה זה עוזר לי זה בעצם מאפשר לי להריץ

  6. 02:32

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

  7. 03:50

    פעמיים ואני יכול לראות פה את השני בראוזרים שלי כל אחד מהם אמור לגשת ל-URL אחר ולבצע את הבדיקה בצורה נפרדת. אז אחד הולך ל-Weather והשני הולך ל-Calendar ושניהם יסיימו באותו זמן.

  8. 04:07

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

  9. 04:25

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

  10. 05:02

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

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

ההרצאה הקודמת: Begin Write Tests

ההרצאה הבאה: getParameter from TestNG

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

  • Run As Account
  • Run a Wear Emulator
  • קונטיינר בענן - Cloud Run - הרצת קונטיינר בענן
  • חסימת RUN ו-CMD - בדומיין עם GPO

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

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