-
February 22nd, 2011, 05:23 AM
#1
Unit test serialization error
Ok so I have the following code as my unit test:
namespace MusicTest
{
[TestClass]
public class MusicGig
{
[TestMethod]
public static Stream Serialize(object source)
{
IFormatter formatter = new BinaryFormatter();
Stream stream = new MemoryStream();
formatter.Serialize(stream, source);
return stream;
}
}
}
however when I try and run the test I get the following error..
UTA007: Method Serialize defined in class MusicTest.MusicGig does not have correct signature. Test method marked with the [TestMethod] attribute must be non-static, public, does not return a value and should not take any parameter. for example: public void Test.Class1.Test().
It has me confused, is it just a simple code error somewhere?
Thanks in advance
-
February 22nd, 2011, 10:43 AM
#2
Re: Unit test serialization error
Your example code doesn't show this, which is why I'm asking: You do know that you have to mark all classes to be serialized, right? If you don't tag the class as serializable then your call to serialize will automatically be invalid.
-
February 22nd, 2011, 11:28 AM
#3
Re: Unit test serialization error
The error message is very clear:
Test method marked with the [TestMethod] attribute must be non-static, public, does not return a value and should not take any parameter. for example: public void Test.Class1.Test().
It's telling you that any method marked with the [TestMethod] attribute must be a public static void method.
Your method of "public static Stream Serialize( ... )" that you've marked with the [TestMethod] attribute isn't a public static void method. If you need this method signature, remove the [TestMethod] attribute (but don't expect the method to be run as part of the test suite).
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|