• חשבון מסחר באקסלנס טרייד : סנט למניה במסחר בארה"ב (מינימום $5 לעסקה), פטור מדמי טיפול לשנתיים, קורס במתנה ובונוס 100 ש"ח למצטרפים חדשים. להצטרפות דיגיטלית לחצו כאן .

שאלה טכנית למתכנתים

  • פותח הנושא teeto
  • פורסם בתאריך

teeto

משתמש רגיל
הצטרף ב
6/12/18
הודעות
112
דירוג
111
היי

למתכנתים שפה, שאלה (או שתיים) ברשותכם:
יש לי קוד.
עשיתי שינויים, דחפתי לmain, ולאחר זמן מה במקרה ראיתי שהשינויים גרמו לבאגים בקוד.
הייתי שמח אילו עם כל דחיפה של שינויים לmain (או כל branch אחר)
יתבצעו מספר בדיקות אוטומטיות, לוודא שלא שברתי שום דבר בקוד.
אז:
  1. אילו כלים מתאימים יש לאותן בדיקות אוטומטיות? מה הנפוץ ביותר שאתם מכירים?
  2. unittestים. מה הם קשורים? האם הם תשובה מלאה/חלקית/ממש לא לשאלה 1?
תודה תודה
 
שפה ספציפית?
 
לא איש פייתון, אבל הקונספט דומה:
ניתן להשתמש בג'נקינס בתור build server

כלומר, להגדיר job שבעקבות דחיפה של קוד ל- source control (מאמין שאתה משתמש ב-svn/git?)
מיד יבוצע build (שיבדוק שגיאות קומפילציה ובניה של הפרוייקט)
ולאחר מכן job של unit tests למשל (רצף בדיקות שאתה כותב מראש)

כמובן שתוכל לקבל התראה על תוצאות ה-jobs

ניתן גם להגדיר שבמידה ואחד השלבים נכשל, ה-commit/push יידחה.
 
בפייתון יש את pytest שאיתו אפשר לממש טסטים שירוצו אוטומטית בג'נקינס וייצרו סביבת CI/CD שזה מה שאתה בעצם מחפש
 
לא איש פייתון, אבל הקונספט דומה:
ניתן להשתמש בג'נקינס בתור build server

כלומר, להגדיר job שבעקבות דחיפה של קוד ל- source control (מאמין שאתה משתמש ב-svn/git?)
מיד יבוצע build (שיבדוק שגיאות קומפילציה ובניה של הפרוייקט)
ולאחר מכן job של unit tests למשל (רצף בדיקות שאתה כותב מראש)

כמובן שתוכל לקבל התראה על תוצאות ה-jobs

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

משתמש בגיטהאב?
כן. git / github.

יש פודקאסט שנקרא 'מפתחים חסרי תרבות'. חפש את הפרק עם רן בר זיק על ci cd
אשמע. תודה.

בפייתון יש את pytest שאיתו אפשר לממש טסטים שירוצו אוטומטית בג'נקינס וייצרו סביבת CI/CD שזה מה שאתה בעצם מחפש
בודק, תודה.
 
כן. git / github.
אם אתה משתמש בגיטהאב והטסטים שלך פשוטים (לא צריכים setup מיוחד שיוצר deviceים במכונה או משהו בסגנון) כנראה שהכי קל יהיה להריץ עם github actions, סביר להניח שיש גם מפלייטים מוכנים לפייתון עם pytest
 
בגדול שווה שתנסה לעקוב אחרי העקרונות הבאים:

1. ה-branch המרכזי שלך (במקרה שלך main) צריך להיות נעול לpush (כלומר שאפילו לא תוכל לדחוף לשם קוד ככה סתם גם אם תרצה)
2. דחיפת קוד חדש ל-main תתבצע אחרי השלמת Pull Request (מעין בקשה לשינוי, באותה בקשה אתה יכול לבקש מאנשים אחרים שיסתכלו על הקוד שלך, להריץ כלים אוטומטים וכו' - ברגע שאתה מסיים את ה Pull Request רק אז הקוד נכנס אל ה main
3. כחלק מהקריטריונים בכלל להיות מסוגל לסיים את ה Pull Request אתה צריך להגדיר Build שרץ על Build Server שרק אם הוא מסתיים בהצלחה אתה מקבל אישור להיות מסוגל לסיים את ה Pull Request

בקשר לכלים נפוצים כבר הגיבו לך,
הקשר ל unit tests הוא שה-Build הזה בסעיף 3 הולך להריץ אותם ולצפות שהם יעברו בשביל לתת את ה OK להמשיך הלאה. ככל שיהיו לך טסטים יותר מקיפים ואיכותיים כך יש סיכוי יותר קטן שאתה או מישהו אחר יצליח להכניס קוד ששובר את הלוגיקה.

יש עוד הרבה בדיקות אחרות שאפשר להריץ ברמה של ה Pull Request שיבדקו עוד דברים אחרים (אבטחה, איכות קוד, כיסוי קוד ועוד)
שווה לך לקרוא על CI CD, release gating

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

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

אחרי כל התיקונים תיצור עוד מחיצה ותשווה את המחיצות בעזרת DIFFMERGE

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

אחרי כל התיקונים תיצור עוד מחיצה ותשווה את המחיצות בעזרת DIFFMERGE

ההשוואה תראה לך את כל הקוד ששינית
אני עושה את הפרקטיקה הזו אבל דרך git branchs, יש כלים להשוות בין branches, הרבה יותר נקי ובטוח מאשר להתעסק עם hard copy של תיקיות
הייתי שמח אילו עם כל דחיפה של שינויים לmain (או כל branch אחר)
יתבצעו מספר בדיקות אוטומטיות, לוודא שלא שברתי שום דבר בקוד.
אתה עובד לבד עם עם צוות ? יש devops ?
א) עוד סיבה לא לכתוב בפיית'ון
לא הבנתי אותך, מהם הסיבות מעבר למה שענית על dynamic types ?
 
