KaizenReport.Kensho.MSTest
0.3.0
dotnet add package KaizenReport.Kensho.MSTest --version 0.3.0
NuGet\Install-Package KaizenReport.Kensho.MSTest -Version 0.3.0
<PackageReference Include="KaizenReport.Kensho.MSTest" Version="0.3.0" />
<PackageVersion Include="KaizenReport.Kensho.MSTest" Version="0.3.0" />
<PackageReference Include="KaizenReport.Kensho.MSTest" />
paket add KaizenReport.Kensho.MSTest --version 0.3.0
#r "nuget: KaizenReport.Kensho.MSTest, 0.3.0"
#:package KaizenReport.Kensho.MSTest@0.3.0
#addin nuget:?package=KaizenReport.Kensho.MSTest&version=0.3.0
#tool nuget:?package=KaizenReport.Kensho.MSTest&version=0.3.0
KaizenReport.Kensho.MSTest
VSTest logger that emits the canonical Kensho v1 JSON
format. Picked up automatically by dotnet test --logger kensho once
the package is installed.
Install
dotnet add package KaizenReport.Kensho.MSTest
That's it — no source-level wiring. The package registers an
ITestLoggerWithParameters extension under the friendly name kensho,
so VSTest discovers it during test discovery.
Run
dotnet test --logger kensho
# => kensho-results/run.json + kensho-results/cases/*.json
# Or with parameters:
dotnet test --logger 'kensho;ProjectName=Cart Service;ProjectSlug=cart-service'
npx kensho generate
npx kensho open
Configuration
Logger parameters (--logger 'kensho;Param=value;...') or env vars:
| Param | Env var | Effect |
|---|---|---|
Output |
KENSHO_OUTPUT |
Output dir (default: ./kensho-results) |
ProjectName |
KENSHO_PROJECT_NAME |
Project name in run.json |
ProjectSlug |
KENSHO_PROJECT_SLUG |
Project slug |
RunId |
KENSHO_RUN_ID |
Override the auto-generated run id |
Mapping MSTest → Kensho
| MSTest | Kensho |
|---|---|
[TestMethod] |
One case |
[DataRow(...)] / [DataTestMethod] |
One case per row, args in case.parameters[] |
[DynamicData(...)] |
One case per yielded row |
[Priority(0)] |
case.severity = "blocker" |
[Priority(1)] |
case.severity = "critical" |
[Priority(2)] |
case.severity = "normal" |
[Priority(3)] |
case.severity = "minor" |
[TestProperty("severity","critical")] |
case.severity |
[Description("...")] |
case.description |
[Owner("alice")] |
case.owner |
[TestCategory("severity:blocker")] |
case.severity |
[TestCategory("feature:Cart")] |
case.behavior.feature |
[TestCategory("epic:Checkout")] |
case.behavior.epic |
[TestCategory("story:...")] |
case.behavior.scenario |
[TestCategory("smoke")] (un-prefixed) |
case.tags[] |
[TestProperty("Feature","Cart")] |
case.behavior.feature |
Passed |
pass |
Failed |
fail |
Skipped |
skip |
NotFound / None |
broken |
TestContext.WriteLine / stdout / stderr |
case.logs[] |
TestContext.AddResultFile(...) |
case.attachments[] |
Helper API
Use the same KaizenReport.Kensho.Core.Kensho helpers from inside a test
to add steps / attachments / labels / links — see
KaizenReport.Kensho.Core.
using KaizenReport.Kensho.Core;
[TestMethod]
public void Login_redirects_to_home()
{
using (Kensho.Step("open the login page"))
Page.Goto("/login");
using (Kensho.Step("submit credentials"))
{
Page.Fill("#user", "demo");
Page.Click("text=Sign in");
}
Kensho.Label("team", "growth");
Kensho.Link("https://jira.example.com/browse/PROJ-123",
kind: "jira", label: "PROJ-123");
Kensho.Attach("/tmp/login.png", kind: "screenshot");
}
License
Apache-2.0.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- KaizenReport.Kensho.Core (>= 0.3.0)
- Microsoft.TestPlatform.ObjectModel (>= 17.8.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.