Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
Megjegyzés:
Az előzetes funkciókat nem célszerű termelési környezetben használni, és előfordulhat, hogy korlátozott funkcionalitással rendelkeznek. Ezek a funkciók a hivatalos kiadás előtt érhetők el, így az ügyfelek korai hozzáférést kaphatnak, és visszajelzést kaphatnak.
A tesztek a YAML-ben vannak definiálva, ugyanazokkal az irányelvekkel, mint a Power Fx. További információ a Power Fx YAML-képlet nyelvtanáról.
Részletes példákért tekintse meg a PowerApps-TestEngine/samples mappát.
YAML-sémadefiníciók
| Ingatlan | Description |
|---|---|
| testSuite | Egy tesztcsomagot határoz meg, a tesztcsomag teszteseteit és a tesztcsomagra vonatkozó konfigurációt |
| testSettings | A több tesztesetben újra felhasználható tesztcsomag beállításait határozza meg |
| environmentVariables | Olyan változókat definiál, amelyek változhatnak, mivel az alkalmazás különböző környezetekben van portálva |
testSuite
Egy teszt definiálására szolgál.
| Ingatlan | Típus | Description |
|---|---|---|
persona |
karakterlánc | Szükséges. A teszt végrehajtásához bejelentkezett felhasználó. Meg kell egyeznie a Felhasználók szakaszban felsorolt személynek. |
testCases |
TestCases | Szükséges. A tesztcsomagban található teszteseteket határozza meg. A tesztcsomagokban található tesztesetek egymás után futnak. Az alkalmazás állapota a csomag összes tesztesetében megmarad. |
testSuiteName |
karakterlánc | Szükséges. A tesztcsomag neve. |
appLogicalName |
karakterlánc | Opcionális. Az elindítandó alkalmazás logikai neve. Az oldatból beszerezhető. Vászonalapú alkalmazások esetén hozzá kell adnia egy megoldáshoz a beszerzéséhez. Lásd : Az alkalmazás azonosítása a teszttervben |
appId |
GUID | Opcionális. Az elindítandó alkalmazás azonosítója. Csak akkor szükséges és használható, ha appLogicalName nincs jelen. Az alkalmazásazonosító csak olyan vászonalapú alkalmazásokhoz használható, amelyek nem szerepelnek a megoldásban. Lásd : Az alkalmazás azonosítása a teszttervben |
networkRequestMocks |
NetworkRequestMocks | Opcionális. Meghatározza a teszthez szükséges hálózati kéréseket. |
onTestCaseComplete |
karakterlánc | Opcionális. Meghatározza azokat a lépéseket, amelyeket egy csomag minden tesztesetéhez aktiválni kell az eset végrehajtása után. |
onTestCaseStart |
karakterlánc | Opcionális. Meghatározza azokat a lépéseket, amelyeket egy csomag minden tesztesetéhez aktiválni kell az eset végrehajtása előtt. |
onTestSuiteComplete |
karakterlánc | Opcionális. Meghatározza azokat a lépéseket, amelyeket a csomag végrehajtása után aktiválni kell. |
testSuiteDescription |
karakterlánc | Opcionális. További információk a tesztcsomag működését ismertetik. |
Alkalmazás azonosítása a teszttervben
Be kell állítania vagy appLogicalNameappId azonosítania kell az alkalmazást. A használat attól függ, hogy az alkalmazás egy megoldáson belül van-e definiálva.
Megoldásalapú alkalmazások (ajánlott)
Ha az alkalmazásokat megoldásokon belül definiálja, a tesztek hordozhatóak maradnak a környezetekben. Állítsa be a appLogicalName tulajdonságot, hogy jelezze, hogy az alkalmazás megoldásalapú.
Az alkalmazás logikai nevének megkeresése:
- Az alkalmazást tartalmazó megoldás megnyitása a Power Appsben
- Használja a nevet (nem megjelenítendő nevet) a listában. A névérték tartalmazza a megoldás közzétevőjének testreszabási előtagát.
Önálló alkalmazások
Ha az alkalmazás nincs definiálva egy megoldáson belül, a tulajdonságot kell használnia appId .
Az alkalmazás azonosítójának megkeresése:
- Az alkalmazás megkeresése a Power Apps listában
- Nyissa meg a Részleteket, és jegyezze fel az alkalmazásazonosító GUID azonosítóját
NetworkRequestMocks
| Ingatlan | Típus | Description |
|---|---|---|
requestURL |
karakterlánc | Szükséges. A kérés URL-címe, amely utánzatválaszt kap. A Glob-minták elfogadottak |
responseDataFile |
karakterlánc | Szükséges. Egy szöveges fájl a modellválasz tartalmával. A fájl minden szövegét válaszként olvassa be a rendszer |
headers |
tömb | Opcionális. A kérelem fejlécmezőinek listája [fieldName: fieldValue] formátumban |
method |
karakterlánc | Opcionális. A kérelem metódusa (GET, POST stb.) |
requestBodyFile |
karakterlánc | Opcionális. Szövegfájl a kérelem törzsével. A fájlban lévő összes szöveg a kérelem törzseként van beolvasva |
Választható tulajdonságok esetén, ha nincs megadva érték, az útválasztás mindenkire érvényes. Ha például method null, akkor a modell válaszát visszaküldjük, bármilyen metódus is legyen, amíg a többi tulajdonság megegyezik.
SharePoint-/Dataverse-/Connector-alkalmazások esetén, requestURL és method minden kérés esetében ugyanaz lehet.
x-ms-request-method a x-ms-request-url fejléceket pedig konfigurálni kell ebben az esetben a különböző kérések azonosításához.
TestCases
| Ingatlan | Típus | Description |
|---|---|---|
testCaseName |
karakterlánc | Szükséges. A sikeres és sikertelen jelentéskészítéshez használt teszteset neve |
testSteps |
TestSteps | Szükséges. Power Fx-függvények készlete, amelyek a teszteset végrehajtásához szükséges lépéseket írják le. Lásd: TestSteps-példa |
testCaseDescription |
Nem | Opcionális. További információk a teszteset működését ismertetik |
TestSteps
-
TestStepsbármilyen meglévő Power Fx-tesztmotor-függvényt vagy a keretrendszer által meghatározott meghatározott tesztfüggvényeket használhat. - Az értéknek egy csőszimbólummal (
|) kell kezdődnie, amely lehetővé teszi a többsoros YAML-kifejezések, majd egy egyenlőségjel (=) jellel, amely azt jelzi, hogy ez egy Power Fx-kifejezés - A függvényeket pontosvesszővel (
;pontosvesszővel) kell elválasztani. - A megjegyzések használhatók, és dupla fordított perjel karakterekkel (
//) kezdődnek.
Példa a TestSteps használatára
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");
testSettings
A teszttervben szereplő tesztek beállításainak meghatározására szolgál.
| Ingatlan | Típus | Description |
|---|---|---|
browserConfigurations |
BrowserConfiguration[] | Szükséges. A tesztelni kívánt böngészőkonfigurációk listája. Legalább egy böngészőt meg kell adni. |
extensionModules |
extensionModules | Opcionális. Az engedélyezendő bővítményekről tartalmaz adatokat. |
filePath |
karakterlánc | Opcionális. Egy külön yaml-fájl elérési útja az összes tesztbeállítással. Ha meg van adva, az felülírja a tesztterv összes tesztbeállítását. |
headless |
Boolean | Opcionális. Alapértelmezett érték: true (igaz). Ha hamis értékre van állítva, a böngésző megjelenik a teszt végrehajtása során. |
locale |
karakterlánc | Opcionális. A területi/kulturális szintaxis, amelyben a tesztelési esetek vagy a tesztelési lépések meg vannak írva. Ha nincs meghatározva, CultureInfo.CurrentCulture a rendszer alapértelmezés szerint a területi beállításhoz használja a tesztelési lépések elemzéséhez. Tekintse meg a régióval és a nyelvvel kapcsolatos szempontokat |
recordVideo |
Boolean | Opcionális. Az alapértelmezett érték false. Ha igaz értékre van állítva, a rendszer videofelvételt készít a tesztről. |
timeout |
egész szám | Opcionális. Időtúllépési érték ezredmásodpercben. Az alapértelmezett érték 30 000 ezredmásodperc (30-as). Ha egy művelet az időtúllépési korlátnál hosszabb időt vesz igénybe, a teszt sikertelen lesz. |
powerFxTestTypes |
name
value pár |
Opcionális. A típusnév és a Power Fx-típusdefiníciók listája. Lásd a powerFxTestTypes példát |
testFunctions |
description
code pár |
Opcionális. Leírások és Power Fx-függvénydefiníciók listája. Lásd a testFunctions példát |
extensionModules
Az engedélyezendő bővítményekről tartalmaz adatokat.
| Ingatlan | Típus | Description |
|---|---|---|
enable |
bool | Azt jelzi, hogy a bővítménymodulok engedélyezve vannak-e. |
allowPowerFxNamespaces |
list | Az engedélyezni kívánt PowerFx-névterek listája. |
parameters |
kulcsérték párok | Tulajdonságok a bővítménymodulok vezérléséhez használt értékekkel. Jelenleg csak a logikai enableDataverseFunctions paraméter érvényes erre. |
Ez a példa bemutatja, hogyan engedélyezheti a PowerFx-névteret Preview :
testSettings:
extensionModules:
enable: true
allowPowerFxNamespaces:
- Preview
További információ az előzetes verziójú függvényekről
Régió- és nyelvhasználati szempontok
A Tesztmotor különböző nyelvi és regionális beállításokat támogat, például tizedesjegyeket és listaelválasztókat. A testSettings.locale tulajdonság szabályozza ezeket a viselkedéseket. További információ: Globális támogatás a Microsoft Power Fx-ben.
Tekintse meg ezeket a mintakonfigurációkat a PowerApps-TestEngine GitHub-adattárban:
- Pontosvesszőket listaelválasztóként használó régiók esetén
- Vesszőket tizedesjelként használó régiók esetén
powerFxTestTypes példa
powerFxTestTypes:
- name: ControlName
value: |
{ControlName: Text}
- name: Options
value: |
[{Name: Text, Value: Number}]
Ez a példa bemutatja, hogyan definiálhat egyéni Power Fx-típusokat a tesztesetekben való használatra. A ControlName típus egyetlen Text mezővel rendelkező rekordként van definiálva, míg a Options típus rekordtáblaként van definiálva, amelyek mindegyike típusmezőt NameText és típusmezőt ValueNumbertartalmaz. Az egyéni típusok összetettebb és konkrétabb tesztforgatókönyvek létrehozására használhatók, ami növeli a tesztdefiníciók rugalmasságát és teljesítményét.
példa a testFunctions használatára
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);
Ezek a tesztfüggvény-példák bemutatják, hogyan definiálhat egyéni Power Fx-függvényeket a tesztesetekben való használatra. A WaitUntilVisible függvény DOM-választóval várja meg, amíg egy adott vezérlőelem látható lesz, a Playwright-műveletek használatával. A GetOptions függvény a Power Fx-vezérlőt használó modellalapú alkalmazásból (MDA) kéri le egy adott vezérlő beállításait. Ezek az egyéni függvények növelik a tesztdefiníciók rugalmasságát és teljesítményét, így összetettebb és konkrétabb tesztforgatókönyveket is lehetővé tesz.
BrowserConfiguration
Minden testSettingshoz legalább egy BrowserConfigurationszükséges.
| Ingatlan | Típus | Description |
|---|---|---|
browser |
karakterlánc | Szükséges. A teszteléskor elindítandó böngésző. Meg kell egyeznie a Playwright által támogatott böngészőkkel. |
device |
karakterlánc | Opcionális. A böngésző indításakor emulálni kívánt eszköz. Meg kell egyeznie a Playwright által támogatott eszközökkel |
screenHeight |
egész szám | Opcionális. A böngésző indításakor használni kívánt képernyő magassága. Ha meg van adva, screenWidth azt is meg kell adni. |
screenWidth |
egész szám | Opcionális. A böngésző indításakor használni kívánt képernyő szélessége. Ha meg van adva, screenHeight azt is meg kell adni. |
environmentVariables
A különböző típusú értékeket környezeti értékekként tárolhatja, de a leggyakoribb eset a hitelesítő adatok tárolása a felhasználók listájával.
users
A hitelesítő adatok biztonságos tárolása érdekében a tesztdefiníció a felhasználókra hivatkozik.personaName A hitelesítő adatok teszttervfájlokban való tárolása nem támogatott.
Példa:
environmentVariables:
- users:
- personaName: "User1"
emailKey: "user1Email"
- personaName: "User2"
emailKey: "user2Email"
A personaName tesztdefiníció részeként azt jelzi, hogy milyen felhasználóként kell futtatni a tesztet.
Támogatott hitelesítő adatok tárolási mechanizmusai
A hitelesítő adatok környezeti változókként való tárolásához az alábbiak szerint állíthatja be őket:
# In PowerShell - replace variableName and variableValue with the correct values
$env:variableName = "variableValue"
A YAML-ben két tulajdonságot kell definiálni annak jelzéséhez, hogy a felhasználó hitelesítő adatai környezeti változókban vannak tárolva:
-
emailKey: A felhasználó e-mailjeinek tárolására használt környezeti változó.
Példa YAML:
- personaName: "User1"
emailKey: "user1Email"
Példa a PowerShellre a felhasználói hitelesítő adatok YAML-alapú beállításához:
$env:user1Email = "someone@example.com"
Lásd még
A Power Apps tesztmotor áttekintése (előzetes verzió)
Power Apps– Tesztmotor – Power Fx-függvények (előzetes verzió)