Unplanned
Last Updated: 06 Aug 2020 14:20 by ADMIN

The test run is aborted when a .testsettings is used for executing JustMock tests. The .testsettings contains only a description.

<?xml version="1.0" encoding="UTF-8"?>
<TestSettings name="Local" id="15694c75-be1c-4113-9d42-2cbe1013c41c" xmlns="http://microsoft.com/schemas/VisualStudio/TeamTest/2010">
  <Description>These are default test settings for a local test run.</Description>
</TestSettings>

It seems that the usage of the MSTest element is breaking the execution. As .testsettings are deprecated use .runsettings instead without MSTest element.

Unplanned
Last Updated: 04 Aug 2020 11:28 by ADMIN

I am unable to debug my unit test .NET project. I keep getting several of these errors, and it is super slow as code tries to execute every line. I have rebooted and restarted VS 2019 several times, reinstalled JustMock but the error won't go away.

Visual Studio Output windows shows following repeated errors:

Exception thrown calling IDebugWindowPlugin plugin: System.NullReferenceException: Object reference not set to an instance of an object.

   at Telerik.JustMock.Plugins.ObjectInfo.FromObject(Object value)
   at Telerik.JustMock.Core.MocksRepository.<>c.<DispatchInvocation>b__51_2(Object arg)
   at System.Linq.Enumerable.WhereSelectArrayIterator`2.MoveNext()
   at System.Linq.Buffer`1..ctor(IEnumerable`1 source)
   at System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)
   at Telerik.JustMock.Core.MocksRepository.DispatchInvocation(Invocation invocation)
Unplanned
Last Updated: 30 Jul 2020 09:21 by ADMIN

I have a class, which has a private async method, which has a local function, like the following example

 

internal class TestClass

{

 ......

        private async Task<bool> TestPrivateMethod()
        {
            var x = await TestLocalFunction();
            return x;

            async Task<bool> TestLocalFunction()
            {
                await Task.Delay(5);
                return true;
            }
 }

 

When I try to mock the local function, thows an error "System.MissingMemberException : C# 7 local function 'TestLocalFunction' with the given signature was not found inside method 'TestPrivateMethod'"

 

var testClassInstance = Mock.Create<TestClass>(Behavior.CallOriginal);

Mock.Local.Function.Arrange<Task<bool>>(testClassInstance, "TestPrivateMethod", "TestLocalFunction").Returns(Task.FromResult(true));

 

Unplanned
Last Updated: 20 Jul 2020 09:41 by ADMIN

Having the following COM interop class

[ClassInterface(ClassInterfaceType.None)]
[Guid("86332C4E-0BDE-46EC-94C5-0A946C33C682")]
[TypeLibType(TypeLibTypeFlags.FCanCreate)]
public class MyComObjectClass : IMyComObject, MyComObject
{
    public MyComObjectClass();

    [DispId(1)]
    public virtual string Echo(string message);
}

and the sample class that uses it:

public class MyComObjectClassProxy
{
    public string Echo(string message)
    {
        IMyComObject itf = null;
        try
        {
            itf = new MyComObjectClass();
            return itf.Echo(message);
        }
        finally
        {
            if (itf != null)
            {
                Marshal.ReleaseComObject(itf);
            }
        }
    }
}

When I try to call the arranged constructor I am getting an error "Cannot create instances of type requiring managed activation", the unit test code:

[TestMethod]
public void TestMethod1()
{
    var mock = Mock.Create<MyComObjectClass>();
    Mock.Arrange(() => new MyComObjectClass()).Returns(mock);

    var sut = new MyComObjectClassProxy();
    var actual = sut.Echo("Message");

    Assert.AreEqual(string.Empty, actual);
}
Unplanned
Last Updated: 15 Jul 2020 10:04 by ADMIN
Created by: Mihail
Comments: 0
Type: Bug Report
0

When a breakpoint is added inside an async test that uses JustMock the debugger is failing to hit it. 

To reproduce the issue follow the next steps:

1. Open the attached project

2. Create a breakpoint at the first arrangement in the async test method.

3. Start debugging the async test

Result: the breakpoint is not hit.

The issue is observed for both .NET Core and .NET Framework.

Unplanned
Last Updated: 13 Jul 2020 09:23 by ADMIN

Integration with Visual Studio Enterprise Code Coverage does not work if the project refers Microsoft.NET.Test.Sdk package version 16.3 (and above). The test run fails with exception:

Telerik.JustMock.Core.ElevatedMockingException : Cannot mock '<type to mock goes here>'. The profiler must be enabled to mock, arrange or execute the specified target.
    Detected active third-party profilers:
    * C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Team Tools\Dynamic Code Coverage Tools\amd64\covrun64.dll (from process environment)
    Disable the profilers or link them from the JustMock configuration utility. Restart the test runner and, if necessary, Visual Studio after linking.

 

Unplanned
Last Updated: 24 Jun 2020 09:22 by ADMIN
The exception description does not clearly state that there is an issue with the member which is a target of the mocking which could easily lead to confusion. Attached sample project reproducing the issue.
Completed
Last Updated: 22 Jun 2020 11:12 by ADMIN
Debug Window affects performance in local test run when not debugging. The expected behavior is the Debug Window to not be loaded in this scenario.
In Development
Last Updated: 04 Jun 2020 10:06 by ADMIN
Created by: Robert
Comments: 0
Type: Bug Report
1
The test execution of a test hangs forever. Please see the attached VS 2019 Solution that contains one TestMethod.

R2 2020 is unusable. I reverted back to R1 and there the tests succeed in less than a second.
Completed
Last Updated: 20 May 2020 10:55 by ADMIN
Completed
Last Updated: 24 Mar 2020 16:37 by ADMIN

Hi

When enabling JUSTMOCK Profiler it stops a MS rdlc report to render.

I have attached a simple sample demonstrating the error.

The error that the render gives back is the following.

The definition of this report is not valid or supported by this version of Reporting Services. The report definition may have been created with a later version of Reporting Services, or contain content that is not well-formed or not valid based on Reporting Services schemas. Details: Deserialization failed: An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B) Line 2, position 2.

I have tried to different target version of the .NET framework 4.5.2; 4.6.2, different platform targets "ANY,x86,x64", different VS IDE "2012, 2015", different Microsoft.ReportViewer.WinForm  ver. 11,12,14

Completed
Last Updated: 24 Mar 2020 16:25 by ADMIN
Having a sample configuration:
<DataCollector friendlyName="Code Coverage Wrapper">
  <Configuration>
    <SinkDataCollector friendlyName="Code Coverage" IsLinked="true" />
  </Configuration>
</DataCollector>
Currently, the attribute names are not consistent in the naming convention which might lead to errors.
Unplanned
Last Updated: 21 Feb 2020 11:53 by ADMIN
Created by: Toshio
Comments: 0
Type: Bug Report
0
An attempt to use future mocking fails. The attached sample demonstrates the issue.
Completed
Last Updated: 20 Feb 2020 07:05 by ADMIN

Hello,

According to the JustMock documentation, to validate a method on the mock was called it should be done like so:

[TestMethod] 
public void ShouldThrowExceptionWhenMustBeCalledSetupIsNeverInvoked() 
{ 
    // Arrange 
    var foo = new Foo(); 

    Mock.Arrange(() => foo.Execute()).MustBeCalled(); 

    // Assert 
    Assert.Throws<AssertFailedException>(() => Mock.Assert(foo)); 
}

When I do that, the application fails to compile saying the type AssertFailedException does not exist, even though I have the using statement for the Telerik.JustMock assembly at the top of my file. If I try to fully qualify it like so:

Assert.Throws<Telerik.JustMock.Xunit.AssertFailedException>

I get the same message for the "Xunit" namespace.

I know that the type should exist since when I run the test asserting a different type of Exception, the test fails saying it expects an exception of type Telerik.JustMock.Xunit.AssertFailedException.

I am attaching a couple of images that illustrate the problem.

Thank you.

 

Completed
Last Updated: 20 Feb 2020 07:04 by ADMIN
When I try to create a new JustMock test project for .NET Framework the version of .NET Framework that I select is not respected. The result is that the used version of .NET Framework is always 4.5.2
Completed
Last Updated: 20 Feb 2020 06:53 by ADMIN

The integration does not work as expected when the tests are run on the command line outside Visual Studio via dotnet test command. The coverage is used as Microsoft.CodeCoverage NuGet package.

 

 
Completed
Last Updated: 05 Feb 2020 10:56 by ADMIN
Asynchronous test execution might be run in a separate thread (it depends of the environment and it is completely transparent) which causes arrangements to lose their context. That is why the expected mocked return value for DateTime.UtcNow calls the original code and finally the test fails.
Completed
Last Updated: 15 Jan 2020 09:58 by ADMIN
The JustMock tests are failing when the "Test platform version" option in the JustMock VSTest v.2 task is set to value "Installed by Tools Installer".
Declined
Last Updated: 05 Dec 2019 15:32 by ADMIN

Visual Studio debugger arrowhead pointer is messed when profiler is enabled with .Net Core 2.1, in VS2107/2019

Steps

  • Use elevated features like static mocking using JustMock
  • Enable profiler from VS JustMock extension
  • Run the test in debug mode

Code Snippet

Mock.SetupStatic(typeof(ElasticOperationsHelper), Behavior.Strict, StaticConstructor.Mocked);

Mock.Arrange(() => elasticRepository.IndexDocumentInElastic<IndexDocText>(Arg.IsAny<IndexDocText>(), Arg.IsAny<string>(), null)).Returns(response);

 

While debugging it's found the arrowhead pointer of VS debugger is messed up and pointing to wrong line numbers. It's quite difficult to develop unit tests at this situation. Is there any resolution of this problem.

I found an article in the support page has been declined due to same problem. Is this totally dependent on "CLR" fix and .Net profiler. If so could you please provide me the Bug details of Microsoft for the same?

I would also like to know why it's necessary to have profiler enabled for scenarios like "Static Mocking", "Non virtual method mocking", "Private Mocking" etc. 

Is this only happening for .Net core? 

Hyland Software is evaluating this product as their Mocking framework for unit testing of all .net core projects.

If there is no solution, how can any prospective customer consider this as a good fit for their usage? If there is any workaround possible at this moment?

Declined
Last Updated: 05 Dec 2019 15:24 by ADMIN
The debugger arrowhead pointer is not positioned to the correct execution line when debugging .Net Core. Stepping the code line by line advances the yellow arrowhead pointer based on the initial offset/messed position. When the arrowhead leaves the method the remaining lines are executed at once.
1 2 3