run-tests

tarafından microsoft

pytest testlerini yerel olarak çalıştırma kılavuzu. Kod değişikliklerini doğrulamak için testleri çalıştırırken bunu kullanın.

npx skills add https://github.com/microsoft/semantic-link-labs --skill run-tests

Running Tests

This skill covers running pytest tests for the Semantic Link Labs project.

When to Use This Skill

Use this skill when you need to:

  • Run unit tests to verify code changes
  • Run specific tests by name
  • Debug failing tests
  • Validate changes before committing

Test Framework

ComponentDetails
Frameworkpytest
Locationtests/ directory
Configurationpyproject.toml

Prerequisites

Install Development Dependencies

# Install package in editable mode with test dependencies
pip install -e ".[test]"

Environment Setup

Create conda environment from environment.yml:

conda env create -f environment.yml
conda activate fabric
pip install -e .

Running Tests

Basic Commands

# Run all tests
pytest -s tests/

# Run with verbose output
pytest -sv tests/

# Run specific test file
pytest -s tests/test_example.py

# Run specific test by name pattern
pytest -s tests/ -k test_my_function

# Run multiple tests by pattern
pytest -s tests/ -k "test_list or test_create"

# Stop on first failure
pytest -sx tests/

Test Discovery

pytest automatically discovers tests in:

  • Files named test_*.py or *_test.py
  • Functions named test_*
  • Classes named Test*

Test Output Options

Verbose Output

# Show test names and results
pytest -v tests/

# Show test names with print statements
pytest -sv tests/

Show Print Statements

The -s flag captures stdout:

# Show print output during tests
pytest -s tests/

Show Test Durations

# Show slowest 10 tests
pytest --durations=10 tests/

Filtering Tests

By Test Name

# Run tests matching pattern
pytest -k "workspace" tests/

# Run tests NOT matching pattern
pytest -k "not slow" tests/

# Combine patterns
pytest -k "workspace and not admin" tests/

By File

# Run specific test file
pytest tests/test_workspaces.py

# Run tests in directory
pytest tests/admin/

Debugging Failed Tests

Stop on First Failure

pytest -x tests/

Enter Debugger on Failure

pytest --pdb tests/

Show Local Variables on Failure

pytest -l tests/

Increase Verbosity

pytest -vvv tests/

Test Structure

Basic Test Example

import pytest
import pandas as pd


def test_my_function_returns_dataframe():
    """Test that my_function returns a DataFrame."""
    from sempy_labs import my_function

    result = my_function()

    assert isinstance(result, pd.DataFrame)


def test_my_function_with_parameter():
    """Test my_function with specific parameter."""
    from sempy_labs import my_function

    result = my_function(workspace="Test Workspace")

    assert not result.empty
    assert "Name" in result.columns

Test with Expected Exception

def test_my_function_raises_on_invalid_input():
    """Test that my_function raises ValueError on invalid input."""
    from sempy_labs import my_function

    with pytest.raises(ValueError, match="Invalid"):
        my_function(invalid_param="bad value")

CI/CD Integration

The project uses GitHub Actions for CI. See .github/workflows/build.yaml:

- name: Test with pytest
  shell: bash -el {0}
  run: |
    pytest -s tests/

Pre-Commit Test Checklist

Before committing code changes:

# Run all tests
pytest -s tests/

# Run tests for modified area
pytest -s tests/ -k relevant_test_pattern

# Check for any failures
# If failures, fix code and re-run

Common Test Issues

Import Errors

If tests fail with import errors:

# Ensure package is installed in editable mode
pip install -e .

Missing Dependencies

If tests fail with missing package:

# Install test dependencies
pip install -e ".[test]"

Environment Issues

If tests behave unexpectedly:

# Recreate conda environment
conda env remove -n fabric
conda env create -f environment.yml
conda activate fabric
pip install -e .

microsoft tarafından daha fazla skill

oss-growth
microsoft
OSS büyüme korsanı kişiliği
agent-framework-azure-ai-py
microsoft
Microsoft Agent Framework Python SDK'sini (agent-framework-azure-ai) kullanarak Azure AI Foundry aracıları oluşturun. AzureAIAgentsProvider ile kalıcı aracılar oluştururken, barındırılan araçları (kod yorumlayıcı, dosya arama, web araması) kullanırken, MCP sunucularını entegre ederken, konuşma iş parçacıklarını yönetirken veya akış yanıtları uygularken kullanın. Fonksiyon araçlarını, yapılandırılmış çıktıları ve çok araçlı aracıları kapsar.
development
airunway-aks-setup
microsoft
AI Runway'ı AKS üzerinde kurun — çıplak kümeden çalışan modele kadar. Küme doğrulama, denetleyici kurulumu, GPU değerlendirmesi, sağlayıcı yapılandırması ve ilk dağıtımı kapsar. NE ZAMAN: "AI Runway kur", "AKS kümesini onboard et", "AI Runway yükle", "airunway kurulumu", "AKS'e model dağıt", "AKS üzerinde GPU çıkarımı", "AKS üzerinde KAITO kurulumu", "AKS üzerinde LLM çalıştır", "AKS üzerinde vLLM", "AKS üzerinde model sunumu ayarla", "AI Runway denetleyicisi".
devops
appinsights-instrumentation
microsoft
Azure Application Insights ile web uygulamalarını enstrümante etme rehberi. Telemetri desenleri, SDK kurulumu ve yapılandırma referansları sağlar. NE ZAMAN: uygulama nasıl enstrümante edilir, App Insights SDK, telemetri desenleri, App Insights nedir, Application Insights rehberliği, enstrümantasyon örnekleri, APM en iyi uygulamaları.
devops
applicationinsights-web-ts
microsoft
Tarayıcı/web uygulamalarını Application Insights JavaScript SDK'sı (@microsoft/applicationinsights-web) ile izleyin. Gerçek Kullanıcı İzleme (RUM) için kullanın — sayfa görünümleri, tıklamalar, AJAX/fetch bağımlılıkları, özel durumlar, özel olaylar ve arka uç OpenTelemetry izleriyle ilişkilendirilen tarayıcı tarafı GenAI aracı izleri. SDK Loader Script ve npm kurulumunu, çerçeve uzantılarını (React, React Native, Angular), Tıklama Analitiğini, telemetri başlatıcılarını ve tarayıcıdan yayılan aracı/araç/model yayılımları için OTel GenAI anlamsal kurallarını kapsar.
devops
azure-ai-anomalydetector-java
microsoft
Azure AI Anomaly Detector SDK for Java ile anomali tespiti uygulamaları oluşturun. Tek değişkenli/çok değişkenli anomali tespiti, zaman serisi analizi veya yapay zeka destekli izleme uygularken kullanın.
development
azure-ai-language-conversations-py
microsoft
azure-ai-language-conversations Python SDK'sini kullanarak Konuşma Dili Anlama (CLU) uygulayın. ConversationAnalysisClient ile konuşma niyetini ve varlıklarını analiz etmek, NLP özellikleri oluşturmak veya dil anlamayı uygulamalara entegre etmek için kullanın.
development
azure-ai-ml-py
microsoft
Azure Machine Learning SDK v2 for Python. Makine öğrenimi çalışma alanları, işler, modeller, veri kümeleri, bilgi işlem ve iş akışları için kullanın. Tetikleyiciler: "azure-ai-ml", "MLClient", "workspace", "model registry", "training jobs", "datasets".
development