ABA


"מישהו עושה TDD/BDD ? או Unit Testing בכלל ?"
גירסת הדפסה        
קבוצות דיון פיתוח, תיכנות ובניית אתרים נושא #21705 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 21705
Beckham
חבר מתאריך 18.3.02
2412 הודעות
   21:30   29.05.16   
אל הפורום  
  מישהו עושה TDD/BDD ? או Unit Testing בכלל ?  
 
מה התהליך שלכם ?

עובדים לפי red green refactor ?

כותבים בדיקות אחרי שהקוד כתוב ?


                                שתף        
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

  האשכול     מחבר     תאריך כתיבה     מספר  
  Tdd by the book CaTz 29.05.16 22:34 1
     מאוד רוצה להתחיל. יש עצות איך? התכנון כרגע הוא להתחיל להתאמן Beckham 29.05.16 23:30 2
         זה הרבה עניין של תרגול CaTz 30.05.16 23:17 3
             יש ל Uncle Bob סדרה שלמה על Clean Code. לסדרה הזן התכוונת ? Beckham 31.05.16 20:51 7
  מכתב יוחאי 30.05.16 23:45 4
     זה נכון חלקית CaTz 31.05.16 08:34 5
         לא הבנתי איפה מה שאמרתי לא נכון :) יוחאי 01.06.16 11:44 8
     אז כמו שחשבתי, TDD ו- BDD זה אותו הדבר. Beckham 31.05.16 13:58 6
         לא בטוח שהבנתי... יוחאי 01.06.16 12:01 9
             כמובן. גם זה קיים. Beckham 01.06.16 13:10 10

       
CaTz
חבר מתאריך 2.10.04
14537 הודעות
   22:34   29.05.16   
אל הפורום  
  1. Tdd by the book  
בתגובה להודעה מספר 0
 
   Red green refactor!

נשלח ע"י הסלולרי


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Beckham
חבר מתאריך 18.3.02
2412 הודעות
   23:30   29.05.16   
אל הפורום  
  2. מאוד רוצה להתחיל. יש עצות איך? התכנון כרגע הוא להתחיל להתאמן  
בתגובה להודעה מספר 1
 
ערכתי לאחרונה בתאריך 29.05.16 בשעה 23:34 בברכה, Beckham
 
על ידי code kata.

המלצה על קורס \ ספר ?

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

@CaTz@


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
CaTz
חבר מתאריך 2.10.04
14537 הודעות
   23:17   30.05.16   
אל הפורום  
  3. זה הרבה עניין של תרגול  
בתגובה להודעה מספר 2
 
   Tdd טוען שצריך לעשות קודם טסט ואחרי זה לראות שהוא אדום, להעביר אותו ולפקטר אם צריך.
טסט זה חלק מהקוד, זה לא שלב...לדעתי טסטחם בדיעבד לא שווים כלום.
TDD מנחה אותך שלא תעשה הכנות למזגן,ותעשה את המימוש המינימלי בשביל להעביר את הטסט...זא תכנון מראש לא בא בחשבון....

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


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Beckham
חבר מתאריך 18.3.02
2412 הודעות
   20:51   31.05.16   
אל הפורום  
  7. יש ל Uncle Bob סדרה שלמה על Clean Code. לסדרה הזן התכוונת ?  
בתגובה להודעה מספר 3
 
זה 24+ שעות של תוכן.

@CaTz@


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
יוחאי
חבר מתאריך 30.12.15
163 הודעות
   23:45   30.05.16   
אל הפורום  
  4. מכתב  
בתגובה להודעה מספר 0
 
   כרגיל אשתף תגובה שאני מאוד אוהב ואסביר את הכוונה של המשורר:

The difference between BDD and TDD is that BDD begins with a B and TDD begins with a T. But seriously, the gotcha with TDD is that too many developers focused on the "How" when writing their unit tests, so they ended up with very brittle tests that did nothing more than confirm that the system does what it does.

BDD provides a new vocabulary and thus focus for writing a unit test. Basically it is a feature driven approach to TDD.

כשאתה כותב TDD אתה צריך באופן עקרוני (לא מחייב) לכתוב את הטסט לפני הקוד לראות שהוא נכשל ואז לכתוב את הקוד...

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

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

לדוגמא: כאשר משתמש מתחבר כבעל תפקיד X ואני לוחץ על Y אז אני צריך לראות Z.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
CaTz
חבר מתאריך 2.10.04
14537 הודעות
   08:34   31.05.16   
אל הפורום  
  5. זה נכון חלקית  
בתגובה להודעה מספר 4
 
   כמו בכל דבר, כתיבת טסטים נכונים היא אומנות, ודרוש אימון רב בשביל להגיע לזה.

בחברה שאני עובד, כותבים אנגולאר ועושים TDD, כאשר בודקים קומפוננטות דרך הview, כן, unit test, דרך הview!

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

נשלח ע"י הסלולרי


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
יוחאי
חבר מתאריך 30.12.15
163 הודעות
   11:44   01.06.16   
אל הפורום  
  8. לא הבנתי איפה מה שאמרתי לא נכון :)  
בתגובה להודעה מספר 5
 
   עם איזה ספריות אתם עושים Unit Testing אצלכם בחברה?


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Beckham
חבר מתאריך 18.3.02
2412 הודעות
   13:58   31.05.16   
אל הפורום  
  6. אז כמו שחשבתי, TDD ו- BDD זה אותו הדבר.  
בתגובה להודעה מספר 4
 
לא משנה איך אני אקרא לזה, הבדיקה באה לבדוק שעל Input מסויים מקבלים OUtput מסויים.
איך זה קורה בפנים לא רלוונטי.

אבל כאן נכנס העניין של Spies
בשימוש ב Spies, אני לא בעצם בודק את ה'איך' ?

לדוגמא, אני בונה תהליך (C#) שאמור להמיר Type A ל- Type B.
יש לי רכיב שנקרא Validator שמוודא שמספר Properties תקינים על Type A לפני ההמרה
(במידה ולא ההמרה לא אמורה להתבצע)

יש לי Unit Test שבודק, שלפני ההמרה יש קריאה ל Validator.Validate()

האם זה תקין?


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
יוחאי
חבר מתאריך 30.12.15
163 הודעות
   12:01   01.06.16   
אל הפורום  
  9. לא בטוח שהבנתי...  
בתגובה להודעה מספר 6
 
   ואיך אתה יודע שהפונקציה validate עובדת בצורה תקינה?

להבנתי אתה צריך גם לייצר unit test בשבילה שתבדוק ערכים תקינים ולא תקינים.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Beckham
חבר מתאריך 18.3.02
2412 הודעות
   13:10   01.06.16   
אל הפורום  
  10. כמובן. גם זה קיים.  
בתגובה להודעה מספר 9
 


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

תגובה מהירה  למכתב מספר: 
 
___________________________________________________________________

___________________________________________________________________
למנהלים:  נעל | תייק בארכיון | מחק | העבר לפורום אחר | מחק תגובות | עגן אשכול
       



© כל הזכויות שמורות ל-רוטר.נט בע"מ rotter.net