Dalintis per


Bandymo variklio išplečiamumas (peržiūra)

Pastaba.

Peržiūros funkcijos nėra skirtos naudoti gamybai ir gali būti apribotas jų funkcionalumas. Šias funkcijas galima naudoti prieš oficialų išleidimą, kad klientai galėtų gauti ankstyvą prieigą ir pateikti atsiliepimų.

Apžvalga

Power Apps "Test Engine" turi tvirtą išplėtimo sistemą, leidžiančią išplėsti pagrindines testavimo galimybes per įvairius plėtinio 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 etape pac bandomojo paleidimo komanda į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 " - drobės programoms išbandyti Power Apps
  • Modeliu pagrįstų programų teikėjas - modeliu pagrįstų programų testavimui Dataverse
  • Power Fx Teikėjas - savarankiškai vykdyti Power Fx pareiškimus
  • Portalo teikėjas - automatizuoti operacijas 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į:

Atvirojo kodo versijos naudojimas

Bandomasis Power Apps modulis galimas kaip atvirojo kodo projektas 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 naudodamos atvirojo kodo bandomąjį variklį, gali apsvarstyti galimybę sukurti jų plėtinių ištraukimo užklausą, kad jie būtų prieinami oficialiame produkte. Procesas paprastai apima:

  1. Kūrimas – Sukurkite savo plėtinį naudodami atvirojo kodo testavimo variklį
  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 plėtinys patvirtinamas, „Microsoft“ jį pasirašo ir integruoja į produktą.

Š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 Testavimo variklis sukurtas remiantis ` Playwright`, kuris suteikia pagrindą naršyklės automatizavimui. 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ų:

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