במאמר הזה מתוארות התבניות וקוד לדוגמה שזמינים כדי לעזור לכם ליצור בדיקות סינתטיות. הפונקציות לדוגמה זמינות במאגר Google Cloud/synthetics-sdk-nodjs ב-GitHub.
אם אתם כותבים בדיקות ולא מסתמכים על תבנית, אתם צריכים לוודא שהבדיקה עוברת אלא אם מוצגת Error. מומלץ להשתמש בספרייה Assert כדי לוודא שכשיש כשלים, הם משויכים לשורת הקוד הנכונה.
תבניות כלליות
התבניות הגנריות מוגדרות לאיסוף נתוני מעקב ויומן עבור בקשות HTTP יוצאות. הפתרון מבוסס על מודול auto-instrumentation-node של OpenTelemetry ועל winston logger. בגלל התלות במוצרים עם קוד פתוח, צפויים שינויים במבנה של נתוני מעקב ויומנים. לכן, צריך להשתמש בנתוני העקבות והיומן שנאספו רק למטרות ניפוי באגים.
אתם יכולים להטמיע גישה משלכם לאיסוף נתוני מעקב ויומן עבור בקשות HTTP יוצאות. דוגמה לגישה מותאמת אישית אפשר לראות בכיתה SyntheticAutoInstrumentation.
דוגמה גנרית של Node.js
בדוגמה generic-synthetic-nodejs אפשר לראות איך שולחים שאילתה לגבי כתובת URL. הדוגמה הזו מכילה את אותה פונקציה שמוצגת כברירת מחדל במסוף Google Cloud . כדי לראות את הדוגמה המלאה, בסרגל הכלים של הדוגמה, לוחצים על הלוגו של GitHub.
דוגמה ל-TypeScript
בדוגמה generic-synthetic-typescript אפשר לראות איך שולחים שאילתה לגבי כתובת URL. כדי לראות את הדוגמה המלאה, בסרגל הכלים של הדוגמה, לוחצים על הלוגו של GitHub.
תבנית Puppeteer
אם אתם משתמשים ב-Puppeteer, כדאי להתחיל עם הדוגמה generic-puppeteer-nodejs.
הגדרה נדרשת של Puppeteer
כדי להשתמש ב-Puppeteer, צריך לבצע את השלבים הבאים:
כוללים את
.puppeteerrc.cjsבספריית קובצי המקור של פונקציית Cloud Run:מוסיפים את הסקריפט הבא לקובץ
package.jsonשל פונקציית Cloud Run:"scripts": { "gcp-build": "node node_modules/puppeteer/install.mjs" },
דוגמה ל-Puppeteer
בדוגמה generic-puppeteer-nodejs אפשר לראות איך משתמשים ב-Puppeteer עם פונקציית Cloud Run. כדי לראות את הדוגמה המלאה, בסרגל הכלים של הדוגמה, לוחצים על הלוגו של GitHub.
תבנית Selenium WebDriver
אם אתם משתמשים ב-Selenium WebDriver, כדאי להתחיל עם הדוגמה generic-selenium-nodejs. הדוגמה, שזמינה ב-GitHub, כוללת קובץ index.js וקובץ package.json.
כדי לראות את הדוגמה המלאה, בסרגל הכלים של הדוגמה, לוחצים על הלוגו של GitHub.
תבנית מוקה
אם אתם כותבים בדיקות שמסתמכות על תבנית Mocha, כדאי לשקול אם רצף של בדיקות צריך להימשך או להיפסק כשמתרחש כשל. כדי לעצור רצף של בדיקות אחרי כשל, צריך להגדיר את הדגל bail.
דוגמה מקצה לקצה שכוללת פריסה של API, חבילת בדיקות לדוגמה של Mocha לנקודות הקצה של ה-API והסבר על הגדרת המעקב הסינתטי זמינה בבלוג Google Cloud Synthetic Monitoring Tutorial.
בדוגמה mocha-url-ok מוצג איך פונקציית Cloud Run יכולה להפעיל חבילת מקרים לבדיקה של Mocha, והיא כוללת חבילת מקרים לבדיקה לדוגמה.
כדי לראות את הדוגמה המלאה, בסרגל הכלים של הדוגמה, לוחצים על הלוגו של GitHub.
תבנית לקישור מנותק
בדוגמה broken-links-ok אפשר לראות איך מגדירים כלי לבדיקת קישורים שבורים.
בתבנית הזו, מציינים רק את הערכים של אובייקט options. באובייקט הזה מציינים את ה-URI שרוצים לבדוק ואת הפרמטרים של הבדיקה.
אם אתם משתמשים ב-Puppeteer, הקפידו להשלים את השלבים של הגדרת Puppeteer הנדרשת.
כדי לראות את הדוגמה המלאה, בסרגל הכלים של הדוגמה, לוחצים על הלוגו של GitHub.
המאמרים הבאים
- יצירת מעקב סינתטי
- יצירת כלי לבדיקת קישורים שבורים
- ניהול של בדיקות סינתטיות
- עיון בתוצאות של מעקב סינתטי