开发者

Silverlight unit testing. Error while running tests

开发者 https://www.devze.com 2022-12-30 12:16 出处:网络
I\'m using VS2010. Silverlight 4, NUnit 2.5.5, and TypeMock TypemockIsolatorSetup6.0.3.619.msi In the test project MVVM is implemented, PeopleViewModel is a 开发者_如何学运维ViewModel which I want to

I'm using VS2010. Silverlight 4, NUnit 2.5.5, and TypeMock TypemockIsolatorSetup6.0.3.619.msi

In the test project MVVM is implemented, PeopleViewModel is a 开发者_如何学运维ViewModel which I want to test.

Please advise if you use other products for unit testing of MVVM Silverlight. Or please help to win this TypeMock. TIA

This is the code of the test:

[Test]
[SilverlightUnitTest] 
public void SomeTestAgainstSilverlight()
{
    PeopleViewModel o = new PeopleViewModel();
    var res = o.People;

    Assert.AreEqual(15, res.Count());
}

While running the test in ReSharper i get the following error:

TestA.SomeTestAgainstSilverlight : Failed******************************************
*Loading Silverlight Isolation Aspects...*
******************************************

 TEST RESULTS:
---------------------------------------------

    System.MissingMethodException : Method not found: 'hv TypeMock.ArrangeActAssert.Isolate.a(System.Delegate)'.
    at a4.a(ref Delegate A_0)
    at a4.a(Boolean A_0)
    at il.b()
    at CThru.Silverlight.SilverlightUnitTestAttribute.Init()
    at CThru.Silverlight.SilverlightUnitTestAttribute.Execute()
    at TypeMock.MockManager.a(String A_0, String A_1, Object A_2, Object A_3, Boolean A_4, Object[] A_5)
    at TypeMock.InternalMockManager.getReturn(Object that, String typeName, String methodName, Object methodParameters, Boolean isInjected)
    at Tests.TestA.SomeTestAgainstSilverlight() in TestA.cs: line 21

While running test in NUnit i get:

Tests.TestA.SomeTestAgainstSilverlight:
System.DllNotFoundException : Unable to load DLL 'agcore': The specified module could not be found. (Exception from HRESULT: 0x8007007E)

at MS.Internal.XcpImports.Application_GetCurrentNative(IntPtr context, IntPtr& obj)
at MS.Internal.XcpImports.Application_GetCurrent(IntPtr& pApp)
at System.Windows.Application.get_Current()
at ViewModelExample.ViewModel.ViewModelBase.get_IsDesignTime() in C:\Documents and Settings\USER\Desktop\ViewModelExample\ViewModelExample\ViewModel\ViewModelBase.cs:line 20
at ViewModelExample.ViewModel.PeopleViewModel..ctor(IServiceAgent serviceAgent) in C:\Documents and Settings\USER\Desktop\ViewModelExample\ViewModelExample\ViewModel\PeopleViewModel.cs:line 28
at ViewModelExample.ViewModel.PeopleViewModel..ctor() in C:\Documents and Settings\USER\Desktop\ViewModelExample\ViewModelExample\ViewModel\PeopleViewModel.cs:line 24
at Tests.TestA.SomeTestAgainstSilverlight() in C:\Documents and Settings\USER\Desktop\ViewModelExample\Tests\TestA.cs:line 22

UPDATE: I'm not following the question. I've switched to other tools.


This message looks like a mismatched files issue. Try creating a new test project from scratch.

Start by adding references to Typemock.dll and Typemock.ArrangeActAssert.dll. From the CThru directory add both CThru.dll and CThru.Silverlight.dll.

Add a reference to System.Windows (located at C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\Silverlight\v4.0\System.Windows.dll).

Try creating a new test method, and decorate it with SilverlightUnitTest attribute:

using NUnit.Framework;
using CThru.Silverlight;

[TestFixture]
public class SilverlightTest
{
    [Test, SilverlightUnitTest]
    public void EmptyTest()
    {

    }
}

Run this empty test. If you're still having the problem you described, please contact support at typemock.com for further assistance.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号