עצה שלי: לפני שאתה מתחיל לעבוד תפתח מחיצה חדשה ותעתיק אליה את כל הקוד,באמצעות XCOPY, ותן לה שם יחודי

אחרי כל התיקונים תיצור עוד מחיצה ותשווה את המחיצות בעזרת DIFFMERGE

ההשוואה תראה לך את כל הקוד ששינית
=================================
אם תכין סקריפטים זה אמור לקחת חלקיק שניה
למה לא לעשות פשוט git diff?
כל הרעיון של עבודה עם מערכות ניהול קוד (גיט ודומיו) זה בדיוק לדעת מה שינית בכל פעם. למה לעבוד בצורה עקומה עם תיקיות?
 
נושאים דומים
פותח הנושא כותרת פורום תגובות תאריך
פ שאלה טכנית לגבי לאומי טרייד שוק ההון 1
N COVERED CALLS - שאלה טכנית שוק ההון 2
ו שאלה טכנית לגבי אג"ח ישראלית שוק ההון 12
W שאלה טכנית - איך למשוך קופת גמל להשקעה מבלי לשלם מס ע"י קיזוז מול נקודות זכות מיסים 1
stamEhad בניית תמהיל תיק השקעות שכולל הלוואה (שאלה טכנית) שוק ההון 3
O שאלה טכנית לגבי טופס 1301 מקוון: דיווח מס הכנסה ליחיד מיסים 1
עייף ומותש סעמק שאלה טכנית פוסטים מאיכות נמוכה 7
A שאלה טכנית על טופס 1301/135: איפה לרשום מס שנוכה במקור מדיבידנדים? מיסים 4
R שאלה טכנית לגבי ספר פקודות פוסטים מאיכות נמוכה 0
N שאלה טכנית לסולידים שוק ההון 12
לאונל שאלה טכנית בנוגע להעברת קרן מנוהלת ל-IRA שוק ההון 1
O שאלה טכנית על שעות שניתן לסחור בהן שוק ההון 4
מ שאלה טכנית על אופציות דולר שוק ההון 0
נ שאלה טכנית - אפשר לתת שתי פקודות לימיט בכיוונים שונים? שוק ההון 2
שניצלוינאי שאלה טכנית tws trade alerts שוק ההון 1
נ שאלה טכנית של מתחילים - איתור ני"ע מתאים שוק ההון 1
ה שאלה טכנית בקשר לקניית קרנות נאמנות דרך אקסלנס שוק ההון 1
א האקסולידית שאלה טכנית צרכנות פיננסית 3
pyrocks שאלה טכנית - הסבר על שערי קרן מחקה nikkei שוק ההון 9
ג שאלה טכנית בנוגע למכירה של מניות שוק ההון 1
א שאלה טכנית על קרן מחכה 5121322 שוק ההון 1
R שאלה של מתחיל לגבי השקעות בS&P500 שוק ההון 1
Nons Ense שאלה בנושא חובת דיווח והתנהלות עם חשבון מסחר שיושב בחו״ל שוק ההון 5
א שאלה בנושא - ריבית דריבית שוק ההון 2
E שאלה בנוגע לזכויות עובדים אוף טופיק 5
N שאלה בנוגע למיסוי של אופציות ו RSU מיסים 3
H שאלה לגבי פרפרייה לעומת מרכז. נדל"ן 1
H שאלה בנושא קניית iShares S&P500 שוק ההון 21
D שאלה בטיוב תיק - האם שווה למכור קרן כדי לקנות קרן אחרת? שוק ההון 5
נ שאלה בנוגע להחזר מס רווח הון מיסים 3
נ שאלה בנוגע לבעלות בקרן סל ולמקרה בו מדינת ישראל מושמדת פוליטיקה, אקטואליה, דת-מדינה ושאר מרעין בישין 119
N שאלה רגולציה קצת סבוכה לגבי הצעת רכש כפויה בבורסה בלונדון וטיפול לקוי בבנק ישראלי שוק ההון 3
נ שאלה בנוגע למחקר טריניטי וכלל ה4% פרישה מוקדמת והחיים שאחריה 30
B שאלה לגבי קרן כספית שוק ההון 6
ר שאלה על סוג קרן שוק ההון 9
א שאלה נישתית לגבי מס רווחי הון מיסים 17
ר שאלה על רכישת קרן לעתיד שוק ההון 5
S שאלה על קיזוז מגן מס משנה קודמת עם רווחים משנה נוכחית מיסים 0
ר שאלה על דמי ניהול שוק ההון 4
א שאלה לגבי blackrock שוק ההון 24
G שאלה בנוגע לכדאיות בהשקעה בנדלן נדל"ן 5
Z שאלה לגבי שיעור מרבי למס רווח הון לפני ואחרי גיל 60 פוסטים מאיכות נמוכה 1
edangz שאלה לגבי ההעברה הבנקאית בIB שוק ההון 7
edangz שאלה לקראת פתיחת חשבון מסחר בIB שוק ההון 2
N שאלה בקשר לשדה 258\272 בטופס 1301 מיסים 16
B ירושות וגירושין, חשבון השקעות אמריקאי - שאלה אוף טופיק 0
G שאלה על קרן 1159235 שוק ההון 6
B שאלה על קרן הסל 1159250 שוק ההון 7
ש שאלה על אמזון ו- eBay - האם מוצר זה נמכר בפלטפורמות האלה? אוף טופיק 0
ג'וני לנד שאלה בנושא ריבית דריבית שוק ההון 48

נושאים דומים

Back
למעלה