שתף דרך


יכולת הרחבה של מנוע הבדיקה (תצוגה מקדימה)

הערה

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

מבט כולל

Power Apps מנוע הבדיקה כולל מסגרת הרחבה חזקה המאפשרת להרחיב את יכולות הבדיקה המרכזיות באמצעות נקודות הרחבה שונות. מאמר זה מסביר:

  • כיצד מיקרוסופט חותמת ומאמתת הרחבות של צד ראשון
  • כיצד מודל ההרחבה פועל באמצעות מסגרת ההרחבה המנוהלת (MEF)
  • אפשרויות לארגונים ליצור הרחבות משלהם

רכיבים חתומים על ידי מיקרוסופט

חשוב

במהלך שלב התצוגה המקדימה הציבורית, פקודת pac test run טוענת רק הרחבות חתומות על ידי מיקרוסופט. עיצוב זה מבטיח אבטחה, יציבות וביצועים של פלטפורמת Test Engine.

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

  • ספקי אימות מרכזיים
  • ספקי אפליקציית בד ציור ואפליקציות מונחות-דגמים
  • פונקציות ופעולות סטנדרטיות Power Fx

מסגרת הרחבה (MEF)

מנוע הבדיקה משתמש ב- Managed Extensibility Framework (MEF) כדי לאפשר ארכיטקטורה ניתנת לחיבור. מסגרת זו מאפשרת שלושה סוגים עיקריים של הרחבות:

הרחבות אימות

הרחבות אימות מאפשרות דרכים שונות לאימות עם Power Platform:

  • אימות מצב אחסון - שיטת האימות מבוססת הדפדפן המוגדרת כברירת מחדל
  • אימות מבוסס תעודה - לביצוע בדיקות שאינן אינטראקטיביות
  • ספקי אימות מותאמים אישית - לתרחישי אימות מיוחדים

למידע נוסף, ראה אימות במנוע בדיקה.

הרחבות ספק

הרחבות ספק מאפשרות בדיקת סוגים שונים של יישומים:

  • ספק אפליקציות קנבס - לבדיקת אפליקציות קנבס Power Apps
  • ספק אפליקציות מונחות-מודל - לבדיקת Dataverse אפליקציות מונחות-מודל
  • Power Fx ספק - לביצוע Power Fx הצהרות באופן עצמאי
  • ספק פורטל - לאוטומציה של פעולות ב Power Apps

למידע נוסף, ראו יישומי קנבס , יישומי מודל-מונחים , ו Dataverse הרחבות.

Power Fx הרחבות

Power Fx הרחבות מוסיפות יכולות בדיקה חדשות באמצעות פונקציות מותאמות אישית:

  • פונקציות מוגדרות על ידי המשתמש - פונקציות low-code המוגדרות בתוכנית הבדיקה
  • מימושי ReflectionFunction ב-C#‎ - פונקציות מותאמות אישית המיושמות במודולי C#‎

למידע נוסף, ראו Power Fx פונקציות ו מימושים של C# ReflectionFunction.

אפשרויות פיתוח הרחבה

לארגונים יש מספר אפשרויות להרחבת Test Engine:

שימוש בגרסת הקוד הפתוח

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

  • צור ספקים חדשים עבור תרחישי בדיקה ייעודיים
  • פיתוח מנגנוני אימות מותאמים אישית
  • בניית יישומים חדשים של ReflectionFunction ב-C#
  • צור מודולים המרחיבים את הפונקציונליות הליבה
  • הגשת תרומות לצורך בחינה במוצר הליבה

Power Fx פונקציות מוגדרות על ידי המשתמש

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

testSuite:
  testCases:
    - testCaseName: "Test with custom functions"
      userDefineFunctions:
        - name: "FormatDateString"
          parameters: [date]
          expression: "Text(date, 'yyyy-MM-dd')"
      steps:
        # Use the custom function in your test steps
        - action: PowerFxTestStep
          expression: FormatDateString(Now())

פונקציות C# מותאמות אישית עם ReflectionFunction Power Fx

עבור תרחישים מורכבים יותר, ארגונים יכולים לפתח פונקציות C# מותאמות אישית על ידי יישום המחלקה ReflectionFunction ורישומן באמצעות מודול:

// Define your function class
public class SampleFunction : ReflectionFunction
{
    public SampleFunction() : base(DPath.Root.Append(new DName("Preview")), "Sample", FormulaType.Blank)
    {
    }

    public BlankValue Execute()
    {
        Console.WriteLine("Sample function executed");
        return BlankValue.NewBlank();
    }
}

// Register your function in a module
[Export(typeof(ITestEngineModule))]
public class TestEngineSampleModule : ITestEngineModule
{
    public void RegisterPowerFxFunction(PowerFxConfig config, ITestInfraFunctions testInfraFunctions, 
        ITestWebProvider testWebProvider, ISingleTestInstanceState singleTestInstanceState, 
        ITestState testState, IFileSystem fileSystem)
    {
        config.AddFunction(new SampleFunction());
    }
    
    // Implement other required interface methods...
}

שיתוף פעולה עם צוות מנוע הבדיקה

ארגונים המפתחים הרחבות בעלות ערך באמצעות מנוע הבדיקה בקוד פתוח יכולים לשקול יצירת בקשת משיכה (pull request) עבור ההרחבות שלהם כדי להפוך אותן לזמינות במוצר הרשמי. התהליך כרוך בדרך כלל ב:

  1. פיתוח - צור את ההרחבה שלך באמצעות מנוע הבדיקה בקוד פתוח
  2. אימות - בדוק את ההרחבה שלך ביסודיות בסביבה שלך
  3. שיתוף פעולה - עבודה עם צוות Core Test Engine כדי להעריך את ההרחבה
  4. אינטגרציה - אם תאושר, מיקרוסופט חותמת ומשלבת את ההרחבה במוצר

מודל שיתוף פעולה זה מאפשר חדשנות תוך שמירה על האבטחה והאמינות של מוצר Test Engine הרשמי.

נקודות אינטגרציה טכנית

הסעיפים הבאים מתארים כיצד יכולת ההרחבה של Test Engine משתלבת עם טכנולוגיות ליבה כגון Playwright ומחזור חיי התכונות. הבנת נקודות האינטגרציה הללו עוזרת לך לפתח ולפרוס הרחבות מותאמות אישית ביעילות.

שילוב מחזאים

Power Apps מנוע הבדיקה בנוי על גבי Playwright, המספק את הבסיס לאוטומציה של דפדפנים. הרחבות מותאמות אישית יכולות לקיים אינטראקציה עם IBrowserContext של Playwright כדי ליצור יכולות בדיקה מתוחכמות מבוססות דפדפן.

מחזור חיי התכונה

הרחבות חדשות פועלות לפי מחזור חיי התכונות הבא: ...

  1. מרחב השמות של Preview - הרחבות חדשות זמינות לראשונה במרחב השמות Preview לבדיקה מוקדמת
  2. מרחב השמות של TestEngine - לאחר האימות, הרחבות עוברות למרחב השמות המרכזי של TestEngine

יתרונות מודל ההרחבה

מודל ההרחבה מספק יתרונות משמעותיים:

  • סטנדרטיזציה - רכיבים חתומים על ידי מיקרוסופט מבטיחים איכות ואבטחה עקביים
  • חדשנות - מודל הקוד הפתוח מאפשר חדשנות מונעת קהילה
  • גמישות - ארגונים יכולים ליצור הרחבות ייעודיות לדרישות ייחודיות
  • אינטגרציה - הרחבות בעלות ערך נשקלות להכללה במוצר הרשמי