Рабочая область, которую вы пытаетесь открыть, несовместима с текущей версией dotMemory.

Я создал новый проект XUnit Tests с целевой платформой .Net 5 с одним тестовым классом.

public class SomeTests
{
    private readonly ITestOutputHelper output;

    public SomeTests(ITestOutputHelper output)
    {
        this.output = output;
        DotMemoryUnitTestOutput.SetOutputMethod(output.WriteLine);
    }

    [Fact]
    [DotMemoryUnit(CollectAllocations = true)]
    public void SomeTest()
    {
        var beforeTestMethodPoint = dotMemory.Check();
        var allocatedArray = new string[10];
        dotMemory.Check(afterTestMethodPoint => Assert.True(afterTestMethodPoint.GetTrafficFrom(beforeTestMethodPoint).AllocatedMemory.SizeInBytes == 0));
    }
}

Установленный пакет NuGet: JetBrains.DotMemoryUnit 3.1.20200127.214830.

После запуска теста (запуск под dotMemory Unit) создается следующий вывод

Xunit.Sdk.TrueException
Assert.True() Failure
Expected: True
Actual:   False
   at TestsDotMemory.SomeTests.<>c__DisplayClass2_0.<SomeTest>b__0(Memory afterTestMethodPoint) in SomeTests.cs:line 25
   at JetBrains.dotMemoryUnit.dotMemory.Check(Action`1 check)
   at TestsDotMemory.SomeTests.SomeTest() in SomeTests.cs:line 25


[dotMemory Unit]: The workspace is saved to "file:///C:/Users/username/AppData/Local/Temp/dotMemoryUnitWorkspace/Run-2021-03-06T10-15-06.288/SomeTest.2021-03-06T10-15-11.629.dmw". (File size: 9 MB)

Когда я нажимаю на ссылку с файлом .dmw, открывается приложение dotmemory

Текущая версия приложения и информация о лицензии

JetBrains dotMemory 2020.3.3 Build 203.0.20210217.101844 built on 2021-02-17
dotMemory 2020.3.20210217.101844
dotMemory 2020.3.3 free trial period is running. 2 days left.

и появится диалоговое окно

The workspace you are trying to open is incompatible with the current dotMemory version. Do you want to open the workspace in a compatible portable dotMemory version?

Если я выберу да, то откроется dotMemory 2019.1.3 с диалогом о том, что информация о лицензии закончилась (у меня лицензия только на 2020.3)

Так почему же dotMemory 2020.3.3 не поддерживает файл .dmw?


person E.Makarchuk    schedule 06.03.2021    source источник


Ответы (1)


Формат файла .dmw часто меняется, чтобы предоставить пользователям новые функциональные возможности. К сожалению, dotMemory Unit создает рабочую область в более старом формате, поскольку новая версия не выпускалась несколько лет. Насколько я вижу, у вас нет лицензии на dotMemory 2020.3, вы используете пробный период. Принимая во внимание, что пробный период для dotMemory 2019.1.3 на вашем компьютере закончился. Платная лицензия на любую версию dotMemory однозначно распространяется на все предыдущие версии.

person Ed Pavlov    schedule 06.03.2021