PracticU

הרצאה 9 - קורס Load Runner הראשון

בלי כתוביותעם כתוביות
PracticU › קורס Load Runner - בדיקת עומסים › הרצאה 9 - קורס Load Runner הראשון
מילון מושגים:
דוח - מסמך או תצוגה שמסכמים נתונים בצורה מאורגנת לצורך הבנה וקבלת החלטות.
תגובה - המידע שהשרת מחזיר ללקוח בתשובה לבקשה, הכולל בדרך כלל נתונים וקוד סטטוס.
שרת - מחשב או תוכנה שמספקים שירות למחשבים אחרים (לקוחות) ברשת, למשל אחסון קבצים, אתר אינטרנט או מסד נתונים, ומגיבים לבקשות שלהם.
לקוח - תוכנה או מחשב שפונים לשרת ומבקשים ממנו שירות או מידע, למשל דפדפן שמבקש דף אינטרנט.
דרישות - התיאור של מה שמערכת או תוכנה צריכות לעשות, המשמש בסיס לפיתוח ולבדיקות.
בקשה - פנייה שלקוח שולח לשרת כדי לקבל מידע או לבצע פעולה. השרת מחזיר עליה תגובה.
HTML - שפת הסימון שבה בונים את מבנה ותוכן דפי האינטרנט, באמצעות תגיות שמגדירות כותרות, פסקאות, קישורים ועוד.

הרצאה 9 - קורס Load Runner הראשון
השיעור התשיעי עוסק בניתוח תוצאות הריצה באנלייזר. זה השלב החמישי בתהליך, שבו מחפשים את צוואר הבקבוק ואת המקום שבו הבעיה מתחילה.
מסלול הניתוח
1. מתחילים ב-Summary Report, שמאחד את הנתונים ברמה גבוהה: הטרנזקציות, כמות הכשלים, זמנים ממוצעים ו-90%.
2. בודקים אם זמני התגובה עומדים ביעד. אם הכול תקין, אין צורך להמשיך לניתוח מעמיק.
3. אם יש חריגה, יורדים לרמת המשאבים (שרת Web, דאטהבייס, קליינט) ומחפשים את המקום שבו נוצרה הבעיה.
4. מבצעים Correlation, כלומר מציבים גרפים זה על גבי זה, כדי לזהות קשר בין עלייה במספר המשתמשים לבין עלייה בזמן התגובה.
למה 90 אחוז
הממוצע לא תמיד מצביע על הבעיה. ה-90% אומר מה הזמן עבור 90% מהטרנזקציות, ומאפשר להתעלם מחריגים נדירים, כמו לוגין שהתעכב. במערכות קריטיות ייתכן שיידרשו 99% או 99.9%, לפי הדרישות של הארגון.
גרפים שהוזכרו
- Running Vusers: כמות המשתמשים שרצו לאורך הזמן.
- Transaction Response Time: זמן התגובה לאורך הזמן.
- Hits per Second ו-Throughput: עומס הבקשות והתעבורה.
- Transaction Response Time Distribution: התפלגות זמני התגובה לטרנזקציה מסוימת.
דוגמה
בדוגמה שמוצגת, זמן התגובה עולה אחרי כ-20 דקות ומתחיל לחרוג מיעד של 5 שניות. בגרף של זמן התגובה מול מספר המשתמשים רואים שהחריגה מתחילה כשמגיעים לכ-70 יוזרים.
דוחות
אפשר לייצא דוח בפורמט HTML או Word. HTML קל יותר להעברה, ו-Word מאפשר לערוך מסקנות אחרי הייצוא.
השיעור הבא בקורס: הרצאה 10 - קורס Load Runner הראשון

פרקי ההרצאה: הרצאה 9 - קורס Load Runner הראשון

  1. 00:00

    מבוא לניתוח תוצאות ב-Analyzer

  2. 02:01

    שלבי ניתוח התוצאות

  3. 03:04

    Summary Report ואחוזון 90

  4. 06:33

    הרצת Scenario קצר לאיסוף תוצאות

  5. 08:30

    פתיחת התוצאות ב-Analyzer

  6. 10:47

    ניתוח גרף Average Transaction Time

  7. 12:39

    אחוז טרנזקציות שעמדו בזמן התגובה

  8. 13:58

    Drill Down והוספת גרפים

