שתף דרך


תבנית YAML של Power Apps Test Engine (תצוגה מקדימה)

הערה

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

בדיקות מוגדרות ב- YAML בהתאם להנחיות של Power Fx. קבל מידע נוסף על דקדוק הנוסחה של Power Fx YAML.

הצג את התיקיה PowerApps-TestEngine/samples לקבלת דוגמאות מפורטות.

הגדרות סכימת YAML

מאפיין‬ תיאור‬‏‫‬
תות בדיקה הגדרת חבילת בדיקה אחת, מפרטי הבדיקה בחבילת הבדיקה ובתצורה הספציפיים לחבילת הבדיקה
הגדרות בדיקה הגדרת הגדרות עבור חבילת הבדיקה שבה נעשה שימוש חוזר בכמה מקרי בדיקה
environmentVariables הגדרת משתנים שעשויים להשתנות בעת ניוד היישום בסביבות שונות

תות בדיקה

משמש להגדרת בדיקה אחת.

מאפיין‬ Type תיאור‬‏‫‬
persona מחרוזת חובה. המשתמש שנכנס כדי לבצע את הבדיקה. חייב להתאים לאדם המופיע במקטע משתמשים .
testCases אותיות בדיקה חובה. מגדיר מקרי בדיקה בחבילת הבדיקה. מקרי בדיקה הכלולים בסוויטות בדיקה פועלים ברצף. מצב היישום עקבי בכל מקרי הבדיקה בחבילה.
testSuiteName מחרוזת חובה. השם של חבילת הבדיקה.
appLogicalName מחרוזת אופציונלי. השם הלוגי של היישום שיש להפעיל. ניתן להשיג אותו מהפתרון. עבור יישומי בד ציור, עליך להוסיף אותו לפתרון כדי להשיג אותו. ראה כיצד לזהות את היישום שלך בתוכנית הבדיקה
appId Guid אופציונלי. מזהה היישום שיש להפעיל. נדרש ומשמש רק appLogicalName כאשר אינו קיים. יש להשתמש במזהה היישום רק עבור אפליקציות בד ציור שאינן נמצאות בפתרון. ראה כיצד לזהות את היישום שלך בתוכנית הבדיקה
networkRequestMocks NetworkRequestMocks אופציונלי. מגדיר את הצורך לבקשת רשת לצורך הבדיקה.
onTestCaseComplete מחרוזת אופציונלי. הגדרת השלבים שיש להפעיל עבור כל מקרה בדיקה בחבילה לאחר סיום פעולת האירוע.
onTestCaseStart מחרוזת אופציונלי. הגדרת השלבים שיש להפעיל עבור כל מקרה בדיקה בחבילה לפני שהמקרה מתחיל בביצוע.
onTestSuiteComplete מחרוזת אופציונלי. הגדרת השלבים שיש להפעיל לאחר סיום הפעולה של החבילה.
testSuiteDescription מחרוזת אופציונלי. מידע נוסף מתאר מה עושה חבילת הבדיקה.

כיצד לזהות את היישום שלך בתוכנית הבדיקה

עליך להגדיר או לזהות appLogicalName את appId היישום שלך. השימוש ביישום תלוי בשאלה אם היישום שלך מוגדר בתוך פתרון.

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

כדי לאתר את השם הלוגי של היישום:

  1. פתח את הפתרון המכיל את היישום שלך ב- Power Apps
  2. השתמש בשם (לא שם תצוגה) ברשימה. ערך השם כולל את קידומת ההתאמה האישית עבור מפרסם הפתרון.

יישומים עצמאיים

כאשר היישום שלך אינו מוגדר בתוך פתרון, עליך להשתמש במאפיין appId .

כדי לאתר את המזהה של היישום:

  1. אתר את היישום ברשימת Power Apps
  2. פתח פרטים ורשום לעצמך את ה- GUID של מזהה היישום

NetworkRequestMocks

