רשומות

לא מצליח להריץ Chrome באמצעות (JAVA&Python) Appium?

תמונה
כן, גם דברים כאלו קורים.... אחד הדברים המתסכלים הם בעיות טכניות שגומרות לכם את הזמן. אתם מנסים להריץ את הבדיקות שכתבתם אבל בכל פעם שאתם מנסים להריץ את כרום באימולטור הוא קורס או שכרום נתקע לכם ולא מגיב.    לפני שאתם שוברים את הראש ומנסים הכל חשוב לציין שהפיתרון הבא עובד לי עם Chipset של אינטל ואם אתם עובדים עם מעבד AMD כדאי לבדוק או לקרוא על Hypervisor אולי זה יעשה לכם את ההבדל. לבעיה כזו יכולות להיות מספר סיבות ולהן גם פיתרון: עבודה עם GPU מובנה עבודה עם Vulcan בחירת דרייבר לא תואם לכרום    עבודה עם מאיץ גרפי מובנה (GPU) עבודה עם מעיץ גרפי מובנה של אינטל יכולה להיות בעיה מאחר והרצה לכרום באימולטור מבצעת חיפוש ושימוש בGPU, לאחרונה גיליתי שעל מנת לעבוד בצורה שותפת לא מספיק להגדיר את המאיץ באימולטור לאוטומטי (אולי זה באג) אלא ממש לסווג אותו לעבודה כתוכנה ולא כחומרהבאופן הבא: סגרו כמובן את האימולטור שלכם. היכנסו למנהל האימולטורים באנדרואיד סטודיו. לחצו על האפשרויות (3 נקודות) ו-EDIT בשורת האימולטור שלכם.  גללו למטה בפרטים לEmulated Performance. שנו את ההגדרה מאוטומ...

בדיקות אוטומציה, Appium Inspector - לא תוכלו בלעדיו

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

בדיקות אוטומציה, התקנת דרייברים Drivers - שלב 6

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

רוצים להתחיל Python? איך מתחילים בקלות

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

בדיקות אוטומציה, הוספת פרויקט MAVEN ל-Eclipse - חלק 5

תמונה
לאחר שהקמנו מערכת, התקנו Android Studio , Eclipse , JAVA, NodeJS ו הגדרנו את הנגישות אליה ואפשרנו את על הרכיבים  להמשך עבודה בשלב בחרתי בפורייקט Maven מאחר ופרויקט זה מנוהל טוב ויש לו הרבה ספריות מוכנות נוחות לעבודה (ישנם עוד ואם יש בקשות לפוסטים נוספים רישמו לי וניגע גם בהם). בחלק זה נרד קצת לקבצים והגדרות של הפרוייקט אז תכינו קפה ותראו ביסודיות (אם תרצו עוד הרחבות מעבר לכך תרשמו לי) מהו פרויקט Maven ? פרויקט Maven הוא פרויקט פיתוח כלי שמאפשר בניה וניהול פרויקטי תוכנה. הכלי עוזר למפתחים להתקדם בפרויקט במהירות ובקלות והוא עושה זאת על ידי: פישוט תהליך הבנייה שימוש במערכת בנייה עקבית מתן מידע איכותי על הפרויקט קידום שיטות פיתוח טובות יותר

בדיקות אוטומציה, התקנה והגדרה של eclipe - חלק 4

תמונה
עד כה הפוסטים הקודמים עסקו בהקמת הסביבה של אוטומציות למובייל שכללו אנדרואיד סטודיו, סביבת JAVA וNodeJS go npm שיאפשר לנו למשוך דינמית חבילת שפות ותוספים. בפוסט הזה נתקין את העורך עליו נעבוד ונריץ את הקוד ונכון לפוסט זה נתקדם עם Eclipse בשפת JAVA (בהמשך יהיו פוסטים של Python ועוד). מה זה Eclipse? בעיקרו Eclipse היא סביבת פיתוח משולבת (IDE) בשימוש נרחב המספקת סביבת עבודה למתכנתי מחשבים לפיתוח תוכנה. זהו פרויקט בקוד פתוח המחבר קהילה ופרוייקטים רחבים. Eclipse IDE תומך במגוון רחב של שפות תכנות, כולל Java, C/C++ ו-PHP, בין היתר. הוא מציע גם מערכת עשירה של תוספים, המאפשרת למפתחים להרחיב את היכולות שלו.

