Ein-des-ein blog

איך לבצע בדיקות ביצועים לאפליקציות ניידות?

Hanna Milovidova
How to Do Mobile App Performance Testing?_1
כמה אפליקציות שהורדו אתה חושב שמשתמשים מוחקים לאחר השימוש הראשון? אתה עשוי להיות מופתע, אבל זה תשע מתוך עשר. הסיבות הן חוויית משתמש גרועה, קפיצים ונפילות, וביצועים נמוכים של פונקציות חיוניות. הרשימה נמשכת זמן רב. עם זאת, רובם יכולים להימנע באמצעות בדיקות ביצועי אפליקציות ניידות מקיפות ומחמירות לפני השחרור. כמה חברות מנסות לחסוך כסף ומסרבות לבדוק את האפליקציות הניידות שלהן. עם זאת, הן עושות טעות גדולה, שמביאה לכך שהמוצר הסופי אינו פונקציונלי, וזמן וכסף מתבזבזים.
מאמר זה יספר לכם אילו סוגי בדיקות זמינות ויבחן בפירוט אחד מסוגי הבדיקות החשובים ביותר —  בדיקות ביצועים של אפליקציות ניידות. מהנדסי ein-des-ein, המנוסים בפיתוח אפליקציות ניידות, ישתפו כיצד זה מתבצע, את מטרתו, הכלים והשיטות.

אפליקציה ניידת: מה זה?

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

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

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

בדיקות יישומים ניידים

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

בדיקות פונקציונליות

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

בדיקות תאימות

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

בדיקות לוקליזציה

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

בדיקות ביצועים

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

בדיקות אבטחה

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

בדיקות שימושיות

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

אחרים

בנוסף לסוגי הבדיקות הבסיסיות, ישנם עוד הרבה בדיקות שניתן לבצע כאשר בודקים אפליקציה ניידת:
  • השקת אפליקציה – בדוק כמה מהר האפליקציה נפתחת והופכת לשימושית
  • תגובה למסך ולכפתור – ודא שהמסכים והכפתורים לא מפגרים
  • מעבד וזיכרון – נטרו כמה האפליקציה מעמיסה על המכשיר
  • שימוש בסוללה – ודא שזה לא מרוקן את הסוללה מהר מדי
  • רשת – בדיקה על Wi-Fi, 4G/5G, וחיבורים איטיים
  • קריסות וטעויות – עקוב אחר כל קריסה או באג משמעותי
  • שימוש בנתונים – ראה כמה נתונים האפליקציה צורכת
  • ריבוי משימות – בדוק התנהגות בעת החלפת אפליקציות או הרצת משימות ברקע
מלבד בדיקות, גורמים רבים נוספים משפיעים על הצלחת האפליקציה. קראו את המאמר שלנו 6 טיפים לשמור על הפרויקט שלכם במסלול ולהצליח כדי ללמוד עוד.

סוגי אפליקציות ותכונות של בדיקות ביצועים

אפליקציות מסחר אלקטרוני / קמעונאות

  • השקת אפליקציה – בדוק כמה מהר האפליקציה נפתחת והופכת לשימושית
  • תגובה למסך ולכפתור – ודא שהמסכים והכפתורים לא מפגרים
  • מעבד וזיכרון – נטרו כמה האפליקציה מעמיסה על המכשיר
  • שימוש בסוללה – ודא שזה לא מרוקן את הסוללה מהר מדי
תכונות לבדוק:
  • השקת אפליקציה – בדוק כמה מהר האפליקציה נפתחת והופכת לשימושית
  • תגובה למסך ולכפתור – ודא שהמסכים והכפתורים לא מפגרים
  • מעבד וזיכרון – נטרו כמה האפליקציה מעמיסה על המכשיר
  • שימוש בסוללה – ודא שזה לא מרוקן את הסוללה מהר מדי
  • רשת – בדיקה על Wi-Fi, 4G/5G, וחיבורים איטיים
  • קריסות וטעויות – עקוב אחר כל קריסה או באג משמעותי

בנקים / אפליקציות פינטק

  • השקת אפליקציה – בדוק כמה מהר האפליקציה נפתחת והופכת לשימושית
  • תגובה למסך ולכפתור – ודא שהמסכים והכפתורים לא מפגרים
  • מעבד וזיכרון – נטרו כמה האפליקציה מעמיסה על המכשיר
  • שימוש בסוללה – ודא שזה לא מרוקן את הסוללה מהר מדי
