מה אתם עושים במקרה של cannot reproduce?

TakeCtrl

New member
מה אתם עושים במקרה של cannot reproduce?

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

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

BravoMan

Active member
תלוי...

זה תלוי בכל מיני גורמים.
לפעמים, אין ברירה והולכים לדבג בסביבה בה זה כן משתחזר.
&nbsp
לפעמים, מעלימים עין. תלוי כמה חמור הבאג, האם הוא באמת הגיע רק מ-QA או גם מהשטח, וכו'.
 
תלוי כמה חשוב הבאג/הלקוח

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

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

לפעמים חושבים שהבעיה זוהתה, כותבים תיקון, ובלי מקרה מבחן - אפלו לא יכולים להיות בטוחים שזו אכן העיה ושזה אכן התיקון, אבל מקווים לטוב
 

selalerer

New member
אתה ו-QA נמצאים באותה קבוצה.

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

TakeCtrl

New member
אני נמצא איתו גם באותה קובייה ...:p

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

choo

Active member
50% מפתרון הבעיה היא למצוא שיטה לשחזר אותה

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

Lhuna1

New member
בנוסף לתשובות מעלי, שאני מצטרפת אליהן:

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

Lhuna1

New member
(ובעצם הייתיאביבקיץ כתבה את סעיף 1, סליחה שחזרתי)

 

choo

Active member


 

rj111

New member
יוצרים קשר עם הלקוח ומבקשים עזרה בשחזור הבאג

 

TakeCtrl

New member
זה לא קרה אצל הלקוח (זה גרסה בזמן פיתוח) אבל זה יכול לקרות .

 

Grosseto

New member
זה תלוי באיזה באג מדובר

אם זה באג של חריגה שלא נתפסה, אני משפר את האובייקט של החריגה, עד לרמת הפונקציה שפישלה וכל הפרמטרים שאני יכול להעביר.
&nbsp
אם זו אפליקציית ווב אני מדפיס את החריגה ב ALERT ואז מבקש שילחצו CTR-C על ההודעה וישלחו לי במייל
&nbsp
אם זו בעיה לוגית אז צריך לעבוד על הנתונים של ה QA ולראות צעד צעד מה קורה,
&nbsp
אם גם זה לא הולך מבקשים מהמנהל שיסתכל עם נרטיב שונה
&nbsp
&nbsp
&nbsp
&nbsp
 

double X

New member
אם מדובר בבאג שניתן לשיחזור

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

TakeCtrl

New member
אם כתבתי cannot reproduce איך זה באג שניתן לשחזור?

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

double X

New member
מההודעה שלך השתמע שזה באג שלQA אין בעיה לשחזר

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

TakeCtrl

New member
אני יודע שיש חולשה איפה שהוא ...זה קוד די מורכב...

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

vinney

Well-known member
יש כל מיני דרכים להתמודד

נתחיל מזה שאם מישהו אומר "לא מעניין אותי" אתה צריך לזרוק עליו כסא.
&nbsp
לגופו של עניין:
&nbsp
1. זה משתחזר באופן קבוע בQA, אבל לא אצלך? חפש את ההבדלים המערכתיים. משהו בסביבה משפיע, תתחיל לבודד את הגורמים הסביבתיים ולראות איזה מהם משפיע על התוצאה.
&nbsp
2. תשים לוגים בכל מקום ובכל פינה. תעקוב בלוגים אחרי המשתנים ומסלול ביצוע הקוד. אם הבאג פתאום נעלם אחרי שהוספת לוגים - כנראה שמדובר בזליגת זכרון או תזמון, תתחיל לחפש בקטעי הקוד הרלוונטיים מה יכול להוביל לכך.
&nbsp
3. תנסה להבין מה צריכים להיות הערכים במשתנים כדי שהבאג יקרה. שים breakpoint בכל מקום בו המשתנים מתעדכנים, והערכים המוצבים מתאימים למה שמצאת.
&nbsp
4. וודא שהקלט של הQA ושלך כשאתה מנסה לשחזר הוא אותו הקלט.
&nbsp
5. אל תאמין לQA. אף פעם. לך ותראה בעצמך מה קורה. אולי זה בכלל לא באג?
 

TakeCtrl

New member
אם זה משתחזר באופן קבוע אצל הQA זה עוד מצב טוב...

אז אני פונה למערכות שלהם (רק שאז אני בלחץ, כי זה יכול למהוע מהם לעשות בדיקות אחרות).
 

h a j b i

New member
אם הם לא יכולים לשחזר אז כנראה תיקנת אותו

עובדה, זה לא קורה יותר
 
למעלה