בדיקות אוטומציה Appium הגדרת סביבת עבודה - חלק 3

תמונה
בהמשך לפוסט הקודם שלי בו ביצענו התקנה של סביבת עבודה חשוב לבצע הגדרות נגישות (Path) למערכות המותקנות על מנת לאפשר נגישות בכתיבת פקודות במערכת מכל מקום. פיתחו את ה System Setting של חלונות אותו ניתן לפתוח ישירות מהחיפוש או מסך מאפייני מערכת. ליחצו ופיתחו את ה System Variables ותשאירו אותו פתוח. ישנם שתי דרכים להגדיר נגישות מערכת, באמצעות הוספה ל-PATH או יצירת משתנה חדש. משתני מערכת הם משתנים גלובליים השולטים בתצורה של מערכת Windows, בעוד שמשתנה הסביבה PATH הוא משתנה מערכת ספציפי המציין היכן Windows צריך לחפש קבצי הפעלה. שינוי ה-PATH באופן שגוי יכול להקשות או בלתי אפשרי להפעיל תוכניות מסוימות.

בדיקות אוטומציה, Appium התקנת סביבת עבודה - חלק 2

תמונה
החלטנו לעבוד עם Appium איפה מתחילים? מה מתקינים? מה זה Appium? Appium Appium הוא פרויקט בקוד פתוח שמאפשר הרצת אוטומציה של ממשק המשתמש במגוון פלטפורמות, כולל מובייל, דפדפנים, תוכנות Desktop ועוד. Appium בעיקרו משמש לאוטומציה של בדיקות תוכנה, כדי לבדוק את הפונקציונליות של אפליקציות. הפרויקט מאפשר לכתוב קוד שמדמה את התנהגות המשתמש האמיתי באפליקציה, ובכך מספק סימולציה מדויקת של מה שקורה בעולם האמיתי. ובשביל להבין את ההיקף Appium מתוחזק ותומך ב; Chrome, Firefox, Safari, macOS, Windows, ממשקי טלוויזיה כגון; Roku, tvOS, Android TV, Samsung ועוד. כדי לעבוד עם Appium אנחנו צריכים סביבה מוכנה לעבודה ולשם כך נתחיל בהתקנות:

בדיקות אוטומציה, איך מתחילים? חלק 1

תמונה
כבר הצגנו את היתרונות וחסרונות של בדיקות אוטומציה, החלטנו להתחיל להכנס לנושא. איפה מתחילים ומה חשוב לדעת לפני? השלב הראשון הוא הקמת סביבת עבודה ובחירת הפלטפורמה המתאימה, ולשם כך חשוב שנבין מהן המשאבים להם אנחנו זקוקים לשם הרצתם? האם נוכל להסתפק בתוספים לדפדפן? האם נזדקק לסימולטורים או אימולטורים וסביבת פיתוח? באיזו שפת כתיבה נשתמש? מה כדאי ללמוד ומה נפוץ יותר כיום? אחרי שהחלטת מה הצורך שלכם תוכלו להתקדם לשלב ההתקנה והטמעה. אז מה הלאה? בשלב זה אמשיך מפה להקמת סביבת בדיקות אוטומציה של Appium לבדיקות אוטומציה לאפליקציות native (אנדרואיד וIOS).  בפוסט הבא אעסוק ב"הקמת סביבת בדיקות לAPPIUM" .  

בדיקות אוטומציה, רקע?

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

מהם דוקרים Dockers ?

תמונה
דוקרים או Dockers, הם מערכת של מוצרים מבוססי שירות (PaaS פלטרפורה כשירות) המשתמשים בווירטואליזציה ברמת ה-OS כדי לספק תוכנה בחבילות הנקראות "מכולות" או Container. ה"מכולות" מופרדות זו מזו וחולקות את הליבה הבסיסית של המחשב המארח. זה הופך אותן לקלות משקל וניידות, והן יכולות להיות מופעלות על כל מחשב שבו מותקן Docker Engine. הפלטפורמות המכילות (נקרא להן מכולות) האלו ב Docker נוצרות מimage, (כמו מי שזוכר את הGhost) שהן כמו תוכניות בנייה למכולות. והimageים האלו יכולים להיווצר מאפס או להורדה משירות ציבורי כגון Docker Hub. לאחר היצירת, ניתן להשתמש בה ליצירת "מכולות" מרובות. ובמילים פשוטות יותר תארו לכם שיצרתם "הקלטת מצב" של המחשב שלכם (ללא תלות בחומרה) ואז אתם הולכים לכל העובדים בחברה ופותחים  אותו  להם אותו מההקלטה עם כל התוכנות שלכם. יהיה להם מחשב מותקן מראש עם כל תוכנות הפיתוח שלכם.