תכונות לבדוק:
  • השקת אפליקציה – בדוק כמה מהר האפליקציה נפתחת והופכת לשימושית
  • תגובה למסך ולכפתור – ודא שהמסכים והכפתורים לא מפגרים
  • מעבד וזיכרון – נטרו כמה האפליקציה מעמיסה על המכשיר
  • שימוש בסוללה – ודא שזה לא מרוקן את הסוללה מהר מדי
  • רשת – בדיקה על Wi-Fi, 4G/5G, וחיבורים איטיים
  • קריסות וטעויות – עקוב אחר כל קריסה או באג משמעותי

מדיה חברתית / אפליקציות מסרים

  • השקת אפליקציה – בדוק כמה מהר האפליקציה נפתחת והופכת לשימושית
  • תגובה למסך ולכפתור – ודא שהמסכים והכפתורים לא מפגרים
  • מעבד וזיכרון – נטרו כמה האפליקציה מעמיסה על המכשיר
  • שימוש בסוללה – ודא שזה לא מרוקן את הסוללה מהר מדי
תכונות לבדוק:
  • השקת אפליקציה – בדוק כמה מהר האפליקציה נפתחת והופכת לשימושית
  • תגובה למסך ולכפתור – ודא שהמסכים והכפתורים לא מפגרים
  • מעבד וזיכרון – נטרו כמה האפליקציה מעמיסה על המכשיר
  • שימוש בסוללה – ודא שזה לא מרוקן את הסוללה מהר מדי
  • רשת – בדיקה על Wi-Fi, 4G/5G, וחיבורים איטיים
  • קריסות וטעויות – עקוב אחר כל קריסה או באג משמעותי

אפליקציות משחקים

  • השקת אפליקציה – בדוק כמה מהר האפליקציה נפתחת והופכת לשימושית
  • תגובה למסך ולכפתור – ודא שהמסכים והכפתורים לא מפגרים
  • מעבד וזיכרון – נטרו כמה האפליקציה מעמיסה על המכשיר
  • שימוש בסוללה – ודא שזה לא מרוקן את הסוללה מהר מדי
תכונות לבדוק:
  • השקת אפליקציה – בדוק כמה מהר האפליקציה נפתחת והופכת לשימושית
  • תגובה למסך ולכפתור – ודא שהמסכים והכפתורים לא מפגרים
  • מעבד וזיכרון – נטרו כמה האפליקציה מעמיסה על המכשיר
  • שימוש בסוללה – ודא שזה לא מרוקן את הסוללה מהר מדי
  • רשת – בדיקה על Wi-Fi, 4G/5G, וחיבורים איטיים
  • קריסות וטעויות – עקוב אחר כל קריסה או באג משמעותי

אפליקציות בריאות וכושר

  • השקת אפליקציה – בדוק כמה מהר האפליקציה נפתחת והופכת לשימושית
  • תגובה למסך ולכפתור – ודא שהמסכים והכפתורים לא מפגרים
  • מעבד וזיכרון – נטרו כמה האפליקציה מעמיסה על המכשיר
  • שימוש בסוללה – ודא שזה לא מרוקן את הסוללה מהר מדי
תכונות לבדוק:
  • השקת אפליקציה – בדוק כמה מהר האפליקציה נפתחת והופכת לשימושית
  • תגובה למסך ולכפתור – ודא שהמסכים והכפתורים לא מפגרים
  • מעבד וזיכרון – נטרו כמה האפליקציה מעמיסה על המכשיר
  • שימוש בסוללה – ודא שזה לא מרוקן את הסוללה מהר מדי
  • רשת – בדיקה על Wi-Fi, 4G/5G, וחיבורים איטיים
  • קריסות וטעויות – עקוב אחר כל קריסה או באג משמעותי

אפליקציות נסיעה / ניווט

  • השקת אפליקציה – בדוק כמה מהר האפליקציה נפתחת והופכת לשימושית
  • תגובה למסך ולכפתור – ודא שהמסכים והכפתורים לא מפגרים
  • מעבד וזיכרון – נטרו כמה האפליקציה מעמיסה על המכשיר
  • שימוש בסוללה – ודא שזה לא מרוקן את הסוללה מהר מדי
