Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Uyarı
Önizleme özellikleri, üretimde kullanıma yönelik değildir ve sınırlı işlevselliğe sahip olabilir. Bu özellikler, müşterilerin erken erişim elde edebilmesi ve geri bildirim sağlayabilmesi için resmi bir sürümden önce kullanılabilir.
Testler YAML'de Power Fx ile aynı yönergeleri izleyerek tanımlanır. Power Fx YAML formül dil bilgisi hakkında daha fazla bilgi edinin.
Ayrıntılı örnekler için PowerApps-TestEngine/samples klasörünü görüntüleyin.
YAML şema tanımları
| Mülkiyet | Description |
|---|---|
| testSuite | Bir test paketini, test paketindeki test çalışmalarını ve test paketine özgü yapılandırmayı tanımlar |
| testSettings | Birden çok test çalışması arasında yeniden kullanılan test paketi ayarlarını tanımlar |
| environmentVariables | Uygulama farklı ortamlarda taşınabilirken değişebilecek değişkenleri tanımlar |
testSuite
Bir testi tanımlamak için kullanılır.
| Mülkiyet | Türü | Description |
|---|---|---|
persona |
String | Gerekli. Testi gerçekleştirmek için oturum açmış olan kullanıcı. Kullanıcılar bölümünde listelenen bir kişi ile eşleşmelidir. |
testCases |
TestCases | Gerekli. Test paketindeki test çalışmalarını tanımlar. Test paketlerinde yer alan test çalışmaları sıralı olarak çalıştırılır. Uygulama durumu, bir paketteki tüm test çalışmalarında kalıcı hale gelir. |
testSuiteName |
String | Gerekli. Test paketinin adı. |
appLogicalName |
String | Optional. Başlatılacak uygulamanın mantıksal adı. Çözümden elde edilebilir. Tuval uygulamaları için, bunu elde etmek için bir çözüme eklemeniz gerekir. Bkz. Test planında uygulamanızı tanımlama |
appId |
Kılavuz | Optional. Başlatılacak uygulamanın kimliği. Gerekli ve yalnızca appLogicalName mevcut olmadığında kullanılır. Uygulama Kimliği yalnızca çözümde olmayan tuval uygulamaları için kullanılmalıdır. Bkz. Test planında uygulamanızı tanımlama |
networkRequestMocks |
NetworkRequestMocks | Optional. Test için gereken ağ isteği sahtelerini tanımlar. |
onTestCaseComplete |
String | Optional. Olay yürütülürken paketteki her test çalışması için tetiklenmesi gereken adımları tanımlar. |
onTestCaseStart |
String | Optional. Olay yürütülmeye başlamadan önce paketteki her test çalışması için tetiklenmesi gereken adımları tanımlar. |
onTestSuiteComplete |
String | Optional. Paketin yürütülmesi tamamlandıktan sonra tetiklenmesi gereken adımları tanımlar. |
testSuiteDescription |
String | Optional. Ek bilgiler, test paketinin ne yaptığını açıklar. |
Test planında uygulamanızı tanımlama
Uygulamanızı tanımlamak için veya appLogicalName ayarlamanız appId gerekir. Kullandığınız uygulama, uygulamanızın bir çözüm içinde tanımlanıp tanımlanmadığına bağlıdır.
Çözüm tabanlı uygulamalar (önerilen)
Uygulamalarınızı çözümler içinde tanımladığınızda testleriniz ortamlar arasında taşınabilir kalır.
appLogicalName Uygulamanın çözüm tabanlı olduğunu belirtmek için özelliğini ayarlayın.
Uygulamanın mantıksal adını bulmak için:
- Uygulamanızı içeren çözümü Power Apps'te açma
- Listedeki Adı ( Görünen ad değil) kullanın. Ad değeri, çözüm yayımcısı için özelleştirme ön ekini içerir.
Tek başına uygulamalar
Uygulamanız bir çözüm içinde tanımlanmadığında özelliğini kullanmanız appId gerekir.
Uygulamanın kimliğini bulmak için:
- Uygulamayı Power Apps listesinde bulma
- Ayrıntılar'ı açın ve Uygulama Kimliği GUID'sini not edin
NetworkRequestMocks
| Mülkiyet | Türü | Description |
|---|---|---|
requestURL |
String | Gerekli. Sahte yanıt alan istek URL'si. Glob desenleri kabul edilir |
responseDataFile |
String | Gerekli. Sahte yanıt içeriğine sahip bir metin dosyası. Bu dosyadaki tüm metinler yanıt olarak okunur |
headers |
array | Optional. İstekteki [fieldName: fieldValue] biçiminde üst bilgi alanlarının listesi |
method |
String | Optional. İsteğin yöntemi (GET, POST vb.) |
requestBodyFile |
String | Optional. İstek gövdesine sahip bir metin dosyası. Bu dosyadaki tüm metinler istek gövdesi olarak okunur |
İsteğe bağlı özellikler için değer belirtilmezse yönlendirme tümüne uygulanır. Örneğin null ise method , diğer özelliklerin tümü eşleşiyorsa yöntemi ne olursa olsun sahte yanıtı geri göndeririz.
Sharepoint/Dataverse/Connector uygulamaları requestURL için ve method tüm istekler için aynı olabilir.
x-ms-request-method ve x-ms-request-url üst bilgilerinin bu durumda farklı istekleri tanımlamak için yapılandırılması gerekebilir.
TestCases
| Mülkiyet | Türü | Description |
|---|---|---|
testCaseName |
String | Gerekli. Başarılı ve başarısız raporlamada kullanılan test çalışması adı |
testSteps |
TestSteps | Gerekli. Test çalışması gerçekleştirmek için gereken adımları açıklayan bir dizi Power Fx işlevi. Bkz . TestSteps örneği |
testCaseDescription |
Hayı | Optional. Ek bilgiler, test çalışmalarının ne yaptığını açıklar |
TestSteps
-
TestStepsmevcut Test Altyapısı Power Fx işlevlerini veya bu çerçeve tarafından tanımlanan belirli test işlevlerini kullanabilir. - Değerin çok satırlı YAML ifadelerine ve ardından bir Power Fx ifadesi olduğunu belirtmek için eşittir () işaretine izin vermek için bir kanal simgesiyle (
|=) başlaması gerekir - İşlevler noktalı virgülle (
;) ayrılmalıdır. - Açıklamalar kullanılabilir ve çift ters eğik çizgi karakterleriyle (
//) başlamalıdır.
TestSteps örneği
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
Test planındaki testlerin ayarlarını tanımlamak için kullanılır.
| Mülkiyet | Türü | Description |
|---|---|---|
browserConfigurations |
BrowserConfiguration[] | Gerekli. Test edilecek tarayıcı yapılandırmalarının listesi. En az bir tarayıcı belirtilmelidir. |
extensionModules |
extensionModules | Optional. Etkinleştirileceği uzantılarla ilgili verileri içerir. |
filePath |
String | Optional. Tüm test ayarlarını içeren ayrı bir yaml dosyasının dosya yolu. Sağlanırsa, test planındaki tüm test ayarlarını geçersiz kılar . |
headless |
Boolean | Optional. Varsayılan değer doğrudur false olarak ayarlanırsa, test yürütme sırasında tarayıcı gösterilir. |
locale |
String | Optional. Test çalışmalarının veya test adımlarının yazıldığı yerel ayar/kültür söz dizimi. Belirtilmezse, CultureInfo.CurrentCulture test adımlarını ayrıştırma için varsayılan olarak yerel ayar için kullanılır. Bkz . Bölge ve dille ilgili dikkat edilmesi gerekenler |
recordVideo |
Boolean | Optional. Varsayılan değer false'tur. True olarak ayarlanırsa testin video kaydı yakalanır. |
timeout |
tamsayı | Optional. Milisaniye cinsinden zaman aşımı değeri. Varsayılan değer 30.000 milisaniyedir (30'lar). Herhangi bir işlem zaman aşımı sınırından daha uzun sürerse testi bir hatayla sonlandırır. |
powerFxTestTypes |
name
value çift |
Optional. Tür adı ve Power Fx türü tanımlarının listesi. Bkz. powerFxTestTypes örneği |
testFunctions |
description
code çift |
Optional. Açıklama ve Power Fx işlev tanımlarının listesi. Bkz . testFunctions örneği |
extensionModules
Etkinleştirileceği uzantılarla ilgili verileri içerir.
| Mülkiyet | Türü | Description |
|---|---|---|
enable |
bool | Uzantı modüllerinin etkinleştirilip etkinleştirilmediği. |
allowPowerFxNamespaces |
liste | Etkinleştirileceği PowerFx ad alanlarının listesi. |
parameters |
anahtar değer çiftleri | Uzantı modüllerini denetlemek için değerleri olan özellikler. Şu anda bunun için yalnızca boole enableDataverseFunctions parametresi geçerlidir. |
Bu örnekte PowerFx Preview ad alanının nasıl etkinleştirileceği gösterilmektedir:
testSettings:
extensionModules:
enable: true
allowPowerFxNamespaces:
- Preview
Önizleme işlevleri hakkında daha fazla bilgi edinin
Bölge ve dil ile ilgili dikkat edilmesi gerekenler
Test Altyapısı ondalık ve liste ayırıcıları gibi çeşitli dil ve bölgesel ayarları destekler.
testSettings.locale özelliği bu davranışları denetler. Daha fazla bilgi için bkz. Microsoft Power Fx'te Genel Destek.
PowerApps-TestEngine GitHub deposunda şu örnek yapılandırmalara bakın:
- Liste ayırıcı olarak noktalı virgül kullanan bölgeler için
- Ondalık ayırıcı olarak virgül kullanan bölgeler için
powerFxTestTypes örneği
powerFxTestTypes:
- name: ControlName
value: |
{ControlName: Text}
- name: Options
value: |
[{Name: Text, Value: Number}]
Bu örnekte, test çalışmalarınızda kullanmak üzere özel Power Fx türlerinin nasıl tanımlanacağı gösterilmektedir. Türü ControlName tek Text bir alana sahip bir kayıt olarak tanımlanırkenOptions, tür her biri türünde bir alan ve türünde Name bir Text alan Valueiçeren bir Number kayıt tablosu olarak tanımlanır. Özel türler, test tanımlarınızın esnekliğini ve gücünü geliştirerek daha karmaşık ve belirli test senaryoları oluşturmak için kullanılabilir.
testFunctions örneği
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);
Bu test işlevi örnekleri, test çalışmalarınızda kullanmak üzere özel Power Fx işlevlerinin nasıl tanımlanacağı gösterilmektedir. İşlev, WaitUntilVisible Playwright eylemlerini kullanarak belirli bir denetimin görünür olmasını beklemek için bir DOM seçici kullanır. GetOptions işlevi, Power Fx denetimini kullanarak Model Temelli Uygulama'dan (MDA) belirtilen denetim seçeneklerini alır. Bu özel işlevler test tanımlarınızın esnekliğini ve gücünü geliştirerek daha karmaşık ve belirli test senaryolarına olanak sağlar.
BrowserConfiguration
Her testSettings için en az bir BrowserConfigurationgerekir.
| Mülkiyet | Türü | Description |
|---|---|---|
browser |
String | Gerekli. Test sırasında başlatılacak tarayıcı. Playwright tarafından desteklenen tarayıcılarla eşleşmelidir. |
device |
String | Optional. Tarayıcı başlatılırken öykünecek cihaz. Playwright tarafından desteklenen cihazlarla eşleşmelidir |
screenHeight |
tamsayı | Optional. Tarayıcı başlatılırken kullanılacak ekranın yüksekliği. Belirtilirse, screenWidth ayrıca belirtilmelidir. |
screenWidth |
tamsayı | Optional. Tarayıcı başlatılırken kullanılacak ekranın genişliği. Belirtilirse, screenHeight ayrıca belirtilmelidir. |
environmentVariables
Farklı türlerdeki değerleri ortam değerleri olarak depolayabilirsiniz, ancak en yaygın durum kimlik bilgilerini bir kullanıcı listesiyle depolamaktır.
users
Kimlik bilgilerinin güvenli bir şekilde depolandığından emin olmak için, test tanımı kullanan personaNamekullanıcılara başvurur. Kimlik bilgilerinin test planı dosyalarında depolanması desteklenmez.
Örnek:
environmentVariables:
- users:
- personaName: "User1"
emailKey: "user1Email"
- personaName: "User2"
emailKey: "user2Email"
personaName, test tanımının bir parçası olarak testin hangi kullanıcı olarak çalıştırılabileceğini belirtmek için kullanılır.
Desteklenen kimlik bilgileri depolama mekanizmaları
Kimlik bilgilerini ortam değişkenleri olarak depolamak için bunları aşağıdaki gibi ayarlayabilirsiniz:
# In PowerShell - replace variableName and variableValue with the correct values
$env:variableName = "variableValue"
YAML'de, bu kullanıcının kimlik bilgilerinin ortam değişkenlerinde depolandığını belirtmek için iki özelliğin tanımlanması gerekir:
-
emailKey: Kullanıcının e-postasını depolamak için kullanılan ortam değişkeni.
Örnek YAML:
- personaName: "User1"
emailKey: "user1Email"
YAML'yi temel alan kullanıcı kimlik bilgilerini ayarlamak için örnek PowerShell:
$env:user1Email = "someone@example.com"
Ayrıca bakınız
Power Apps Test Altyapısına genel bakış (önizleme)
Power Apps Test Altyapısı Power Fx işlevleri (önizleme)