מה לChatGPT ולQA

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

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

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

כתיבת באגים - מתודולוגיה?

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

כלים ‏לניתור ‏קבצי לוג בזמן ‏בדיקות

תמונה
כמה מכם עובדים ומריצים בדיקות על יישומים ניידים? אם הפרויקט שלכם עובד מול שירותי שרת המאמר הקטן הזה יעזור לכם. ניתור log שרת בזמן אמת הוא דבר חשוב, עבודה מול קבצי לוג שרת יכולה לתת יתרונות רבים גם לבודק וגם למפתח:  1. ניתור שגיאות בבקשות client-server.  2. ניתור נפילות, שגיאות ותקלות שירותים צד שרת.  3. מתן מידע מלא למפתח בפתיחת באג.  4. הבנה עמוקה יותר של מבנה המערכת. ועוד..  

כלי בדיקות ביצועים מובנה בדפדפן כרום - מגדלור

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

פרטיות בשימוש ברשת, אבטחת מידע ושינוי מיקום בבדיקות

תמונה
המאמר הזה יכול לסייע לכל אחד ולא רק לבודקים מאחר ואני בטוח שכל אחד רוצה בשפה פשוטה להבין מעט בנוגע לאבטחת המידע שלו ואופן הגלישה באתרים שונים ובשימוש בשירותים שונים ברשת (דוא'ל וכו'). שימוש ברשת חוצה גבולות ויבשות ובמהירות רבה משאנו מבינים, דבר שנותן בעידן המודרני יתרון ענק בקבלת מידע ומסירת מידע אך גם מסכן את המידע שלנו אם אנחנו מבינים כמה גורמים מגשרים במעבר הנתונים האלו ביננו לבין ספק המידע (ספק האינטרנט, שירותי דואר אלקטרוני, אתרי אינטרנט שונים ועוד). כשאנו משתמשים, למשל, באווטלוק outlook של מיקרוסופט אנחנו מבקשים מגוגל או משירות אחר את האימיילים שלנו תוך שימוש בשיטות שונות ולעתים המידע הזה חשוף לכל מי שמעביר את המידע הזה עד למחשב שלנו. פרטיות בגלישה, רקע - לפני מספר שנים תודות לגוגל ופייסבוק נוצר לחץ באינטרנט להפוך את הגלישה לבטוחה יותר על ידי שימוש בהצפנה ( SSL ) מה שאתם רואים היום בכתובת האתר למעלה בדפדפן שמתחיל ב HTTP S  (לדוגמא: https://www.facebook.com), הS בסוף מייצג אבטחת המידע בצורה מוצפנת, מה שאומר שאף אחד לא יכול לקרוא את המידע היוצא מהמחשב שלנו עד שה...

מערכת הפעלה אנדרויד 8, מה צריך לדעת?

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

סימולציה למיקום בבדיקות אפליקציית IOS באמצעות xcode

תמונה
כמה פעמים נאלצתם לבצע בדיקות מבוססות שינוי מיקום, נכון שבאנדרויד זה קצת יותר קל באמצעות אפליצקיה של FakeGPS אך באייפון זה קצת יותר מסובך ולעיתים למפתח לא יהיה זמן לפתח לכם כלי בדיקה אז מה לעשות?! אחת היתרונות בבדיקות IOS זו העבודה במערכת הפעלה של Mac ואם אין לכם בטוח שבפרוייקט שלכם תקבלו רישיון לVMware ותוכלו להתקין Mac וירטואלי (אנסה לכתוב מאמר העוסק בהתקנת  Mac וירטואלי בהמשך יש מתעניינים). עבודה על Mac או יותר מדוייק עם Xcode שזו תוכנת הפיתוח של מפתחי אפליקציות IOS היא מאפשרת הרבה דברים כמו קריאת לוגים ומתן אפשרות לפתוח נקודות עצירה בקריסות דבר שיעזור מאוד למפתח שלכם אך בין השאר גם האפשרות לשנות ולקבוע מיקום. Apple נתנו בסביבת הפיתוח יכולת

כלי בדיקה וניתור לעבודה עם אפליקציות ניידיות - TestFairy

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