Announcing: MB-820 Exam Cram Book #3 – Business Central Performance Toolkit – Complete Guide

Performance Toolkit

Share This Post

🚀 New Resource: Master Performance Testing in Business Central

Performance issues can sink a Business Central implementation faster than almost anything else. Slow page loads frustrate users. Timeouts during critical operations disrupt business. And worst of all? You often don’t discover these problems until after go-live.

I’m excited to announce the release of

Business Central Performance Toolkit: A Complete Guide

A comprehensive resource for developers, consultants, and IT professionals who need to validate and optimize Business Central performance *before* deployment.

Why Performance Testing Matters

Let me share a scenario I’ve seen too many times:

A company goes live with Business Central. Everything works perfectly in testing with 5 users and a small dataset. But on Day 1 of production with 50 concurrent users and years of historical data, sales order posting starts timing out. Users complain about slow response times. The project team scrambles to diagnose issues that should have been caught during testing.

Sound familiar?

The problem: Functional testing validates that features *work correctly*. Performance testing validates that features work *fast enough* under realistic load.

The solution: Microsoft’s Business Central Performance Toolkit (BCPT) – a free, comprehensive framework for load testing and performance validation.

What is the Business Central Performance Toolkit?

BCPT is Microsoft’s official solution for performance testing Business Central. It allows you to:

✅ Write performance tests in AL (Business Central’s programming language)

✅ Simulate up to 500 concurrent users

✅ Measure execution time and SQL query counts

✅ Detect performance regressions by comparing runs

✅ Integrate telemetry with Azure Application Insights

✅ Automate testing in CI/CD pipelines

And it’s completely free – available on AppSource and as a VS Code extension.

What’s Inside the Guide?

I’ve created this comprehensive guide based on Microsoft’s official documentation, real-world implementation experience, and community best practices. Here’s what you’ll learn:

Part 1: Foundations (Pages 1-8)

– Understanding performance vs functional testing

– Common performance issues (N+1 queries, missing indexes, inefficient filtering)

– BCPT architecture and the three components

– Getting started with installation and setup

Part 2: Writing Tests (Pages 9-13)

– Test codeunit structure (normal and Test subtype)

– Using the BCPT Test Context

– Measuring scenarios with StartScenario/EndScenario

– Simulating realistic user behavior with UserWait

– Creating parameterized tests for flexibility

Example code from the guide:

codeunit 50100 "BCPT Create Sales Order"
{
    var
        BCPTTestContext: Codeunit "BCPT Test Context";
    trigger OnRun()
    var
        Customer: Record Customer;
        SalesHeader: Record "Sales Header";
    begin
        Customer.FindFirst();
        BCPTTestContext.StartScenario('Create Sales Header');
        SalesHeader.Init();
        SalesHeader."Document Type" := SalesHeader."Document Type"::Order;
        SalesHeader.Insert(true);
        SalesHeader.Validate("Sell-to Customer No.", Customer."No.");
        SalesHeader.Modify(true);
        BCPTTestContext.EndScenario('Create Sales Header');
        BCPTTestContext.UserWait();  // Simulate user think time
        // Add more scenarios...
    end;
}

Part 3: Configuration & Execution (Pages 14-17)

– BCPT Suite configuration for realistic workloads

– Session distribution and delay settings

– Running tests from VS Code, PowerShell, and command line

– Background vs foreground execution strategies

Part 4: Analysis & Regression Detection (Pages 18-21)

– Understanding key metrics: duration, SQL statements, iterations

– Baseline comparison for regression detection

– SQL statement analysis and query optimization

– Exporting results to Excel and Power BI

– Azure Application Insights integration

Real example from the guide:

“`

Scenario: Create Sales Order

BEFORE Installing Extension:

– Duration: 2.3 seconds

– SQL Statements: 84

AFTER Installing Extension:

– Duration: 2.8 seconds (+21%) ⚠️

– SQL Statements: 102 (+21%) ⚠️

→ Performance regression detected! Investigation needed.

“`

Part 5: Advanced Topics (Pages 22-25)

– Multi-session testing (validating 100+ concurrent users)

– Workload patterns: constant load, ramp-up, spike testing

– Testing with different data volumes

– Performance profiling integration

– CI/CD pipeline automation (GitHub Actions, Azure DevOps)

Part 6: MB-820 Certification Prep

– Key concepts to memorize

– Common exam questions with detailed answers

– 20 practice questions covering all BCPT topics

– Exam-taking strategies

Who Should Read This Guide?

👨‍💻 Developers

Learn to write effective performance tests and integrate BCPT into your development workflow. Catch regressions early, before they reach production.

🏢 ISVs and VARs

Validate that your extensions scale to customer requirements. Use BCPT results to prove performance claims and ensure AppSource certification readiness.

👔 Consultants

Perform pre-go-live performance validation and capacity planning. Give customers confidence that their Business Central environment can handle expected loads.

📊 Project Managers

Understand performance requirements, plan infrastructure, and set realistic expectations with stakeholders using data-driven metrics.

🎓 MB-820 Candidates

The guide includes comprehensive MB-820 exam preparation with 20 practice questions, key concepts, and exam tips.

Real-World Examples

The guide includes multiple real-world scenarios:

Example 1: Extension Impact Analysis

An ISV develops an “Advanced Shipping” extension. Using BCPT, they discover their extension increases warehouse shipment creation time by 87% due to an N+1 query pattern. After optimization with caching, impact reduced to acceptable +20%.

Example 2: Version Upgrade Testing

A customer wants to upgrade from BC 24.5 to BC 25.0. Running identical BCPT suites on both versions reveals:

– Most scenarios improved (🎉)

– Purchase posting regressed +14% (⚠️ needs investigation)

– Overall verdict: Safe to upgrade with monitoring

Example 3: CI/CD Integration

Complete GitHub Actions workflow that runs BCPT on every pull request, comments results directly on the PR, and fails builds if regression exceeds 25%.

What Makes This Guide Different?

Practical & Hands-On: Real code examples, not just theory

Comprehensive: From beginner basics to advanced CI/CD integration

Real-World Focused: Based on actual production scenarios

Exam-Aligned: MB-820 certification preparation included

Code Samples: All examples use real BC AL code

Troubleshooting: Solutions to common problems

Key Features

📖 111 Pages of comprehensive content

💻 4 Hands-On Exercises with step-by-step instructions

20 Practice Questions with detailed answers

🔍 Real-World Examples from production scenarios

CI/CD Templates for GitHub Actions and Azure DevOps

📊 Power BI Integration for telemetry analysis

📚 Performance Glossary with key terms

Getting Started

The guide follows a progressive learning path:

Week 1: Understand the fundamentals and install BCPT

Week 2: Write your first test scenarios

Week 3: Configure and run multi-session tests

Week 4: Analyze results and detect regressions

By the end, you’ll be confident in:

– Writing effective performance tests in AL

– Simulating realistic user workloads

– Detecting performance regressions early

– Optimizing SQL query performance

– Integrating BCPT into your DevOps workflows

Sample Exercise: Creating Your First Test

The guide includes 4 hands-on exercises. Here’s a preview of Exercise 1:

Objective: Create a basic BCPT test that creates a customer

Steps:

1. Create a new AL extension project

2. Create a test codeunit with proper structure

3. Use BCPTTestContext to measure operations

4. Publish to your sandbox

5. Configure a BCPT Suite

6. Run and analyze results

Expected Outcome:

– Test completes successfully (100% success rate)

– Duration < 500ms

– SQL statements < 20

The guide walks you through every step with complete code examples.

MB-820 Exam Preparation

For certification candidates, the guide includes a dedicated section with:

Key Concepts to Memorize

– BCPT is free, works only in sandbox/Docker (not production)

– Maximum 500 concurrent sessions

– Maximum 240 minutes duration

– Requires “BC PERF. TOOLKIT” permission set

Common Exam Questions

– Q: What is the maximum duration for a BCPT suite?

– A: 240 minutes (4 hours)

[Plus 19 more practice questions with detailed explanations]

Real Exam Scenarios

– How to measure extension impact

– Detecting performance regressions

– Configuring multi-user load tests

Why I Created This Guide

Over my years working with Business Central, I’ve seen the same pattern repeat: teams focus entirely on functional testing and only discover performance issues after go-live. BCPT is an incredibly powerful tool, but many developers and consultants don’t know it exists or how to use it effectively.

Microsoft’s official documentation is excellent but scattered across multiple articles. I wanted to create a single, comprehensive resource that takes you from “What is BCPT?” to “I’m integrating performance testing into my CI/CD pipeline.”

This guide represents hundreds of hours of research, testing, and real-world implementation experience, distilled into a practical learning path.

## Download Your Copy

Ready to master performance testing in Business Central?

📥 [Download the Complete Guide]

📘

Leanpub: https://leanpub.com/mb820examcramBCPT

📱

Kindle: https://www.amazon.com/dp/B0GGHHWBJG

📘

Amazon: https://www.amazon.com/dp/B0GGYJ4X9R

The guide is available in PDF format, optimized for both reading on screen and printing. All code examples are formatted for easy copy-paste into Visual Studio Code.

Pricing

What you get:

✅ 25+ page comprehensive guide (PDF)

✅ 4 hands-on exercises with solutions

✅ 20 practice questions for MB-820

✅ Complete code samples

✅ CI/CD pipeline templates

✅ Lifetime updates

Resources

Free Resources:

https://learn.microsoft.com/en-us/dynamics365/business-central/dev-itpro/developer/devenv-performance-toolkit

https://github.com/microsoft/ALAppExtensions/tree/main/Other/Tests/BCPT-SampleTests

– My YouTube Video: BCPT Quick Start: 🌟 Let’s pass MB-820 – Episode 3🌟 Getting Started with Performance Toolkit

Let’s Connect

Questions about the guide? Want to discuss performance testing strategies?

📧 Email: Silviu@svirlan.com

💼 LinkedIn: www.linkedin.com/in/silviuvirlan

🐦 Twitter/X: Silviu Virlan | Microsoft MVP | MCT (@SilviuVirlan_Ca) / X

📺 YouTube: Business Central Musings – YouTube

Final Thoughts

Performance testing isn’t optional anymore. With Business Central increasingly moving to SaaS and customers expecting cloud-level responsiveness, validating performance before go-live is critical.

The Business Central Performance Toolkit gives you the tools. This guide gives you the knowledge to use them effectively.

Stop discovering performance issues in production. Start testing with confidence.

📘

Leanpub: https://leanpub.com/mb820examcramBCPT

📱

Kindle: https://www.amazon.com/dp/B0GGHHWBJG

📘

Amazon: https://www.amazon.com/dp/B0GGYJ4X9R

Happy testing! 🚀

#BusinessCentral #Dynamics365 #PerformanceTesting #BCPT #MB820 #AppSource #AL #DevOps

Share This Post

Related Articles

Leave a Reply

Recent Posts

Get Notified About New Posts

Categories

Discover more from Business Central Musings

Subscribe now to keep reading and get access to the full archive.

Continue reading