מאפיין‬ Type תיאור‬‏‫‬
requestURL מחרוזת חובה. כתובת ה- URL של הבקשה שמקבלת תגובה מדומה. דפוסי גלובוס מתקבלים
responseDataFile מחרוזת חובה. קובץ טקסט עם תוכן התגובה המדומה. כל הטקסט בקובץ זה נקרא כתגובה
headers מערך אופציונלי. רשימה של שדות כותרת בבקשה בתבנית של [fieldName: fieldValue]
method מחרוזת אופציונלי. שיטת הבקשה (GET, POST וכו')
requestBodyFile מחרוזת אופציונלי. קובץ טקסט עם גוף הבקשה. כל הטקסט בקובץ זה נקרא כגוף הבקשה

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

עבור יישומי Sharepoint/Dataverse/Connector, requestURL ועשויים method להיות זהים עבור כל הבקשות. x-ms-request-method ולקבוע x-ms-request-url את התצורה של כותרות במקרה זה כדי לזהות בקשות שונות.

אותיות בדיקה

מאפיין‬ Type תיאור‬‏‫‬
testCaseName מחרוזת חובה. שם מקרה הבדיקה המשמש לדיווח על הצלחה וכשל
testSteps TestSteps חובה. ערכה של פונקציות Power Fx המתארות את השלבים הדרושים לביצוע מקרה הבדיקה. ראה דוגמה של TestSteps
testCaseDescription כן אופציונלי. מידע נוסף מתאר מה עושה מקרה הבדיקה

TestSteps

  • TestSteps יכול להשתמש בפונקציות קיימות של Power Fx של מנוע בדיקה או פונקציות בדיקה ספציפיות המוגדרות במסגרת זו.
  • הערך צריך להתחיל בסימן Pipe (|) כדי לאפשר ביטויי YAML מרובי שורות ואחריו סימן שוויון (=) כדי לציין שזהו ביטוי Power Fx
  • יש להפריד בין הפונקציות באמצעות נקודה-פסיק (;).
  • ניתן להשתמש בהערות ולהתחיל עם תווי קו נטוי הפוך כפול (//).

דוגמה של TestSteps

testCases:
   - testCaseName: Fill in a city name and do the search
   testSteps: |
      = Screenshot("connectorapp_loaded.png");
         SetProperty(TextInput1.Text, "Atlanta");
         Select(Button1);
         Assert(Label4.Text = "You are seeing the mock response", "Validate the output is from the mock");
         Screenshot("connectorapp_end.png");

הגדרות בדיקה

משמש להגדרת הגדרות עבור הבדיקות בתוכנית הבדיקה.

מאפיין‬ Type תיאור‬‏‫‬
browserConfigurations BrowserConfiguration[] חובה. רשימה של תצורות דפדפן לבדיקה. יש לציין דפדפן אחד לפחות.
extensionModules הרחבותמודולי הרחבה אופציונלי. מכיל נתונים אודות הרחבות כדי להפוך לזמינות.
filePath מחרוזת אופציונלי. נתיב הקובץ לקובץ yaml נפרד עם כל הגדרות הבדיקה. אם תינתן, הוא יעקוף את כל הגדרות הבדיקה בתוכנית הבדיקה.
headless boolean אופציונלי. ברירת המחדל היא true. אם הוא מוגדר ל- False, הדפדפן מופיע במהלך ביצוע בדיקה.
locale מחרוזת אופציונלי. תחביר האזור/התרבות שבו נכתבו מקרי הבדיקה או שלבי הבדיקה. אם לא צוין, CultureInfo.CurrentCulture משמש עבור האזור כברירת מחדל לניתוח של שלבי הבדיקה. ראה שיקולי אזור ושפה
recordVideo boolean אופציונלי. ברירת המחדל היא false. אם ההגדרה היא True, הקלטת וידאו של הבדיקה נלכדת.
timeout מספר שלם אופציונלי. ערך זמן קצוב באלפיות שניה. ברירת המחדל היא 30,000 אלפיות שניה (30). אם פעולה כלשהי נמשכת זמן רב יותר ממגבלת הזמן הקצוב, היא מסיים את הבדיקה בכשל.
powerFxTestTypes name value זוג אופציונלי. רשימה של שם סוג והגדרות סוג Power Fx. ראה דוגמה ל- powerFxTestTypes
testFunctions description code זוג אופציונלי. רשימה של הגדרות תיאור ופונקציה של Power Fx. ראה דוגמה של testFunctions

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

מכיל נתונים אודות הרחבות כדי להפוך לזמינות.

מאפיין‬ Type תיאור‬‏‫‬
enable בול אם מודולי הרחבה זמינים או לא.
allowPowerFxNamespaces רשימה רשימה של מרחבי השמות של PowerFx כדי להפוך אותם לזמינים.
parameters זוגות ערכי מפתח מאפיינים עם ערכים לשליטה במודולי הרחבה. בשלב זה, רק הפרמטר הבוליאני enableDataverseFunctions חוקי עבור פעולה זו.

דוגמה זו מראה כיצד להפוך את מרחב השמות של PowerFx לזמין Preview :

testSettings:
  extensionModules:
    enable: true
    allowPowerFxNamespaces:
    - Preview

קבל מידע נוסף על פונקציות תצוגה מקדימה

שיקולי אזור ושפה

Test Engine תומך בהגדרות שפה ואזוריות שונות, כגון תווי הפרדה עשרוניים ומפרידי רשימות. המאפיין testSettings.locale שולט אופני פעולה אלה. לקבלת מידע נוסף, ראה תמיכה גלובלית ב- Microsoft Power Fx.

עיין בתצורות לדוגמה אלה במאגרPowerApps-TestEngine GitHub:

דוגמה ל- powerFxTestTypes

powerFxTestTypes:
 - name: ControlName
   value: |
      {ControlName: Text} 
 - name: Options
   value: |
      [{Name: Text, Value: Number}]   

דוגמה זו מדגימה כיצד להגדיר סוגי Power Fx מותאמים אישית לשימוש במקרי הבדיקה שלך. הסוג ControlName מוגדר כרשומות Text עם שדה יחיד, Options בעוד שהסוג מוגדר כטבלת רשומות, NameTextValue שכל אחת מהן מכילה שדה מסוג ושדה מסוג Number. ניתן להשתמש בסוגים מותאמים אישית כדי ליצור תרחישי בדיקה מורכבים ומסויםים יותר, לשיפור הגמישות והעוצמה של הגדרות הבדיקה שלך.

דוגמה ל- testFunctions

testFunctions:
 - description: Wait until control is visible using Document Object Model (DOM) selector
   code: |
    WaitUntilVisible(control: Text): Void = 
      Preview.PlaywrightAction(Concatenate("//div[@data-id='", control, "']"), "wait");
 - description: Get the options for a control using Power Fx control from Model Driven App (MDA)
   code: |
    GetOptions(control: ControlName): Options =
      Preview.GetOptions(control);

דוגמאות אלה לפונקציות בדיקה מדגימות כיצד להגדיר פונקציות Power Fx מותאמות אישית לשימוש במקרי הבדיקה שלך. הפונקציה WaitUntilVisible משתמשת בבחר DOM כדי להמתין עד שפקד שצוין יהיה גלוי, תוך שימוש בפעולות Playwright. הפונקציה GetOptions מאחזרת את האפשרויות עבור פקד שצוין מיישום מונחה מודל ( MDA), תוך שימוש בפקד Power Fx. פונקציות מותאמות אישית אלה משפרות את הגמישות והעוצמה של הגדרות הבדיקה שלך, ומאפשרות תרחישי בדיקה מורכבים וספציפית יותר.

תצורת דפדפן

כל testSettings דורש לפחות .BrowserConfiguration

מאפיין‬ Type תיאור‬‏‫‬
browser מחרוזת חובה. הדפדפן שיש להפעיל בעת בדיקה. אמור להתאים לדפדפנים הנתמכים על-ידי Playwright.
device מחרוזת אופציונלי. המכשיר לדמות בעת הפעלת הדפדפן. אמור להתאים למכשירים הנתמכים על-ידי Playwright
screenHeight מספר שלם אופציונלי. גובה המסך שבו יש להשתמש בעת הפעלת הדפדפן. אם צוין, screenWidth יש לציין גם אותו.
screenWidth מספר שלם אופציונלי. רוחב המסך שבו יש להשתמש בעת הפעלת הדפדפן. אם צוין, screenHeight יש לציין גם אותו.

environmentVariables

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

משתמשים

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

דוגמה:

environmentVariables:
    - users:
        - personaName: "User1"
          emailKey: "user1Email"
        - personaName: "User2"
          emailKey: "user2Email"

משמש personaName כחלק מהגדרת הבדיקה כדי לציין באיזה משתמש יש להפעיל את הבדיקה.

מנגנוני אחסון נתמכים של אישורים

כדי לאחסן אישורים כמשתנה סביבה, באפשרותך להגדיר אותם באופן הבא:

# In PowerShell - replace variableName and variableValue with the correct values
$env:variableName = "variableValue"

ב- YAML, יש להגדיר שני מאפיינים כדי לציין שהאישורים של משתמש זה מאוחסנים במשתנה סביבה:

  • emailKey: משתנה הסביבה המשמש לאחסון הדואר האלקטרוני של המשתמש.

דוגמה YAML:

    - personaName: "User1"
      emailKey: "user1Email"

דוגמה ל- PowerShell כדי להגדיר אישורי משתמש בהתבסס על YAML:

$env:user1Email = "someone@example.com"

למידע נוסף

מבט כולל על Power Apps Test Engine (תצוגה מקדימה)
פונקציות Power Fx של Power Fx במנוע בדיקה של Power Apps (תצוגה מקדימה)