בדיקות אוטומטיות - כתיבת סקריפטים.

jaco10

New member
בדיקות אוטומטיות - כתיבת סקריפטים.

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

Rשף

New member
סקריפט = תוכנה

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

jaco10

New member
בדיקות אוטומטיות

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

clyon

New member
בעידן של ימינו יש הכל

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

עמית ו

New member
היית מנסה לעשות אותו דבר עם משרת פיתוח?

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

halperin

New member
מנהל
תתחיל מללמוד קצת לגבי מהיא עבודת אוטומציה

אתה יכול לקרוא קצת כאן:
http://goo.gl/sPmHdC
וגם בפוסט הנגדי כאן:
http://goo.gl/A3nLTB
&nbsp
איך אתה עושה זאת בצורה הקצרה ביותר?
לומד שפת תכנות אחת או יותר מהאינטרנט, ומתחיל להתנסות תוך כדי העבודה הידנית (אם יש כבר אוטומציה בחברה - נסה להשתלב בה (היתרון שכך יש לך חונכים מנוסים), ואם אין - אז גנוב זמן ונסה ליצור אוטומציה - מי יודע - אולי בסוף זה גם יעזור לפעילות)
 

jaco10

New member
תודה רבה לכולכם על התגובות המפורטות והמנמקות

בהמשך לתשובתך , הלפרין, בחברה שבה אני עובד , יש רישיון ל - QTP , שלא נעשה בו שימוש
מאז שהוא קיים (3 שנים) ובעזרת HP , החזרתי אותו לפעילות . השלב הראשון היה להקליט בדיקה ולהריץ
כבר בשלב הזה , של ההרצה , נתקלתי בבעיות (ERRORS ) שלא ברורה סיבתם.
השלב השני הוא לכתוב בדיקות בעצמי , אני מניח , בשפת VBSCRIPT , שאותה אצטרך ללמוד לבד.
אני מניח שלכך התכוונת בדבריך? האם זהו הכיוון הנכון ?
 

clyon

New member
זה עדיף מכלום

עצם זה שיש לך כבר כלי בעבודה שאתה יכול ללמוד עליו ולעבוד איתו זה משהו.
כשאתה אומר "החזרתי אותו לפעילות" לא ברור לי כל כך מאיפה זה נובע , האם זוהי יוזמה אישית שלך ? האם זוהי דרישה שבאה מההנהלה ?
- אם זו יוזמה אישית, יש לך נקודת פתיחה לא רעה , אך עליך להשקיע זמן בללמוד את עקרונות האוטומציה, להתחיל לקודד ולהשתפשף בכלי שלכם. זה ידרוש ממך המון השקעה, זמן ואנרגיה, במיוחד כשזה בא בנוסף על המטלות היום-יומיות שלך.
- אם זה מגיע מההנהלה, אני חושב שעדיף להם לשלוח אותך לקורס מקצועי או להזמין יועץ חיצוני שיעזור לך בהגדרת האיפיון של מערך הבדיקות האוטומטיות, כתיבת הדיזיין, הקמת התשתיות דרך ה-QTP וכו' (אחד כזה גם יכול לפתור לך בקלות את בעיית ה-ERRORS שאתה נתקל בהן, זה במקום הזמן הרב שתחפש באינטרנט לפתירתן). עם ובלי קשר אני חושב שהם עושים טעות גדולה כשהם בוחרים להקים פרוייקט אוטומציה על כתפיו של מישהו שאין לו כלל נסיון בתחום (שוב, זה במידה וזה מגיע מההנהלה).

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

jaco10

New member
אכן , זוהי יוזמה אישית שלי .

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

clyon

New member
זה מה שאני הייתי עושה

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

שלב 2:
ללמוד דרך האינטרנט שפת תיכנות, אמנם ה-QTP עובד עם VBS אבל אני מאוד הייתי ממליץ לך להתחיל ב-C, אח"כ לעשות הסבה ל-VBS.
אני מאוד אוהב את האתר הזה: http://he.wikibooks.org/wiki/שפת_C

