-
Notifications
You must be signed in to change notification settings - Fork 1
Integration Oracle Extension
The TestTrackingDiagrams.Extensions.Oracle package adds Oracle operation tracking to your test diagrams using a DbConnection wrapping decorator pattern.
Why wrapping? Like SQLite,
Oracle.ManagedDataAccess.Coredoes not emitDiagnosticSourceevents. This extension wrapsOracleConnectionwithTrackingOracleConnection, which intercepts all command executions and transaction operations.
TrackingOracleConnection wraps a real OracleConnection and returns TrackingOracleCommand instances that intercept all 6 execution methods (ExecuteReader/NonQuery/Scalar × sync/async). TrackingOracleTransaction intercepts Begin/Commit/Rollback. All intercepted operations are classified by UnifiedSqlClassifier and logged to RequestResponseLogger.
dotnet add package TestTrackingDiagrams.Extensions.Oracleservices.AddOracleTestTracking(options =>
{
options.Verbosity = SqlTrackingVerbosityLevel.Detailed;
});This decorates all DbConnection registrations with a type-check guard — only OracleConnection instances are wrapped; others pass through unchanged.
var inner = new OracleConnection("...");
var tracked = inner.WithTestTracking(new OracleTrackingOptions
{
Verbosity = SqlTrackingVerbosityLevel.Detailed
});
await tracked.OpenAsync();
// Use tracked as your DbConnection...| Property | Default | Description |
|---|---|---|
ServiceName |
"Oracle" |
Participant name in diagrams |
Verbosity |
Detailed |
Raw, Detailed, or Summarised
|
LogSqlText |
false |
Include full SQL text in Detailed mode |
LogParameters |
false |
Include parameter values |
DependencyCategory |
"Oracle" |
Controls participant shape/colour |
UriScheme |
"oracle" |
URI scheme in diagram URIs |
All options inherit from SqlTrackingOptionsBase.
| Level | Arrow label | URI |
|---|---|---|
| Raw | Full SQL text | oracle://host/database |
| Detailed | SELECT FROM Users |
oracle://host/database/Users |
| Summarised | SELECT |
oracle:///database/Users |
TrackingOracleTransaction logs BEGIN TRANSACTION, COMMIT, and ROLLBACK operations automatically. These appear as separate arrows in the sequence diagram.
Getting Started
Common Tasks
Integration Guides
- Integration xUnit3
- Integration xUnit2
- Integration NUnit
- Integration MSTest
- Integration TUnit
- Integration BDDfy xUnit3
- Integration LightBDD xUnit2
- Integration LightBDD xUnit3
- Integration LightBDD TUnit
- Integration ReqNRoll xUnit2
- Integration ReqNRoll xUnit3
- Integration ReqNRoll TUnit
Extensions
- Integration AtlasDataApi Extension
- Integration BigQuery Extension
- Integration Bigtable Extension
- Integration BlobStorage Extension
- Integration ClickHouse Extension
- Integration CloudStorage Extension
- Integration CosmosDB Extension
- Integration Dapper Extension
- Integration DynamoDB Extension
- Integration EF Core Relational Extension
- Integration Elasticsearch Extension
- Integration EventBridge Extension
- Integration EventHubs Extension
- Integration Grpc Extension
- Integration Kafka Extension
- Integration MassTransit Extension
- Integration MongoDB Extension
- Integration MySqlConnector Extension
- Integration Npgsql Extension
- Integration Oracle Extension
- Integration PubSub Extension
- Integration Redis Extension
- Integration S3 Extension
- Integration ServiceBus Extension
- Integration SNS Extension
- Integration Spanner Extension
- Integration SqlClient Extension
- Integration Sqlite Extension
- Integration SQS Extension
- Integration StorageQueues Extension
- Integration OpenTelemetry Extension
- Integration DispatchProxy Extension
- Integration MediatR Extension
- Integration PlantUML IKVM
Configuration
- Tracking Dependencies
- Tracking Custom Dependencies
- HTTP Tracking Setup
- Report Configuration
- Diagram Customisation
- Phase-Aware Tracking
- Content Formatting
- PlantUML Server Configuration
Features
- Generated Reports
- Search Syntax
- Component Diagrams
- PlantUML Browser Rendering
- Inline SVG Rendering
- Internal Flow Tracking
- Tags and Attributes
- Excluding Requests
- Excluded Headers
- Multi-Host Test Architectures
- Event-Driven Architecture Testing
- Service Bus Tracking Patterns
- Background Thread Correlation
- Parallel-Safe Background Correlation
- Event & Message Tracking
- Assertion Tracking
- Step Tracking
- Tabular Attributes
- Large Response and Diagram Handling
- Diagnostics and Debugging
- CI Summary Integration
- CI Artifact Upload
- Merging Parallel Reports
Reference