ScenarioCert
Practice tests for cloud certifications

Pass your Azure exam the first time.

Exam-realistic scenario questions written by a working cloud architect, with a plain-English explanation of why every wrong answer is wrong. Try 15 questions free. No account needed.

150 original questions Mapped to the official skills outline One-time $24, no subscription
Automate deployment of resources by using Azure Resource Manager (ARM) templates or Bicep files

Brightwater Logistics stores an ARM template in a repository. The template contains the following fragments: "parameters": { "environment": { "type": "string", "allowedValues": [ "dev", "prod" ] } }, "variables": { "storageName": "[concat('bwl', parameters('environment'), uniqueString(resourceGroup().id))]" }, "resources": [ { "type": "Microsoft.Storage/storageAccounts", "apiVersion": "2023-01-01", "name": "[variables('storageName')]", "location": "[resourceGroup().location]", "sku": { "name": "Standard_LRS" }, "kind": "StorageV2" } ] A junior administrator asks how the storage account name is determined when the template is deployed to a resource group named rg-bwl-dev.

How is the storage account name produced?

  1. AThe deployer is prompted for a value for storageName at deployment time.
  2. BThe template concatenates the literal prefix bwl, the environment parameter value, and a hash derived from the resource group ID.
  3. CThe name is taken from the resource group name rg-bwl-dev with the hyphens removed.
  4. DThe name is randomly generated at each deployment, so repeated deployments create new storage accounts.
Why: Reading an ARM template starts with separating the three building blocks: parameters are supplied by the deployer, variables are computed from expressions inside the template, and resources consume both. Here the storage account name is built entirely from a variable expression, so no prompt occurs. The concat() function joins a literal prefix, the parameter value and uniqueString(resourceGroup().id). Because uniqueString is a deterministic hash rather than a random function, the same resource group always yields the same suffix, which is exactly how templates stay idempotent across repeated deployments.

Built the way the real exam thinks

Every question has a scenario, a deciding constraint, and four plausible options. You learn to spot the one detail that changes the answer.

Scenario first

Named companies, named resources, a real constraint such as cost, region or least privilege. Just like the exam.

Timed exam mode

50 questions in 100 minutes, weighted by the official domain percentages, with a scaled score out of 1000.

Explanations that teach

Each option says why it is right or wrong, then a short architect's note on the principle and the trap. Links to the official docs.

Exams

AZ-104

Microsoft Azure Administrator

150 questions5 domainsSkills as of 2026-04-17

AZ-305 and AWS SAA

Next in the queue. Buyers of any exam get an email when a new one ships.

700Scaled score needed to pass. We score the same way so you know where you stand.
5Domains, each weighted like the official outline, each with its own score bar.
$24One payment. Lifetime access to the question bank and every update for that exam.

Questions people ask

Are these real exam questions?

No. Every question is original and written from the public documentation and hands-on experience. Using leaked exam content violates the vendor's candidate agreement and teaches you nothing. Our questions cover the same skills and use the same style, so the real exam feels familiar.

Who writes them?

Ravi Ponnuru who designs and runs Azure environments for a living. Questions are drafted with AI assistance and reviewed for technical accuracy before they are published. See About.

What if I fail?

Email us within 14 days of purchase for a full refund, no questions asked. See Refunds.