שלב 3:
ללמוד על ה-QTP דרך האינטרנט , ישנם המון אתרים המכילים מידע רב על הכלי הזה, נראה לי שזהו כלי האוטומציה המתועד ביותר. להבין את הארכיטקטורה שלו, כיצד הוא מזהה אובייקטים (יש כמה דרכים), איך הוא מאפיין אותם והיכן הוא שומר אותם. לדעת מושגים כמו Actions , Data Tables , Checkpoints , Synchronization, לדעת להשתמש במשתני סביבה (Environment Variables) להבדיל בין Virtual ל GUI Objects , להכיר את ה-Debugger של הכלי ולהשתמש ב-Error Handling , לעבוד מול מידע חיצוני המיוצג כ-XML או טבלאות ב-DB , לשלוט במתודות הקשורות לאובייקטים (כמו GetROProperty) וכמובן - לעבוד עם Descriptive Programing.

שלב 4:
ללמוד על עולם הבדיקות האוטומטיות - מתודולוגיות שונות בהן משתמשים, Frameworks , מחזור החיים של הבדיקות האוטומטיות, ROI לבדיקות אוטומטיות, להכיר (שמות, יתרונות, חסרונות) כלים שונים (מלבד ה-QTP) המובילים בשוק וכו'

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

שלב 6:
ללמוד שפת תוכנה עילית, כזו שיש לה יכולות קצת מעבר ל-VBS כמו Object Oriented , Interfaces , Delegations , Indexers , Attributes ועוד ועוד ועוד ...

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

jaco10

New member
תודה קיבלתי את המלצותיך

בנוסף , אם היית צריך להמליץ על קורס כלשהו(אם יש כזה) , שאולי מכיל בתוכו חלק מהשלבים שציינת
ושיכול להקל עלי להשתלב בתחום , בנוסף ללימוד העצמי , על איזה קורס היית ממליץ , אם בכלל ?
&nbsp
בדיקה קצרה שאני עשיתי , לגבי קורס בדיקות אוטומטיות, לא העלתה דבר מלבד קורס QTP
&nbsp
תודה רבה .
 

clyon

New member
אני אישית לא ממליץ, אבל כמובן זה תלוי בבן אדם

מחיפוש קצר הבחנתי כי רוב הקורסים שמוצעים הם קורסים המדברים על כלי אוטומציה ספציפי (בעיקר - QTP , CodedUI , Selenium), לא ילמדו אותך שם שפת תכנות וגם לא DataBases , אבל אם אתה רוצה ללמוד דרך קורס, אז למה באמת לא לקחת את זה של ה-QTP ? הרי יש לך כבר רשיון, כך תוכל לעבוד עליו גם אחרי שתלמד את מה שצריך ללמוד בקורס...
בנוסף, תוכל לקחת קורס תיכנותי למתחילים. ואת הקורסים האקדמאיים תוכל למצוא ... מממ ... טוב... נו - באקדמיה (כשומע חופשי).

אני באופן אישי יותר טיפוס אוטודידקטי, אני לא מתלהב מלהוציא (לא מעט) כסף על קורסים, הקורסים המקצועיים היחידים שהלכתי אליהם היו מטעם העבודה, אחד מהם נקרא: Automation A-Z והוא יותר הסביר את התאוריות, הארכיטקטורה ושיטות לביצוע בדיקות אוטמטיות, לצערי לא הצלחתי למצוא אותו כעת.
 

halperin

New member
מנהל
אופצייה אחרת היא אולי לימוד ממוקד באו"פ

לא בטוח אם הרקע שלך מספק את תנאי הקדם, אך אם כן - תוכל אולי לקחת 2-3 קורסים באו"פ - לפחות תקבל קורסים איכותיים ברמה אוניברסיטאית ובשעות הערב.
את אלו כנראה רצוי שתקח לפני קורס QTP - כי ללא רקע תכנותי מספק - סתם תבזבז שם את זמנך.
&nbsp
עוד מקום לשאול לגבי QTP, הוא אתר www.advancedQTP.com אשר מובל ע"י מאיר בר-טל (מה שאומר שאם תרצה לתקשר בעברית זה גם אפשרי
)
 
למעלה