UnitTestExecutor sınıfı

Bu sınıf, tek kiracılı Azure Logic Apps'te Standart mantıksal uygulama iş akışları için birim testleri çalıştırma işlevselliği sağlar. sınıfı, sahte veriler ve özel yapılandırmalarla iş akışı testlerini çalıştırmak için ana giriş noktası görevi görür.

Namespace

Microsoft.Azure.Workflows.UnitTesting

Kullanım

sınıfını UnitTestExecutor kullanarak iş akışı tanımlarını yükleyebilir ve test verilerini kullanarak iş akışlarını çalıştırabilirsiniz:

// Initialize with workflow file path
var executor = new UnitTestExecutor("path/to/workflow.json");

// Initialize with all configuration files
var executor = new UnitTestExecutor(
    workflowFilePath: "path/to/workflow.json",
    connectionsFilePath: "path/to/connections.json",
    parametersFilePath: "path/to/parameters.json",
    localSettingsFilePath: "path/to/local.settings.json"
);

// Execute workflow with test mocks
var testMock = new TestMockDefinition
{
    TriggerMock = new TriggerMock { /* trigger configuration */ },
    ActionMocks = new List<ActionMock> { /* action mocks */ }
};

var result = await executor.RunWorkflowAsync(testMock);

Kurucular

UnitTestExecutor(dize, dize, dize, dize)

İş akışı ve yapılandırma dosyalarını kullanarak sınıf için UnitTestExecutor yeni bir örnek başlatır.

Parametreler

İsim Türü Açıklama Gerekli
workflowFilePath String İş akışı tanım dosyasının yolu Evet
connectionsFilePath String Bağlantılar yapılandırma dosyasının yolu Hayı
parametersFilePath String Parametreler yapılandırma dosyasının yolu Hayı
localSettingsFilePath String Yerel ayarlar dosyasının yolu Hayı

Örnek

var executor = new UnitTestExecutor(
    workflowFilePath: "MyWorkflow/workflow.json",
    connectionsFilePath: "MyWorkflow/connections.json",
    parametersFilePath: "MyWorkflow/parameters.json",
    localSettingsFilePath: "local.settings.json"
);

Özellikler

WorkflowSettings

İş akışı tanımı ayarları.

Mülkiyet Türü Açıklama Gerekli
WorkflowSettings TestWorkflowSettings İş akışı testi yürütme için yapılandırma ayarları Evet

Yöntemler

RunWorkflowAsync(TestMockDefinition, string, int)

Belirtilen sahte tetikleyici ve sahte eylemle sağlanan yapılandırma dosyalarını kullanarak bir iş akışı yürütür.

Parametreler

İsim Türü Açıklama Gerekli Varsayılan
testMock TestMockDefinition Sahte tetikleyiciyi ve sahte eylemi içeren test sahte tanımı Evet -
customCodeFunctionFilePath String Özel kod işlev dosyasının yolu Hayı sıfır
timeoutInSeconds Int Saniyeler içinde zaman aşımı yapılandırması Hayı DefaultUnitTestTimeoutSeconds

İade

Task<TestWorkflowRun>: İş akışı çalıştırma sonucunu döndüren zaman uyumsuz işlemi temsil eden görev.

Örnek

var testMock = new TestMockDefinition
{
    TriggerMock = new TriggerMock
    {
        Kind = "Http",
        Outputs = new
        {
            body = new { message = "Test message" },
            statusCode = 200
        }
    },
    ActionMocks = new List<ActionMock>
    {
        new ActionMock
        {
            ActionName = "Send_an_email",
            Kind = "Office365Outlook",
            Outputs = new { status = "success" }
        }
    }
};

// Run with default timeout
var result = await executor.RunWorkflowAsync(testMock);

// Run with custom timeout and custom code
var result = await executor.RunWorkflowAsync(
    testMock: testMock,
    customCodeFunctionFilePath: "path/to/custom-functions.js",
    timeoutInSeconds: 120
);