LOGIN
התחברות או הרשמה
Avatar
להמשך הרשמה ידנית – לחץ על כפתור ההרשמה, להרשמה/כניסה מהירה בעזרת חשבון רשת חברתית – לחץ על הלוגו בכותרת

אפס סיסמה - שכחתי את שם המשתמש

שם משתמש
סיסמה
זכור אותי

he icon   en icon

איך לכתוב בדיקות שישמשו אתכם גם בעתיד?

נכתב על ידי 
שני, 24 יוני 2013 07:44
דרגו כתבה זו
(3 הצבעות)

איך לכתוב בדיקות שישמשו אתכם גם בעתיד?

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

  1. הכי חשוב "מטרת הבדיקה" ו"מטרת סט הצעדים" -  >לפני< שאתם משקיעים זמן רב בתיאור מפורט של הבדיקה, ושל הפעולות שצריך לבצע בכל סט צעדים – כתבו את מטרת הבדיקה, באופן שיאפשר לבא אחריכם (או לכם בעוד מס' חודשים או שנים) להבין "למה התכוון המשורר"?
    מה אתם מתכוונים לבדוק?, כיצד אתם תוקפים זאת?, מדוע דווקא כך?, שיקולים נוספים?, מגבלות והתניות שצריך לשים אליהן לב.
  2. כאשר הבדיקה כוללת מס' רב של צעדים – ו/או הבדיקה מורכבת ממס' תת-מטרות שונות – הקפידו לכתוב לפני כל סט-צעדים את מטרתו באופן דומה ל#1 מעל.
  3. הקפידו להדגיש את מבנה הבדיקה וה"זרימה" הפנימית בבדיקה – לפני כל סט צעדים ציינו בהבלטה (Bold) כותרת קצרה וממצה המציגה את מטרתו, לעיתים כדאי אפילו להבליט חלק מן הטקסט הרלוונטי מתוך תיאור הצעד, המתאר מהי מטרת אותו הצעד.
  4. לעיתים קרובות "מרוב עצים לא רואים את היער" – ולכן אם נצלול מהר מדיי לתיאור מפורט של הבדיקה, נאבד את התמונה הכללית.
    לכן נכתוב תחילה את שלד הבדיקה, ורק אח"כ (במידת הצורך) נרחיב לצעדים מפורטים ותוצאות צפויות.
  5. מבט על – קצר יחסית זה – יאפשר גם לקבל משוב יעיל על הבדיקה בתהליכי ה"בקרה" (Review) – שהרי לעמיתינו אין זמן להתעמק במסמך בן מאות עמודים – ולכן עדיף אם נשלח להם עותק עם פירוט מטרות אך לא צעדים,
    עותק זה גם יכול להיות מוכן לפחות כשבוע לפני העותק המפורט הדורש השקעה נוספת ניכרת – כך שהרווחנו פעמיים – וגם יקל עלינו לבצע השינויים שנובעים מהמשוב, על שלד מסמך מאשר על מסמך מפורט (פחות עבודה חוזרת – ReWork)
  6. כאשר הצוות המבצע הנו מנוסה – עדיף לעיתים לא לפרט יתר על המידה – זה גורם למעקב עיוור אחר צעדי הבדיקה, מבלי שהבודק נפתח ומפעיל שיקול דעת נוסף (אשר יאפשר לו להביא מניסיונו ולזהות חסרים אפשריים בבדיקה המקורית)
    הניסיון מראה כי חזרה על אותן הנחיות (או הנחיות דומות מאוד) שוב ושוב – רק מביאה לכך שהמבצע מפסיק לקרוא ולשים לב לפרטים.
  7. מאידך – רצוי מדיי פעם לפרט את צעדי הבדיקה, על-מנת לוודא כי הבדיקה ישימה, לזהות אילו כלי עזר נדרשים, דבר שגם מאפשר ל"מבקרים" (Reviewers) להתחבר לפרטי הבדיקה ולזהות מראש כשלים אפשריים בדרך בה נכתבה.

בצורה זו כאשר אתם או אחרים תבואו לבצע את הבדיקה – יהיה לכם ברור יותר לא רק מה לבצע – אלא גם למה אתם מבצעים זאת,

תאפשרו קבלת משוב מהיר ויעיל יותר,

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

בהצלחה,

קובי הלפרין

חובה להיות משתמש רשום במערכת בכדי להגיב - ההרשמה/כניסה בכותרת האתר

חדשות מעולם הבדיקות

  • User experience (UX) and data quality

    User experience (UX) and data quality Someone I know was moaning recently about a lot of tedious electronic form filling they had to do for work.  It was something that happened once a year, but it was much more lengthy and tedious this year than before.  It struck me that this was a sharply focused example of when user experience (UX) and data quality collide. I realised that I haven’t talked about these two together so far, so this article is a fairly random collection of thoughts about the relationship between UX and data quality. Defining terms I’ve already gone into the meaning of UX a few times, so I won’t repeat that here.  Data quality could (like UX) have lots of definitions, but I’ll go with one inspired by the RST definition of a bug: poor data quality means that you have data that’s less valuable to you than it might otherwise be. This is things like: You have less data than you’d like (in terms of rows, filled-in i.e. non-null columns, or both);Some or all of it is unusable;If you process the data then the output will be less valuable than you’d like, or it will take a lot of effort to get the data into a state where processing it will produce valuable output. Drilling down one more level: Data might be unusable because e.g. a field that should hold the name of a day of the week instead contains the word hippopotamus;Data might produce bad outputs if e.g. it contains duplicate rows,[…]

    23.01.2021 | 4:21 קרא עוד...
  • First Aid for the Mission Statement

    A while back, a tester brought a patient in for treatment. It wasn’t a human patient; it was a sentence about building and testing in an organization. The tester asked me for help. “Could you provide me with a first aid kit for this statement that came from my management?” “We have to move on to DevOps to be able to release code more often but we also have to increase testautomation in any way we can and minimize manual time consuming testing.” This is the sort of statement that needs more than first aid; it needs emergency room treatment. We’ll start with handling some critical problems right away to get the patient stabilized. Then we need to prepare the way for longer-term recovery, so that the patient can be restored to good health and become an asset to society. I’ll suggest a number of quick treatments. As I do that, I’ll identify why I believe the patient needs them. Replace “have to” with “choose to” in each case. Unless someone is about to run afoul laws of nature, of government, or of ethics, no one has to do anything. People and organizations choose to do things. It’s important to preserve your agency. When you have to do things, you don’t have control over them. When you choose to do things, you remain in charge. Replace “move on to DevOps” with “apply DevOps principles and practices”. DevOps is not something to do; it’s a set of ideas and approaches for[…]

    23.01.2021 | 3:57 קרא עוד...
  • Sort numbers with python

    Sometimes we need to sort numbers. In this post I will give a solution a fictive sorting problem. I want to sort numbers with python. Sorting is a part of many tasks. It is useful to know how to use the sorting function in python. We have a list with positive and negative numbers. Create a function that sorts the list by the absolute values. This means without the sign. Some examples will explain what I want to do: sorting [-20, -5, 10, 15] results in [-5, 10, 15, -20]sorting [1, 2, 3, 0] results in [0, 1, 2, 3]sorting [-1, -2, -3, 0] results in [0, -1, -2, -3] My first solution uses the build in sorted function. Let’s create a function that has an input parameter and returns the sorted array. The sorted function has two input parameters. The first one is the list or iterable that you want to sort. The second one is a comparison key from each element in the list. sort_numbers(input): return sorted(input, key=lambda x: abs(x)) sort_numbers([-1,-2,-4,0]) The sorted function will return a new array. The result is sorted according our rules. There is an other solution. A lambda function can be used. sort_numbers=lambda n:sorted(n,key=abs) sort_numbers([-1,-2,-4,0]) The key can be just the abs function. There is no need to create an extra lambda. A list object in python has a sort method. This method will modify the list in place. The output is the same. the_numbers = [-1,-2,-4,0] the_numbers.sort(key=abs) This solution is not the[…]

    23.01.2021 | 12:08 קרא עוד...

טיפים

לרשימה המלאה >>