מי עדיין לא שמע על ChatGPT | יוני פלנר

ה-ChatGPT הינו צ'ט מבוסס בינה מלאכותית שפותח ע"י חברת OpenAI (שאגב, מייקרוסופוט מממנת 20% מהפרויקט). זהו מודל שפה (שימוש בסטטיסטיקות מבוסס מילים) שלומד ומשתפר עם הזמן (נכון לעכשיו עד 2021).

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

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

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

אז מה? ה-ChatGPT הינו סתם הייפ? ממש ממש לא!

אני רואה את הטכנולוגיה הזו, בדיוק כמו שאר הטכנולוגיות וכלים אחרים בכך שהם באים לעזור לנו, אנשי ה-QA, לבצע את תפקידנו בצורה טובה יותר. עם ChatGPT נוכל לכתוב קוד אוטומציה (הרבה) יותר מהר, נוכל להבין מה זה Throughput בבדיקות עומסים, למצוא פונקציה שמביאה לנו נתונים מ-Data Set לבדיקות בצורה יעילה ועוד... בדיוק כמו שה-Wireshark הופך אותנו לבודקים טובים יותר, או ה-Jest או מה שזה לא יהיה.

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

כבן אדם סקרן שתמיד אוהב לחקור ולהתנסות בטכנולוגיות חדשות בתחומי (אוטומציה), החלטתי להפשיל שרוולים ולבדוק בעצמי במה ה-ChatGPT יכול לעזור לי, לאחר כמה משחקים ועבודה מצטברת של כמה שעות עם ה-ChatPGT, נוכחתי לראות את היתרונות הברורים בעבודה עם ה-Chat ולהלן 10 מהם:

  1. כתבתי כמה מקרי בדיקה פשוטים וכאלו קצת יותר מורכבים עם Playwright, ביקשתי מה-ChatGPT לעשות את העבודה שאני הכי פחות אוהב לעשות בעבודת הפיתוח - לתעד את הבדיקות שלי, הוא עשה זאת בצורה מצוינת.
  2. כתבתי פונקציה שעושה parsing ל\מ json , הקוד היה מעפן ולא יעיל, ביקשתי מה-ChatGPT לעשות לי Code Refactor, הוא לא אכזב, שיפר לי את הפונקציה בצורה מופלאה, קיצר אותה וכתב בצורה קצרה יותר ואינטליגנטית הרבה יותר.
  3. הוא ידע להמיר לי פונקציות עזר (wrappers) ב-API משפת ג'אווה לשפת פייתון ולהיפך !
  4. ביקשתי ממנו עזרה במימוש של Design Pattern מסוג Singleton על הדרייבר שלי, עשה את זה כמו גדול.
  5. כתבתי ביטוי ב-RegEx כדי לתפוס תבניות של Errors או Warnings מתוך קובץ לוג, ה-ChatGPT שיפר לי את הביטוי, הוא גם יכתוב לי כל ביטוי שאתאר לו
  6. כנ"ל לגביי שאילתות SQL
  7. לקחתי קוד אוטומציה אקראי מ-GitHub, בכוונה חיפשתי משהו מסורבל (ניתן למצוא לא מעט כאלו), ביקשתי מ-ChatGPT שיסביר לי מה הקוד עושה. זה היה כמו לשמוע מוסיקה קלאסית - כל כך נעים לאוזן
  8. השתמשתי לא נכון בסינטקס של Allure Report על כן הטסט לא דיווח, מה הבעיה ? יש ChatGPT שיפתור לי ת'פלונטר.
  9. ב-Unit Test הוא בכלל מלך, נתתי לו פונקציה שיוצרת חיבור לשרת MySQL (עם הפרמטרים של הכתובת, השם משתמש והסיסמא), ה-CahtGPT כתב לי בדיקות יחידה על פונקציה זו (כולל תיעוד)
  10. התותח הזה יודע גם לכתוב לי Dockerfile וגם פייפליינים בג'נקינס (בינתיים לא ניסיתי דברים מורכבים), בהינתן רשימה של צרכים מצידי.

 

 לאנשים שעדיין סקפטיים או מצקצקים, יש לי חדשות טובות ורעות עבורכם:

הטובות: ה-ChatGPT גם פישל עם התשובות שלו, ולא מעט, צריך לבדוק אותו ולעשות לו QA

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

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

 בהצלחה

יוני