Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 7 additions & 1 deletion builds/azure-pipelines/performance.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,13 @@ trigger: none

pr: none

schedules: [ ]
schedules:
- cron: "0 0 * * *"
displayName: Mon-Fri at Midnight
branches:
include:
- release/trigger
always: true

variables:
configuration: 'Release'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,11 @@
</ItemGroup>

<Target Name="CopySamples" AfterTargets="Build">
<ItemGroup>
<_DatabaseItems Include="..\samples\Database\**\*.*" />
</ItemGroup>
<Copy SourceFiles="@(_DatabaseItems)" DestinationFolder="$(OutDir)\Database\%(RecursiveDir)" />
<Message Text="Copied SQL Scripts to $(OutDir)\Database" Importance="high" />
<ItemGroup>
<_CSharpCopyItems Include="..\samples\samples-csharp\bin\$(Configuration)\$(TargetFramework)\**\*.*" />
</ItemGroup>
Expand All @@ -30,6 +35,11 @@
<Link>SqlExtensionSamples\%(RecursiveDir)\%(Filename)%(Extension)</Link>
<Visible>True</Visible>
</None>
<None Include="$(OutDir)\Database\**\*">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
<Link>Database\%(RecursiveDir)\%(Filename)%(Extension)</Link>
<Visible>True</Visible>
</None>
</ItemGroup>

</Project>
17 changes: 16 additions & 1 deletion performance/README.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,31 @@
# Running Performance Tests

## Pre-requisites

The performance tests are based on the IntegrationTestBase class. Follow the instructions to set up the pre-requisites for integration tests [here](../test/README.md#running-integration-tests).

## Run

The performance tests use BenchmarkDotNet to benchmark performance for input and output bindings.

Run the tests from the terminal.
```

### Run all tests

```bash
cd performance
dotnet run -c Release
```

### Run subset of tests

You can also pass in an argument to the test runner to run only a subset of tests. Each argument corresponds to a category of tests (each contained in a single class). See [SqlBindingBenchmark](./SqlBindingBenchmarks.cs) for the full list of arguments.

```bash
cd performance
dotnet run -c Release input
```

## Results

The test results will be generated in the BenchmarkDotNet.Artifacts folder.