
first-robot-test.robot. הסיומת חייבת להיות robot.הטקסט המלא של הדקות הראשונות בהרצאה «מבנה קובץ של רובוט - Robot Framework» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
בקטע הבא אני רוצה להראות את יצירת הטסט רובוט הראשון שאנחנו נריץ ביחד נתחיל בשלב הפרקטי שאנחנו בתוך הפרויקט שלנו הולכים לספריית טסטס עומדים עליה, לוחצים במקש ימני, בוחרים בתפריט new, פייל ושימו לב, פה אנחנו צריכים לתת שם אז בואו נקרא לה first-robot-test.robot
שימו לב, ה-extension, הסיומת של הקובץ היא רובוט אני רוצה להדגיש את הפעולה שעשינו, עמדנו על הספריית טסט, לקחנו מכש ימני New ולא בחרנו ב-Python פייל, למרות שאנחנו בסביבת פייתון עם PyCharm, בחרתי בפייל רגיל, נתתי שם ודאגתי שהאקסטנט של הסיומי תהיה רובוט.
המבנה האפשרי של קובץ מסוג רובוט כולל את החלקים הבאים: החלק הראשון, סטינגס, הגדרות, החלק השני הוא variables, משתנים, גלובליים שיהיו מוכרים לכל אורך הקובץ, לכל אורך הרובוט פייל.
יש לנו גם טסט קייסס, פה יהיו ממש טסטים שהם ישתמשו בחלקים לפני כן, הסטינגס והווריבלס כדי לבצע פעולות על המערכת הנבדקת.
ויש לנו את ה-QWords, QWords זה מילות מפתח בתרגום ישיר, אבל למעשה אפשר להקביל אותם בעולם התוכנה והתכנות מונחי עצמים, Object Oriented, ומתודות שבהן אנחנו עושים שימוש, אנחנו יכולים לשלוח פרמטרים, לקבל Outputs בחלק ה-Settings, מה שאנחנו צופים שיהיה זה דוקומנטציה, יהיה ליברי, ליברי זה
קריאה או קישור לספריות אחרות שנותנות לנו keywords מובנות, זאת אומרת מילות מפתח מובנות שיכולים להשתמש בהן כחלק מקוד אחר, לדוגמה Selenium Libraries, יש לנו Resources, ריסורסז יכול להיות קריאה לקובץ רובוט אחר שעושה בשבילנו דברים.
אנחנו נראה את זה עוד הרבה ואנחנו נדגים את זה. בואו נשים לב להבדל. ליבררי זה קריאה לספרייה חיצונית שאנחנו משתמשים בקי-וורטס המובנה שלה, שלא אנחנו כתבנו, לדוגמה סלניום ליבררי, וריסורסז זה קבצי רובוט אחרים שבדרך כלל אנחנו כתבנו ואנחנו משתמשים בקי-וורטס שנמצאים שם.
דבר נוסף שיכול להיות בחלק של הסטינגס הוא טסט טיים-אוט. טסטיים אאוט זה חלק מנושא של סינכרוניזציה שנדבר עליו של היכולת שלנו להיות טולרנטים סבלנים להימצאות או אי-מצאות של אלמנטים ווביים בדף לדוגמה כפתור מסוים הוא ב-disable כמה חלקיקי שניות אז אנחנו רוצים לתת איזשהו גרייס כזה כדי לא להכשיל את הטסט ולהגיד שהכפתור
היה דיסייבל לפעמים לוקח טיפה למערכת לווב להתרענן קצת לקבל את המידע ולהציג אותו קצת זמן ואנחנו רוצים שהטסט שלנו יהיה מספיק טולרנטי כדי להתמודד עם המצבים האלה.
אנחנו עוד נראה דוגמאות של הדברים האלה. יש לנו טסט סט-אפ וטסט טיר-דאון. מה זה אומר? זה אומר איזושהי סדרת פעולות שאנחנו נרצה להתחיל בכל התחלה וסיום של טסט. התחלה או סיום של טסט, לדוגמה, פתיחת הדפדפן, הגעה ל-URL מסוים, ובטיר-דאון סגירת הדפדפן או לוג-אאוט וסגירת הדפדפן. החלק המסיים זה גם סות סט-אפ וטיר-דאון.
מה זה אומר, סוט סט-אפ וטיר-דאון לעומת טסט סט-אפ וטיר-דאון? פשוט הרזולוציה. כאן אנחנו עושים את זה בכל טסט וטסט, יכול להיות לנו בקובץ רובוט כמה טסטים, אנחנו נראה את זה, ובסוט זה, כל סוט זה בעצם קובץ רובוט אחד.
אז יש דברים שנרצה לעשות ברזולוציה של כל הטסטים שקיימים בתוך הקובץ, ויש כאלה שנרצה לעשות פעם אחת, אנחנו נדגים את זה, זה יהיה הכי ברור. עוד חלק שיש לנו זה הטסט קייס עצמו, שגם מורכב מחלק של דוקומנטיישן, לכתוב הערות, הסברים ומילות מפתח שיקלו על החיפוש.
הטאגס הוא בעצם אפשרות שלנו לקבץ או לאגד כמה טסטים תחת מעטפת אחת. לדוגמה, טאגס של טסטים שעוסקים בלוגין, או טאגס של טסטים שעוסקים ברג'יסטרציה. ו-timeout, timeout, שוב אמרנו שזה היכולת שלנו לתת סינכרוניזציה, איזשהו גרייס מסוים למערכת לחכות לאלמנטים עד שיופיעו,
עד שיהיו זמינים מבחינת הסלניום ללחוץ עליהם ולהפעיל אותם. אז חזרנו לטסט הראשון, מה שאנחנו רוצים לעשות פה זה לעשות נגיד סטינגס.
אתם רואים שה-ID המעולה הזה, פייצ'או כבר מציע לנו לעשות את הסטינגס, אז אני בוחר את הסטינגס. אני כרגע לא אמלא את הפרטים, אבל מיד בסרטונים הבאים נראה דוגמאות.
החלק השני שאני רוצה לבחור זה החלק של ה-Varables. אוקיי, אני גם אצא משלים. והחלק השלישי יהיה טסט קייס. ראיתם שיש לנו גם טאסט אבל לא נעסוק בזה כרגע לא נפרט כי ברובוט שלנו