PracticU

Data Driven Test עם Excel - חלק 2

בלי כתוביותעם כתוביות
PracticU › קורס סלניום מתקדם - CI/CD - Continues Integration › Data Driven Test עם Excel - חלק 2
מילון מושגים:
אקסל - תוכנת גיליונות אלקטרוניים של מיקרוסופט לארגון, חישוב וניתוח נתונים בטבלאות ובנוסחאות.
מתודה - פונקציה המוגדרת בתוך מחלקה ומתארת פעולה שאובייקטים מאותה מחלקה יכולים לבצע.
מערך - מבנה נתונים שמאחסן אוסף ערכים מאותו סוג ברצף, שאפשר לגשת אליהם לפי מספר מיקום (אינדקס).
פרמטר - ערך שמועבר לפונקציה או לפקודה כקלט, ומשפיע על אופן פעולתן ועל התוצאה שהן מחזירות.
נתיב - מחרוזת שמתארת את מיקומו של קובץ או תיקייה במערכת הקבצים, או כתובת של משאב בתוך אתר.
אובייקט - יחידה בתכנות מונחה עצמים שמאגדת נתונים (תכונות) ופעולות (מתודות). נוצר בדרך כלל ממחלקה המשמשת כתבנית.
לולאה - מבנה בקרה שחוזר על קטע קוד שוב ושוב כל עוד תנאי מתקיים או עבור כל פריט באוסף.
דיבאג - תהליך של איתור, הבנה ותיקון תקלות בקוד, לעיתים בעזרת כלי שמאפשר לעצור ולעקוב אחר ריצת התוכנית.

Data Driven Test עם Excel - חלק 2
בהמשך התממשקות האקסל כותבים מתודה ציבורית וסטטית שפותחת את הקובץ, קוראת את הלשונית ומעבירה את התוכן למערך הדו-מימדי שמזין את הטסט.
מסלול העבודה
1. חתימת המתודה: המתודה getDataFromExcelToObject ציבורית וסטטית, מחזירה מערך דו-מימדי, ומקבלת שני פרמטרים: נתיב הקובץ ושם הלשונית.
2. פתיחת הקובץ: יוצרים FileInputStream עם נתיב הקובץ, ומעבירים אותו לאובייקט ה-Workbook של POI.
3. גישה ללשונית: מקבלים את ה-sheet לפי שמו בעזרת getSheet.
4. גבולות הנתונים: הגבולות נקבעו ידנית, 4 שורות ו-3 עמודות, בלי שורת הכותרות. השיעור מציין שאפשר לחשב אותם באופן דינמי.
5. מילוי המערך: יוצרים מערך חדש בגודל שנקבע, ובשתי לולאות for, אחת לשורות ואחת לעמודות, ממלאים את התאים לפי הסדר.
6. טיפול בשגיאות: הקוד עטוף ב-try ו-catch, וב-catch מודפס stack trace עם printStackTrace().
הערות
בדיבאג ניתן לראות את המערך עם כל הנתונים, שורה אחר שורה. קריאת התאים עצמם מופיעה בשיעור הבא.
כעת מבינים את מבנה המתודה שמביאה נתוני אקסל לתוך אובייקט הנתונים.
השיעור הבא בקורס: Data Driven Test עם Excel - חלק 3

פרקי ההרצאה: Data Driven Test עם Excel - חלק 2

  1. 00:00

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

  2. 01:00

    הגדרת המתודה והחזרת מערך דו-מימדי

  3. 03:01

    פתיחת קובץ אקסל בעזרת FileInputStream

  4. 04:57

    פתיחת חוברת העבודה עם POI

  5. 05:56

    גישה ללשונית האקסל לפי שם

  6. 07:01

    הגדרת מיקום הנתונים בקובץ

  7. 08:13

    גבולות השורות והעמודות לקריאה

  8. 09:30

    קריאת הנתונים אל תוך האובייקט

תמלול ההרצאה: Data Driven Test עם Excel - חלק 2

הטקסט המלא של הדקות הראשונות בהרצאה «Data Driven Test עם Excel - חלק 2» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.

  1. 00:02

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

  2. 00:29

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

  3. 00:49

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

  4. 01:03

    אז זו הדרך שלנו להעביר את הנתונים באובייקט דו-מימדי ואנחנו מצהירים על זה שזה יהיה התוצר של המתודה שלנו. נקרא למתודה שלנו getDataFromExcelToObject אוקיי, והנתונים שהיא תקבל אלה יהיו String שהם יהיו FilePath וגם יהיה לנו String שיגיד לנו את ה-shitName שאת אותו בתוך הקובץ אקסל שבהם

  5. 01:48

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

  6. 02:21

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

  7. 02:33

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

  8. 03:01

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

  9. 03:16

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

  10. 03:36

    לצורך כך אנחנו נצטרך את ה-file input stream, את אותו אובייקט שמתממשק עם סביבת העבודה שלנו במחשב ונקרא לו אקסל פייל. אנחנו יוצרים אינסטנט ל-file input stream, אקסל פייל שווה new file input אוקיי, ועל מנת שהוא ידע איזה קובץ הוא צריך, אנחנו נשלח לו את הפרמטר FilePath.

  11. 04:13

    אוקיי, אז ה-Java מבקש מאיתנו לייבא את אותו אובייקט, אותו סוג אובייקט שיצרנו של ה-FileInputStream מתוך הספרייה של ה-Java, IO, Java Input Output, אוקיי?

  12. 04:32

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

  13. 04:51

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

  14. 05:29

    כאן אנחנו שולחים את ה-Excel פייל. אז היה לנו את השלב הראשון של התממשקות עם קובץ שזה דרך ה-Java וההתממשקות פה היא כבר דרך ה-POI. שימו לב דרך ה-POI.

  15. 05:44

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

  16. 06:50

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

  17. 07:08

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

  18. 07:33

    אז אוקיי, אנחנו צריכים לעשות Add Draw Declaration, גם פה את ה-Add Draw Declaration, זה במקרה שאנחנו לא נמצא את הקבצים עצמם, הג'אווה מבקשת מאיתנו להתייחס למצב הזה שאנחנו לא מוצאים את הקבצים.

  19. 07:53

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

  20. 08:15

    אז לצורך העניין בדוגמה שלנו אנחנו נעשה את זה Hardcoded אבל יש דרכים לעשות את זה בצורה דינמית, זאת אומרת שאנחנו ננתח איפה באיזה תא נמצא באיזה תאים נמצאים נתונים אבל לצורך הדוגמה שלנו על מנת שזה יהיה פשוט נעשה את זה hardcoded ותכף אני אסביר range of data נקרא לזה זאת אומרת גבולות הנתונים ואנחנו נשתמש בind

  21. 08:41

    נקרא לזה total row ובוא נגיד שזה יהיה 4. כמה יש לנו? כן יש לנו 4 אני מתעלם מהשורה הראשונה ואני מתעלם מהעמודה הראשונה ועדיין יש לנו ארבע נתונים, אז אני אומר total row זה יהיה ארבע ו-int צורך גם total call, זאת אומרת כמה עמודות סך הכל ויש לנו פה שלוש, שלוש עמודות, אני שוב

  22. 09:22

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

  23. 09:37

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

לקורס המלא: קורס סלניום מתקדם אונליין

ההרצאה הקודמת: Data Driven Test עם Excel - חלק 1

ההרצאה הבאה: Data Driven Test עם Excel - חלק 3

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

  • Meterpreter & Macro in Excel
  • Data Contracts
  • כתיבת Test Case
  • ייצוא לאקסל - Export to Excel

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

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