Testa dzinēja paplašināmība (novecojusi)

Piezīmes

Testa programma ir novecojusi un tiks noņemta nākamajā laidienā. Izmantojiet Power Platform dramaturgu paraugus testēšanas automatizācijas iespējām Power Platform un Dynamics 365 pakalpojumos.

Pārskats

Power Apps testa programmai ir spēcīga paplašināmības sistēma, kas ļauj paplašināt pamata testēšanas iespējas, izmantojot dažādus paplašinājuma punktus. Šajā rakstā ir paskaidrots:

  • Kā Microsoft paraksta un apstiprina pirmās puses paplašinājumus
  • Kā darbojas paplašināmības modelis, izmantojot pārvaldīto paplašināmības sistēmu (MEF)
  • Iespējas organizācijām izveidot savus paplašinājumus

Microsoft parakstīti komponenti

Svarīgi

Publiskā priekšskatījuma fāzē komanda pac testa izpilde ielādē tikai Microsoft parakstītus paplašinājumus. Šis dizains nodrošina testa programmas platformas drošību, stabilitāti un veiktspēju.

Microsoft veido, paraksta un validē pirmās puses komponentus, lai nodrošinātu, ka tie atbilst kvalitātes un drošības standartiem. Šie komponenti ietver:

  • Galvenie autentifikācijas pakalpojumu sniedzēji
  • Audekla lietojumprogrammu un modeļu vadītu programmu nodrošinātāji
  • Standarta Power Fx funkcijas un darbības

Paplašināmības sistēma (MEF)

Testēšanas programma izmanto pārvaldīto paplašināmības sistēmu (Managed Extensibility Framework (MEF), lai iespējotu pievienojamu arhitektūru. Šī sistēma ļauj izmantot trīs galvenos paplašinājumu veidus:

Autentifikācijas paplašinājumi

Autentifikācijas paplašinājumi ļauj autentificēties Power Platform dažādus veidus:

  • Krātuves stāvokļa autentifikācija — noklusējuma pārlūkprogrammas autentifikācijas metode
  • Uz sertifikātu balstīta autentifikācija - neinteraktīvai testa izpildei
  • Pielāgoti autentifikācijas nodrošinātāji — specializētiem autentifikācijas scenārijiem

Papildinformāciju skatiet sadaļā Autentifikācija testēšanas programmā.

Pakalpojumu sniedzēju paplašinājumi

Pakalpojumu sniedzēju paplašinājumi ļauj testēt dažāda veida lietojumprogrammas:

  • Canvas lietojumprogrammu nodrošinātājs - Power Apps audekla lietojumprogrammu testēšanai
  • Modeļa vadīts lietotnes nodrošinātājs — modeļa vadītu programmu testēšanai Dataverse
  • Power Fx Pakalpojumu sniedzējs - Paziņojumu izpildei Power Fx patstāvīgi
  • Portal Provider - Power Apps

Papildinformāciju skatiet sadaļā Audekla lietojumprogrammas, modeļa vadītas lietojumprogrammas un Dataverse paplašinājumi.

Power Fx Paplašinājumi

Power Fx Paplašinājumi pievieno jaunas testēšanas iespējas, izmantojot pielāgotas funkcijas:

  • Lietotāja definētas funkcijas - zema koda funkcijas, kas definētas testa plānā
  • C# ReflectionFunction implementācijas - pielāgotas funkcijas, kas ieviestas C# moduļos

Papildinformāciju skatiet sadaļā Power Fx Funkcijas un C# ReflectionFunction implementācijas.

Paplašinājumu izstrādes iespējas

Organizācijām ir vairākas iespējas paplašināt Testa programmu:

Izmantojot open source versiju

Power Apps testa dzinējs ir pieejams kā open source projekts saskaņā ar MIT licenci. Pirmās puses Microsoft, trešo pušu darba grupas un organizācijas var:

  • Jaunu pakalpojumu sniedzēju izveide specializētiem testēšanas scenārijiem
  • Pielāgotu autentifikācijas mehānismu izstrāde
  • Jaunu C# ReflectionFunction ieviešanu izveide
  • Izveidojiet moduļus, kas paplašina pamatfunkcionalitāti
  • Iesniegt ieguldījumus izskatīšanai pamatproduktā

Power Fx Lietotāja definētas funkcijas

Vienkāršākiem scenārijiem varat izveidot lietotāja definētas funkcijas tieši testa plānos:

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())

Pielāgotas C# Power Fx funkcijas ar ReflectionFunction

Sarežģītākiem scenārijiem organizācijas var izstrādāt pielāgotas C# funkcijas, ieviešot klasi ReflectionFunction un reģistrējot tās, izmantojot moduli:

// 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...
}

Sadarbība ar testēšanas programmas komandu

Organizācijas, kas izstrādā vērtīgus paplašinājumus, izmantojot open source Test Engine, var apsvērt iespēju izveidot paplašinājumu piesaistes pieprasījumu, lai padarītu tos pieejamus oficiālajā produktā. Process parasti ietver:

  1. Izstrāde — izveidojiet paplašinājumu, izmantojot open source testa programmu
  2. Validācija - rūpīgi pārbaudiet savu paplašinājumu savā vidē
  3. Sadarbība - sadarbojieties ar Core Test Engine komandu, lai novērtētu paplašinājumu
  4. Integrācija - ja tas tiek apstiprināts, Microsoft paraksta un integrē paplašinājumu produktā

Šis sadarbības modelis nodrošina inovācijas, vienlaikus saglabājot oficiālā Test Engine produkta drošību un uzticamību.

Tehniskās integrācijas punkti

Nākamajās sadaļās ir aprakstīts, kā testēšanas programmas paplašināmība integrējas ar galvenajām tehnoloģijām, piemēram, Playwright un funkciju dzīves ciklu. Izpratne par šiem integrācijas punktiem palīdz efektīvi izstrādāt un izvietot pielāgotus paplašinājumus.

Dramaturgu integrācija

Power Apps Test Engine ir veidots, pamatojoties uz Playwright, kas nodrošina pārlūkprogrammas automatizācijas pamatu. Pielāgoti paplašinājumi var mijiedarboties ar Playwright IBrowserContext , lai izveidotu sarežģītas pārlūkprogrammā balstītas testēšanas iespējas.

Līdzekļu dzīves cikls

Jauni paplašinājumi seko līdzekļa dzīves ciklam:

  1. Priekšskatījuma nosaukumvieta — jauni paplašinājumi vispirms ir pieejami priekšskatījuma nosaukumtelpā agrīnai testēšanai
  2. TestEngine nosaukumvieta — pēc validācijas paplašinājumi pārvietojas uz TestEngine pamata nosaukumvietu

Paplašināmības modeļa priekšrocības

Paplašināmības modelis sniedz ievērojamas priekšrocības:

  • Standartizācija - Microsoft parakstīti komponenti nodrošina nemainīgu kvalitāti un drošību
  • Inovācija - open source modelis ļauj īstenot kopienas virzītas inovācijas
  • Elastība — organizācijas var izveidot specializētus paplašinājumus unikālām prasībām
  • Integrācija - vērtīgi paplašinājumi tiek apsvērti iekļaušanai oficiālajā produktā