צעדים ראשונים

מדוח לשורות שאיש אינו בודק

שישה צעדים, זהים בשני העורכים. Coverage Studio אינו מריץ בדיקות משלו: הוא קורא את הדוח שהכלים שלכם כבר כותבים ומניח אותו על הקוד — ב-VS Code, וב-Visual Studio 2022 ו-2026, ב-Community,‏ Professional ו-Enterprise באותה מידה. כל צעד הוא גם עמוד בתוך העורך, עם כפתור עבורו: המדריך המודרך ב-VS Code,‏ Tools → Coverage Studio → Getting Started ב-Visual Studio.

עדיין לא מותקן? הורידו את הגרסה לעורך שלכם — Community או Pro ל-VS Code, או מהדורת Visual Studio — וחזרו לכאן; במדריך למשתמש יש את שלבי ההתקנה לשניהם. מעדיפים לנסות לפני שמחברים את הפרויקט שלכם? בפרויקט הדוגמה יש דוח מוכן.

1פתחו פרויקט שיש לו דוח כיסוי

כל אחד מ-25 הפורמטים מתאים — LCOV,‏ Cobertura,‏ llvm-cov,‏ OpenCover,‏ coverage.py,‏ Istanbul והשאר. אם אין לכם אחד בהישג יד, בפרויקט הדוגמה יש כזה עבור C,‏ C++‎ (clang ו-MSVC),‏ C#‎,‏ Visual Basic,‏ TypeScript,‏ JavaScript ו-Python.

ב-VS Code

File → Open Folder, או קובץ סביבת העבודה. סמל Coverage מופיע בסרגל הפעילות ברגע שהתוסף פעיל.

ב-Visual Studio

פתרון, או תיקייה (File → Open → Folder, כך פותחים פרויקט CMake). התוסף נטען איתו; View → Other Windows → Coverage הוא החלון שלו.

2טענו את הדוח

דוח במקום מקובל — coverage/lcov.info,‏ coverage.xml,‏ coverage-final.json ושאר השמות המוכרים, או היכן שההגדרות מצביעות — נמצא ונטען מעצמו. אם שלכם נמצא במקום אחר, בחרו אותו פעם אחת והוא ייזכר.

ב-VS Code

לוח הפקודות → Fucini Coverage: Load Coverage, או Pick Coverage File כדי לבחור אחד. Run Tests with Coverage מזהה vitest,‏ jest,‏ pytest,‏ go,‏ cargo,‏ dotnet,‏ maven,‏ gradle,‏ phpunit ו-ctest, מריץ אותם עם כיסוי מופעל וטוען את מה שהם כותבים.

ב-Visual Studio

Tools → Coverage Studio → Load Coverage File…, פעם אחת. חלונית Fucini Coverage של חלון Output אומרת אילו קבצים חופשו ונמצאו. הריצו את הבדיקות כרגיל; Watch Coverage File טוען מחדש כשהדוח משתנה.

3ראו את זה בעורך

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

ב-VS Code

Toggle Coverage Painting מדליק ומכבה את הסימונים; fuciniCoverage.editorGutter.mode בוחר uncovered או heatmap,‏ hitCounts.inline את הספירות. הריצה נמצאת גם בתצוגת Coverage וגם בחלונית Test Coverage של VS Code עצמו.

ב-Visual Studio

Tools → Coverage Studio → Show Coverage in Editor, ואז Gutter: Heatmap או Show Inline Hit Counts כרצונכם. אותן הגדרות חלות — מהדורת Visual Studio קוראת את .vscode/settings.json שלכם.

4עברו על הפערים

קפצו ממקום לא נבדק אחד לבא במקום לגלול בחיפוש אחר אדום. השורה מעל כל פונקציה אומרת כמה ממנה רץ — וגם את המורכבות, ציון CRAP ו-MC/DC שלה, היכן שהדוח נושא אותם. ריחוף על שורה מסומנת אומר במילים איזה ענף לא נלקח.

ב-VS Code

Next Uncovered הוא Alt+N, הקודם Alt+P; Next Partly-Tested Decision עובר להחלטה הבאה שרק חלק מהענפים שלה נלקחו.

ב-Visual Studio

אקורדים בשתי הקשות אחרי Ctrl+Shift+U: N ו-P לשורה הלא מכוסה הבאה והקודמת, B להחלטה הבאה שנבדקה חלקית — לא Alt+N, כי ב-Visual Studio ‏Alt ואות פותחים תפריט. שנו אותם תחת Tools → Options → Keyboard.

5קראו את המספרים

כל קובץ עם המדדים שלו — שורות, ענפים, פונקציות, MC/DC — וציון אחד על כולם: ממוצע הרמוני משוקלל, שאי אפשר לקנות בכיסוי שורות בלבד. שורת המצב מציגה את הציון הזה עבור הריצה ועבור הקובץ שבו אתם נמצאים; השהו את הסמן עליו לכרטיס המלא.

ב-VS Code

תצוגת Coverage בסרגל הפעילות: מיינו, כווצו, הסתירו עמודות, לחצו על קובץ כדי לפתוח אותו. Show Worst-Covered Files ו-…Functions מונים מאיפה להתחיל.

ב-Visual Studio

View → Other Windows → Coverage הוא אותו עץ, עם הציון בכותרתו; לחצו לחיצה ימנית על שורה כדי לפתוח אותה או להעתיק את הנתיב. Show Coverage Card פותח את כרטיס שורת המצב ללא סמן.

6קבעו את הספים שלכם

אמרו מה מספיק: מינימום לכל מדד, או פרופיל בטיחות שדורש 100 % מהכול. הכרטיס אומר אז COMPLIANT או NON-COMPLIANT ביחס אליהם, ואותם ספים חלים בשני העורכים כי אלה אותן הגדרות.

ב-VS Code

Configure Coverage Compliance פותח את ההגדרות; Check Coverage Thresholds נותן את פסק הדין כפקודה, ל-pre-commit hook או לצינור.

ב-Visual Studio

גלגל השיניים בסרגל הכלים של חלון Coverage פותח את חלון ההגדרות, שכותב את הגדרות המשתמש של מהדורה זו או את .vscode/settings.json של התיקייה, כפי שבורר Write changes to שלו אומר.

מכאן: המדריך למשתמש לכל השאר — פורמטים, מיזוג, מיפוי נתיבים מחדש, הציון, דוח ה-HTML — ושאלות נפוצות לתוכניות ורישיונות. מהדורת Visual Studio כלולה בכל תוכנית בתשלום; מחשב שבו VS Code מופעל אינו זקוק לדבר נוסף, ו-Tools → Coverage Studio → Licence… מקבל קוד מנוי היכן שלא.