Test driven utveckling för landnings zoner i AzureTest-driven development for landing zones in Azure

Som beskrivs i föregående artikel om test driven Development (TDD) för landnings zonerbörjar TDD-cykler med ett test som validerar godkännande kriterierna för en speciell funktion som krävs för att leverera moln implementerings planen.As outlined in the previous article on test-driven development (TDD) for landing zones, TDD cycles begin with a test that validates the acceptance criteria of a specific feature required to deliver the cloud adoption plan. Att utöka eller omväga landnings zonen kan sedan testas för att kontrol lera att godkännande kriterierna har uppfyllts.Expanding or refactoring the landing zone can then be tested to validate that the acceptance criteria have been met. Den här artikeln beskriver en molnbaserad verktygskedjan i Azure för att automatisera test drivna utvecklings cyklar.This article outlines a cloud-native toolchain in Azure to automate test-driven development cycles.

Azure-verktyg för att stödja landnings zoner TDD-cyklerAzure tools to support landing zone TDD cycles

Test drivna utvecklings verktyg i Azure

Bild 1: test drivna utvecklings verktyg i Azure.Figure 1: Test-driven development tools in Azure.

Verktygskedjan av Azure-inhemska styrnings produkter och-tjänster kan enkelt integreras i test driven utveckling för att skapa landnings zoner.The toolchain of Azure-native governance products and services can be easily integrated into test-driven development for the creation of landing zones. Vart och ett av dessa verktyg har ett specifikt syfte, vilket gör det enklare att utveckla, testa och distribuera din landnings zon i en justering med TDD-cykler.Each of these tools serves a specific purpose, making it easier to develop, test, and deploy your landing zone in alignment with TDD cycles.

Microsoft-medföljande mallar för testning och distribution för att påskynda TDDMicrosoft-provided test and deployment templates to accelerate TDD

Följande exempel tillhandahålls av Microsoft för styrnings syfte.The following examples are provided by Microsoft for governance purposes. Varje kan användas som ett test eller en serie tester i en test driven utvecklings cykel för landnings zoner.Each can be used as a test or series of tests in a test-driven development cycle for landing zones. I följande avsnitt finns mer information om varje verktyg:The following sections provide more information on each tool:

  • Azure-ritningar innehåller olika skiss exempel, inklusive principer för testning och mallar för distribution.Azure Blueprints provides various blueprint samples, including policies for testing and templates for deployment. Dessa skiss exempel kan påskynda utveckling, distribution och testning av ansträngningar i TDD-cykler.These blueprint samples can accelerate development, deployment, and testing efforts in TDD cycles.
  • Azure Policy innehåller även inbyggda princip initiativsom kan användas för att testa och upprätthålla en fullständig definition av den som är gjord för en landnings zon.Azure Policy also includes built-in policy initiatives, which could be used to test and enforce the full definition of done for a landing zone. Azure Policy innehåller inbyggda princip definitioner som kan uppfylla enskilda godkännande kriterier i definitionen av färdig.Azure Policy includes built-in policy definitions that can meet individual acceptance criteria within the definition of done.
  • Azure Graph innehåller avancerade fråge exempelsom kan användas för att förstå hur arbets belastningarna distribueras i en landnings zon för avancerade testnings scenarier.Azure Graph includes advanced query samples, which can be used to understand how the workloads are deployed within a landing zone for advanced testing scenarios.
  • I Azures snabb starts mallar finns mallar för källkod som hjälper till att påskynda landnings zon och arbets belastnings distribution.Azure quickstart templates provides of source code templates to aid in accelerating landing zone and workload deployment.

De exempel som anges ovan kan användas som verktyg för att påskynda TDD-cykler.The examples listed above can be used as tools for accelerating TDD cycles. De körs på styrnings verktygen i följande avsnitt och gör det möjligt för moln plattforms team att skapa egna käll koder och tester.They run on the governance tools in the following sections and allow cloud platform teams to create their own source code and tests.

Azures styrnings verktyg som kan påskynda TDD-cyklerAzure governance tools that can accelerate TDD cycles

Azure policy: när distributioner eller försök till distributioner avviker från styrnings principer kan Azure policy tillhandahålla automatiserad identifiering, skydd och upplösning.Azure Policy: When deployments or attempted deployments deviate from governance policies, Azure Policy can provide automated detection, protection, and resolution. Men Azure Policy också tillhandahålla den primära mekanismen för att testa godkännande kriterier i definitionen av färdig.But Azure Policy also provides the primary mechanism for testing acceptance criteria in your definition of done. I en TDD-cykel kan en princip definition skapas för att testa ett enda godkännande villkor.In a TDD cycle, a policy definition can be created to test a single acceptance criteria. På samma sätt kan alla godkännande kriterier läggas till i ett princip initiativ som har tilldelats till hela prenumerationen.Likewise, all acceptance criteria can be added to a policy initiative assigned to the entire subscription. Den här metoden ger en mekanism för röda tester innan du ändrar landnings zonen.This approach provides a mechanism for red tests before modifying the landing zone. När landnings zonen uppfyller definitionen av färdig kan den användas för att tillämpa test kriterierna för att undvika kod ändringar som skulle orsaka att testet inte fungerar i framtida versioner.Once the landing zone meets the definition of done, it can be used to enforce the test criteria to avoid code changes that would cause the test to fail in future releases.

Azure-ritningar: Azure skiss grupper principer och andra distributions verktyg i ett repeterbart paket som kan tilldelas till flera landnings zoner.Azure Blueprints: Azure blueprint groups policies and other deployment tools into a repeatable package that can be assigned to multiple landing zones. Skisserna är användbara när flera implementerings ansträngningar delar gemensamma definitioner av klar, som du kanske vill uppdatera med tiden.Blueprints prove useful when multiple adoption efforts share common definitions of done, which you may want to update over time. Det kan också hjälpa till med distributionen under efterföljande åtgärder för att expandera och återkallas landnings zoner.It can also help with deployment during subsequent efforts to expand and refactor landing zones.

Azure Resource Graph: resurs diagram innehåller ett frågespråk för att skapa data drivna tester baserat på information om de till gångar som distribuerats i en landnings zon.Azure Resource Graph: Resource Graph provides a query language for creating data-driven tests based on information about the assets deployed within a landing zone. Senare i implementerings planen kan det här verktyget också definiera komplexa tester baserat på interaktionerna mellan arbets belastnings till gångar och den underliggande moln miljön.Later in the adoption plan, this tool can also define complex tests based on the interactions between workload assets and the underlying cloud environment.

Azure Resource Manager mallar: de här mallarna tillhandahåller den primära käll koden för alla miljöer som distribueras i Azure.Azure Resource Manager templates: These templates provide the primary source code for any environment deployed in Azure. Vissa verktyg från tredje part som terraform genererar egna ARM-mallar, som sedan skickas till Azure Resource Manager.Some third-party tools like Terraform generate their own ARM templates, which are then submitted to Azure Resource Manager.

Azure Resource Manager: Resource Manager tillhandahåller en konsekvent plattform för att bygga och distribuera funktioner.Azure Resource Manager: Resource Manager provides a consistent platform for build and deploy functions. Den här plattformen kan distribuera landnings zoner baserat på käll kods definitioner.This platform can deploy landing zones based on source code definitions.

Nästa stegNext steps

Om du vill börja omplanering av din första landnings zon utvärderar du grundläggande aspekter i landnings zonen.To begin refactoring your first landing zone, evaluate basic landing zone considerations.