תכונות לבדוק:
  • השקת אפליקציה – בדוק כמה מהר האפליקציה נפתחת והופכת לשימושית
  • תגובה למסך ולכפתור – ודא שהמסכים והכפתורים לא מפגרים
  • מעבד וזיכרון – נטרו כמה האפליקציה מעמיסה על המכשיר
  • שימוש בסוללה – ודא שזה לא מרוקן את הסוללה מהר מדי
  • רשת – בדיקה על Wi-Fi, 4G/5G, וחיבורים איטיים
  • קריסות וטעויות – עקוב אחר כל קריסה או באג משמעותי

אסטרטגיה לבדיקה של יישומי מובייל לביצועים

בדיקות ביצועים הן תהליך מרובה משימות רחב היקף המורכב מהרבה שלבים. זה בודק את ביצועי המערכת בכל התנאים האפשריים. כדי להבטיח תוצאות בדיקה אפקטיביות, נדרשת אסטרטגיית בדיקות ביצועים קריסטלית. למרבה המזל, אין צורך לחדש את הגלגל בכל פעם. שלביה פותחו והוטמעו במשך חיי האפליקציות הניידות. הם גם אינם שונים מבדיקות ביצועים של סוגי תוכנה אחרים. עם זאת, ניתוח מפורט של היישום מתבצע בכל פעם. הוא כולל את כל המידע שנאסף על המערכת:
  • השקת אפליקציה – בדוק כמה מהר האפליקציה נפתחת והופכת לשימושית
  • תגובה למסך ולכפתור – ודא שהמסכים והכפתורים לא מפגרים
  • מעבד וזיכרון – נטרו כמה האפליקציה מעמיסה על המכשיר
  • שימוש בסוללה – ודא שזה לא מרוקן את הסוללה מהר מדי
  • רשת – בדיקה על Wi-Fi, 4G/5G, וחיבורים איטיים
  • קריסות וטעויות – עקוב אחר כל קריסה או באג משמעותי
  • שימוש בנתונים – ראה כמה נתונים האפליקציה צורכת
  • ריבוי משימות – בדוק התנהגות בעת החלפת אפליקציות או הרצת משימות ברקע
  • מכשירים וגרסאות מערכת – ודא שזה עובד על פני טלפונים ומערכות שונות
Strategy for Performance Mobile Applications Testing

שלב 1: זיהוי מטרות הבדיקה ודרישות עסקיות לסיפוק

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

שלב 2: הגדרת מדדי ביצוע לבדיקות

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

מדדי ביצוע לבדיקות

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

שלב 3: תעדוף תרחישי בדיקה

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

שלב 4. סימולציה של סביבה אמיתית לבדיקת ביצועי יישומים

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

שלב 5. הגדר גישה לבדיקה ביחס למתודולוגיית הפיתוח הכוללת

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