תמלול ההרצאה: הרצאה 9 - קורס Load Runner הראשון

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

  1. 00:03

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

  2. 00:30

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

  3. 00:58

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

  4. 01:26

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

  5. 01:57

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

  6. 02:12

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

  7. 02:31

    במידה וגילינו איזושהי בעיה בזמן תגובה, אנחנו נעשה drill-down פנימה, נצלול פנימה וננתח את המשאבים של המערכת. משווים של ה-Web Server, משווים של ה-Database, משווים של ה-Client.

  8. 02:48

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

  9. 03:08

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

  10. 03:32

    איזה טרנזקציות קיימות אצלנו, מה אנחנו מדדנו? קרדיט, לוג-אין, לוג-אאוט, סרצ' וכן הלאה. מה הזמן התגובה הכי גבוה שהיה לאותה טרנזקציה?

  11. 03:46

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

  12. 04:16

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

  13. 04:34

    אז 90% זה משהו שהוא טוב למערכות הלא קריטיות, לא מבצעיות, מערכות שאפשר לחיות עם הכשל בזמן התגובה גבוהה.

  14. 04:47

    חיים יבקשו מכם 99% או 99.9% תלוי תלוי במערכת תלוי בדרישות תלוי במדינה שאתם עובדים בה כל מדינה עם הדרישות שלה כל הארגונים ודרישות שלו בדרך כלל אחרי שאנחנו נפתח את הקריפט שלנו את התוצאות הריצה שלנו אנחנו נעבור גם ל-Average Response Time ל-Average Transaction Response Time

  15. 05:17

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

  16. 05:36

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

  17. 06:01

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

  18. 06:14

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

  19. 06:28

    אני לא הכנתי מראש את התוצאות של הריצה, אני רוצה שנעשה את זה ביחד אתכם. בואו נקצור קריפט חדש של ה-search of flight order, כמו שעשינו בשיעור הקודם. אנחנו נקבע שאנחנו עובדים עבור 20 יוזרים, זה בסדר גמור לנו.

  20. 06:49

    אנחנו נריץ את זה כדי לקצר את התהליך לא 5 דקות אלא 1 דקה ואני חושב שזה מספיק לנו כדי להתחיל בריצה. אה, כמובן, כמובן שכחנו את הלואוד ג'נרייטור.

  21. 07:02

    לואוד ראנר אייג'ן, סליחה. ונעשה קונקשן אליו, נגיד לוקל-הוס. ונתחיל בריצה. ונמתין דקה. אין לנו ברירה אלא להמתין דקה.

  22. 07:16

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

  23. 07:29

    עברו כבר 30 שניות, יש לנו עוד המתנה של 30 שניות, אז בואו נמתין. זהו, אני חושב שאנחנו בשלב של תיום ההרצה, עוד כמה שניות זה יסתיים, ואז נוכל לנתח את התוצאות. בואו נעצור את ההרצה כדי שזה יזרז את התהליך.

  24. 07:49

    האם לעצור? כן. אם יוצאים באופן הדרגתי, כמו שאתם רואים, זה עוד זמן שמאריך לנו קצת, הנה, ונאספו התוצאות עכשיו. עכשיו, בהודעה שראיתם, כל התוצאות עברו מתוך ה-loadrunner agent לתוך ה-controller.

  25. 08:15

    במקרה שלנו ה-loadrunner agent רץ על העמדה, אבל במקרים שהוא לא רץ על העמדה זה ממש יעבור כתעבורה ברשת ל-controller. ומה אפשר לנסות לעשות?

  26. 08:26

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

  27. 08:37

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

  28. 09:09

    אחד אומר תעלה את ה-load analyzer והשני אומר תחת התוצאות הנה, זה משהו שנראה קצת יותר טוב עכשיו יפה, עוד זמן שלוקח לעלות יחסית תהליך זריז אבל במקרה הזה אולי בגלל שזה רץ על אותה עמדה אצלי ועמדה לא חזקה זה לוקח טיפה זמן כמה שניות, עוד 5% וסיימנו The following graphs were not created, hit per second and throwput.

  29. 09:48

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

  30. 10:13

    אוקיי, סאמרי ריפורט. בואו נראה האם הוא דומה למה שראינו במצגת. הנה, יש לנו פה כמה טרנזקציות. כמובן, זה לא הספיק לאסוף את הנתונים, אמנם זה יש לנו את ה-failed.

  31. 10:25

    אם הוא היה אוסף נתונים היה לנו גם מקסימום. יש לנו running ו-users, גרף של היוזרים, כמה הם הספיקו להיכנס למערכת וכמה הם רצו.

  32. 10:35

    Transaction summary, תוצאות, ו-average response time. עבור in it, אוקיי? עכשיו, זו הדגמה של מה אנחנו יכולים לקבל ב-Analyze.

  33. 10:47

    בואו נחזור למצגת. Average Transaction Time בדרך כלל יגיד לנו כמה זמן בציר Y, לדוגמה בציר הזה, הנחי, יש לנו זמן תגובה.

  34. 11:02

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

  35. 11:25

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

  36. 11:39

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

  37. 11:56

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

  38. 12:17

    אתם רואים? זה האזור. זאת אומרת שהמערכת שלנו עומדת ב-70 יוזרים והיא לא מצליחה לעמוד ביותר מ-70 יוזרים עם הזמן תגובה הצפוי.

  39. 12:29

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

  40. 12:48

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

  41. 13:06

    מה עוד סוגרף שאנחנו יכולים להביא ושיעזור לנו קצת לנתח ולהתמקד בתוצאות? זה Transaction Response Time Distribution. מה זה אומר? שאם ניקח Transacted Credit, אנחנו מתמקדים כרגע ב-Transacted Credit, כנראה שעשינו drill-down פנימה רק לטרנזקציה הזאת.

  42. 13:28

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

  43. 13:48

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

  44. 14:13

    ולואוד ראנר הוא באמת מאפשר לעשות אין סוף אפשרויות, אין סוף פעולות במערכת שלנו, קורלציות, drill-down, בואו נראה איך זה מתבצע במערכת. היא מעלה חזרה את ה-loadrunner-analyzer כמו שאתם רואים חזרנו חזרה ובואו נעבור קצת על האופציות שאפשר לעשות כאן קודם כל יש לנו פה פלוס ומינוס אנחנו יכולים להוסיף new graph

  45. 14:43

    נגיד מעניין גרף מתוך האזור של הטרנזקציה מה יכול לעניין אותנו

לקורס המלא: קורס Load Runner אונליין

ההרצאה הקודמת: הרצאה 8 - קורס Load Runner הראשון

ההרצאה הבאה: הרצאה 10 - קורס Load Runner הראשון

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

  • הרצאה 1 - קורס Quality Center הראשון
  • ה-SCRIPT הראשון שלי
  • הפרויקט הראשון שלנו ב-GitHub
  • בדיקת ידע על המודול הראשון ב-AZ-900

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

  • קורס שלם ומקיף בעברית על בדיקות תוכנה
  • Quality Center
  • מבחן QA לדוגמא