Bandomasis variklio išplėtimas (nebenaudojamas)

Pastaba.

Bandomasis modulis yra nebenaudojamas ir bus pašalintas būsimame leidime. Naudokite Power Platform Playwright pavyzdžius testavimo automatizavimo galimybėms "Power Platform" ir Dynamics 365 tarnybose.

Apžvalga

"Power Apps" testavimo modulis turi patikimą išplėtimo sistemą, leidžiančią išplėsti pagrindines testavimo galimybes naudojant įvairius išplėtimo taškus. Šiame straipsnyje paaiškinama:

  • Kaip "„Microsoft“" pasirašo ir patvirtina pirmosios šalies plėtinius
  • Kaip išplečiamumo modelis veikia naudojant valdomojo išplėtimo sistemą (MEF)
  • Galimybės organizacijoms kurti savo plėtinius

"„Microsoft“" pasirašyti komponentai

Svarbu

Viešosios peržiūros etapo metu komanda pac test run įkelia tik „Microsoft“ pasirašytus plėtinius. Ši konstrukcija užtikrina "Test Engine" platformos saugumą, stabilumą ir veikimą.

"„Microsoft“" kuria, pasirašo ir tikrina pirmosios šalies komponentus, siekdama užtikrinti, kad jie atitiktų kokybės ir saugos standartus. Šie komponentai apima:

  • Pagrindiniai autentifikavimo teikėjai
  • Drobės programų ir modeliu pagrįstų programų teikėjai
  • Standartinės Power Fx funkcijos ir veiksmai

Išplečiamumo sistema (MEF)

Bandymo modulis naudoja valdomą išplėtimo sistemą (MEF), kad įgalintų prijungiamą architektūrą. Ši sistema leidžia trijų pagrindinių tipų plėtinius:

Autentifikavimo plėtiniai

Autentifikavimo plėtiniai leidžia įvairiais būdais autentifikuoti naudojant Power Platform:

  • Saugojimo būsenos autentifikavimas - numatytasis naršyklės autentifikavimo metodas
  • Sertifikatu pagrįstas autentifikavimas - neinteraktyviam bandymo vykdymui
  • Pasirinktiniai autentifikavimo teikėjai - specializuotiems autentifikavimo scenarijams

Norėdami gauti daugiau informacijos, žiūrėkite Autentifikavimas bandomajame modulyje.

Teikėjo plėtiniai

Teikėjo plėtiniai leidžia išbandyti įvairių tipų programas:

  • Canvas App Provider – skirta Power Apps drobės taikomosioms programoms testuoti
  • Modeliu pagrįstų programų teikėjas - modeliu pagrįstų programų testavimui Dataverse
  • Power Fx Teikėjas - savarankiškai vykdyti Power Fx pareiškimus
  • Portal Provider - Operacijoms automatizuoti Power Apps

Norėdami gauti daugiau informacijos, žiūrėkite Drobės programos, Modeliu pagrįstos programos ir Dataverse plėtiniai.

Power Fx Plėtiniai

Power Fx Plėtiniai prideda naujų testavimo galimybių naudodami pasirinktines funkcijas:

  • Vartotojo apibrėžtos funkcijos - žemo kodo funkcijos, apibrėžtos bandymo plane
  • C# ReflectionFunction Implementations - Pasirinktinės funkcijos, įdiegtos C# moduliuose

Norėdami gauti daugiau informacijos, žiūrėkite Power Fx Funkcijos ir C# ReflectionFunction Implementations.

Plėtinių kūrimo parinktys

Organizacijos turi kelias galimybes išplėsti bandomąjį variklį:

Naudojant open source versiją

Power Apps Test Engine galima įsigyti kaip open source projektą pagal MIT licenciją. Pirmosios šalies "„Microsoft“", trečiųjų šalių komandos ir organizacijos gali:

  • Naujų specializuotų testavimo scenarijų teikėjų kūrimas
  • Pasirinktinių autentifikavimo mechanizmų kūrimas
  • Sukurkite naujus C# ReflectionFunction diegimus
  • Kurkite modulius, kurie išplečia pagrindines funkcijas
  • Pateikite įnašus, kad jie būtų svarstomi pagrindiniame produkte

Power Fx vartotojo apibrėžtos funkcijos

Jei naudojate paprastesnius scenarijus, naudotojo apibrėžtas funkcijas galite kurti tiesiogiai bandymų planuose:

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

Pasirinktinės C# Power Fx funkcijos su ReflectionFunction

Sudėtingesniems scenarijams organizacijos gali sukurti pasirinktines C# funkcijas, įdiegdamos ReflectionFunction klasę ir užregistruodamos jas per modulį:

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

Bendradarbiavimas su "Test Engine" komanda

Organizacijos, kuriančios vertingus plėtinius naudodami "open source Test Engine", gali apsvarstyti galimybę sukurti savo plėtinių ištraukimo užklausą, kad jie būtų prieinami oficialiame produkte. Procesas paprastai apima:

  1. Development – sukurkite plėtinį naudodami "open source Test Engine"
  2. Patvirtinimas – kruopščiai išbandykite plėtinį savo aplinkoje
  3. Bendradarbiavimas – Bendradarbiaukite su „Core Test Engine“ komanda, kad įvertintumėte plėtinį
  4. Integracija – jei patvirtinta, „Microsoft“ pasirašo ir integruoja plėtinį į gaminį

Šis bendradarbiavimo modelis leidžia diegti inovacijas, kartu išlaikant oficialaus testavimo variklio produkto saugumą ir patikimumą.

Techninės integracijos taškai

Tolesniuose skyriuose aprašoma, kaip testavimo modulio išplėtimo galimybės integruojamos su pagrindinėmis technologijomis, tokiomis kaip „Playwright“ ir funkcijų gyvavimo ciklas. Šių integracijos taškų supratimas padės jums efektyviai kurti ir diegti pasirinktinius plėtinius.

Dramaturgo integracija

"Power Apps Test Engine" sukurtas remiantis dramaturgu, kuris suteikia naršyklės automatizavimo pagrindą. Pasirinktiniai plėtiniai gali sąveikauti su „Playwright“ `IBrowserContext`, kad sukurtų sudėtingas naršyklėje veikiančias testavimo galimybes. ...

Funkcijos gyvavimo ciklas

Nauji plėtiniai atitinka **Funkcijų gyvavimo ciklą**: ...

  1. Peržiūros vardų erdvė – Nauji plėtiniai pirmiausia pasiekiami peržiūros vardų erdvėje ankstyvam testavimui.
  2. „TestEngine“ vardų erdvė – Po patvirtinimo plėtiniai perkeliami į pagrindinę „TestEngine“ vardų erdvę

Išplėtimo modelio privalumai

Išplėtimo modelis suteikia reikšmingų privalumų:

  • Standartizacija - „Microsoft“ pasirašyti komponentai užtikrina nuoseklią kokybę ir saugumą
  • Inovacijos – open source modelis leidžia diegti bendruomenės skatinamas inovacijas
  • Lankstumas – organizacijos gali kurti specializuotus plėtinius unikaliems poreikiams
  • Integracija – Svarstoma, ar vertingi plėtiniai gali būti įtraukti į oficialų produktą