ההבדלים בין בדיקות אג'ייל לבדיקות ווטרפול

  • השקת אפליקציה – בדוק כמה מהר האפליקציה נפתחת והופכת לשימושית
  • AgileWaterfall
    Testing is not a separate phase and occurs at the same time as development.Testing is a separate phase. All levels and types of testing can only begin after development is complete.
    Testers and developers work together.Testing is a separate phase. All levels and types of testing can only begin after development is complete.
    Testers are involved in the development of requirements. This helps in mapping requirements to behavior in a real-world scenario and forming acceptance criteria. In addition, logical Acceptance Test Cases will be ready along with the requirements.Testers may not be involved in the requirements phase.
    Acceptance testing is performed after each iteration of the projectAcceptance tests are conducted only at the end of the project.
    Each iteration completes its testing, allowing regression testing every time a new feature or logic is released.Regression testing can only be implemented after development is complete.
    No delays between coding and testing.There are delays between coding and testing.
    Continuous testing with overlapping test levels.Testing is a time-defined action, and levels of testing cannot overlap.
    Testing is the best practice.Testing is often skipped.

    שלב 6: שקול את רוחב הפס של הרשת של המוביל שלך ואת השיהוי של האות בעת הבדיקה

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

    סביבת בדיקות ביצועים לאפליקציות ניידות

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

    צעדים נדרשים להגדרת סביבת בדיקה

    הנה ארבעה צעדים עיקריים להקמת סביבה לבדיקה של ביצועים במובייל:

    סביבת בדיקה מבודדת

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

    סימולציה של נתונים עם מחוללי נתונים בדיקה

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

    הפרדת אפליקציה מהרשת

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

    למעט שרתי פרוקסי מנתיב הרשת

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

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

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

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

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

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

    מגוון ממשקי משתמש

    בהתאם לגרסה של מערכת ההפעלה שלך, פריסות עמודים, גופנים ומיקום של אלמנטים שליטה על המסך משתנים באופן משמעותי. עם זאת, הם מוסדרים עם סטנדרטים והמלצות מקובלים באופן כללי מהיצרנים. אחת מהאתגרים היא לוודא שהמוצר שלך עומד בדרישות UI/UX של חנות Google Play או App Store. אחרת, האפליקציה שלך לא תפורסם, ואתה תאבד זמן וכסף ותצטרך עדכונים דחופים לאפליקציה.

    אתגרים בבדיקת מסכי מגע

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

    כלים לבדיקת ביצועי אפליקציות ניידות

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

    הכלים הפופולריים ביותר לבדיקת ביצועי צד שרת

    ג'ימטר

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

    גאטלינג

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

    בדיקות ביצועים בצד הלקוח

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

    סוס Labs

    שירות זה מספק את הפלטפורמה הגדולה ביותר בעולם מבוססת ענן לבדיקות אוטומטיות של יישומי אינטרנט ומובייל. השירות חוסך את הזמן וההוצאות של תחזוקת תשתית הבדיקות שלך, ומשחרר צוותי פיתוח בכל הגדלים לחדש ולשחרר תוכנה טובה יותר במהירות. נוסדה על ידי היוצר המקורי של Selenium, Sauce Labs מסייעת לחברות להאיץ את מחזורי הפיתוח של תוכנה, לשפר את איכות האפליקציות ולפרוס בביטחון ליותר מ-700 פלטפורמות דפדפן/מערכת הפעלה, כולל Windows, Linux, iOS, Android, ו-Mac OS X.

    אפיום

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

    אוטומטור UI

    UI Automator מפותח על ידי חברת גוגל ומגיע עם ה-SDK של אנדרואיד. UI Automator הוא אנלוגי לכלי UIAutomation של אפל לבדיקת יישומי אנדרואיד. הוא מורכב מספריות Java API שמכילות שיטות ליצירת בדיקות UI.

    רובוטיום

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

    סלנדרויד

    סלנדרויד הוא סביבה נוספת לאוטומציה של בדיקות עבור בדיקות של אפליקציות אנדרואיד מקומיות והיברידיות. הבדיקות שלהם נכתבות באמצעות ה-API של לקוח Selenium Webdriver.

    טסטדרויד 

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

    דוגמאות לבדיקת ביצועי אפליקציות

    Examples of performance app testing

    בדיקות עומס 

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

    בדיקות לחץ

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

    בדיקות יציבות  

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

    בדיקות נפח

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

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

    • השקת אפליקציה – בדוק כמה מהר האפליקציה נפתחת והופכת לשימושית
    • תגובה למסך ולכפתור – ודא שהמסכים והכפתורים לא מפגרים
    • מעבד וזיכרון – נטרו כמה האפליקציה מעמיסה על המכשיר
    • שימוש בסוללה – ודא שזה לא מרוקן את הסוללה מהר מדי
    • רשת – בדיקה על Wi-Fi, 4G/5G, וחיבורים איטיים
    • קריסות וטעויות – עקוב אחר כל קריסה או באג משמעותי
    • שימוש בנתונים – ראה כמה נתונים האפליקציה צורכת
    • ריבוי משימות – בדוק התנהגות בעת החלפת אפליקציות או הרצת משימות ברקע
    • מכשירים וגרסאות מערכת – ודא שזה עובד על פני טלפונים ומערכות שונות
    • טעינה ולחץ – בדוק עם משתמשים מרובים או נתונים כבדים כדי למצוא נקודות כשל
    • עמידות / ספיגה – הרץ את האפליקציה במשך זמן רב כדי לתפוס האטות או דליפות זיכרון
    • חוויית משתמש – בדוק חלקות, קצב פריימים, ותגובה כללית

    לסכם את זה

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