shekharpro / mb-unit

Automatically exported from code.google.com/p/mb-unit
0 stars 0 forks source link

MSTest for VS 2005 might need different XML #370

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
"Expected type attribute not found."

Seems we may need to produce slightly different XML for both versions.

Original issue reported on code.google.com by jeff.br...@gmail.com on 21 Jan 2009 at 5:44

GoogleCodeExporter commented 8 years ago

Original comment by jeff.br...@gmail.com on 21 Jan 2009 at 5:44

GoogleCodeExporter commented 8 years ago
The VSMDI files generated and potentially supplied to mstest, look quite 
different
between VS 2005 and VS 2008. Attached is one and the same test project compiled 
with
both versions.

Original comment by tka...@gmail.com on 22 Jan 2009 at 11:38

Attachments:

GoogleCodeExporter commented 8 years ago
Wow!  Major structural differences.

Could you attach a copy of a vsmdi from VS 2005 for a non-empty test list?  I 
don't
have that version of TeamSystem installed right now to check.

Original comment by jeff.br...@gmail.com on 23 Jan 2009 at 10:11

GoogleCodeExporter commented 8 years ago
Well, actually that example already had something in the test list. VS always 
seems
to reference the runconfig only. 

I tried to modify it manually to include the required testLinks. This apparently
works with mstest from the command line and - from the content perspective - 
looks
quite similar as the vs2008 example.

Kind Regards,
Thorsten

Original comment by tka...@gmail.com on 23 Jan 2009 at 3:23

Attachments:

GoogleCodeExporter commented 8 years ago
Would this help? I cannot test for lack of VS2008 solution support.

Original comment by jeyoung...@googlemail.com on 18 Mar 2009 at 6:55

Attachments:

GoogleCodeExporter commented 8 years ago
So that's part of it... The only other piece is the *.runconfig file.  I don't 
know
what that looks like in VS 2005.

Original comment by jeff.br...@gmail.com on 19 Mar 2009 at 4:32

GoogleCodeExporter commented 8 years ago
I found an example here:
http://msdn.microsoft.com/en-us/library/ms404663(VS.80).aspx

Unfortunately I'm not able to test this either unless I download a VSTS 2005 
trial or
something.

I have committed a couple of updates, no clue if it will work but try out build 
732
or more recent from http://ccnet.gallio.org/Distributables/

Original comment by jeff.br...@gmail.com on 19 Mar 2009 at 4:57

GoogleCodeExporter commented 8 years ago
Getting there... ;-)

Internal Error
System.ArgumentException: Invalid name character in 'parentCategoryId '. The ' 
' 
character, hexadecimal value 0x20, cannot be included in a name.
   at System.Xml.XmlWellFormedWriter.CheckNCName(String ncname)
   at System.Xml.XmlWellFormedWriter.WriteStartElement(String prefix, String 
localName, String ns)
   at System.Xml.XmlWriter.WriteStartElement(String localName)
   at Gallio.MSTestAdapter.Wrapper.MSTestRunner2005.WriteTestMetadata(XmlWriter 
writer, IEnumerable`1 tests, String assemblyFilePath)
   at Gallio.MSTestAdapter.Wrapper.MSTestRunner.CreateTestMetadataFile(String 
testMetadataFilePath, IEnumerable`1 tests, String assemblyFilePath)
   at Gallio.MSTestAdapter.Wrapper.MSTestRunner.RunSession(ITestContext 
assemblyContext, MSTestAssembly assemblyTest, ITestCommand assemblyTestCommand, 
ITestStep parentTestStep, IProgressMonitor progressMonitor)
   at Gallio.MSTestAdapter.Model.MSTestController.RunTest(ITestCommand testCommand, 
ITestStep parentTestStep, IProgressMonitor progressMonitor)

On line 73, of MSTestRunner2005.cs, you have this:

writer.WriteStartElement("parentCategoryId ");

There's a space after "parentCategoryId".

Hope this helps. (I'll try and get a copy of VS2008 this week-end to do this 
properly.)

Cheers.

Original comment by jeyoung...@googlemail.com on 19 Mar 2009 at 11:00

GoogleCodeExporter commented 8 years ago
Hmmm, this is strange. I can see the change for the above in Subversion, but CC 
is 
still building from code withouth the change. Build 736 still fails with same 
error.

Original comment by jeyoung...@googlemail.com on 20 Mar 2009 at 12:09

GoogleCodeExporter commented 8 years ago
My bad, there are actually two places in the code where that space is present.

Original comment by jeyoung...@googlemail.com on 20 Mar 2009 at 12:21

GoogleCodeExporter commented 8 years ago
Tests were running fine but mis-reported because the result format (.trx files) 
differ from MSTest 9.0.

I don't have any failing tests with error info, so I have not included failed 
tests 
error info in my changes (will do that when I can actually load all the 
projects 
instead of referencing compiled DLLs from the MSTestAdapter project!)

Anyway, this is now working. (I can send you a VS2005 .trx file in private 
because 
tthe one I have contain info I don't want public.)

Original comment by jeyoung...@googlemail.com on 20 Mar 2009 at 1:21

Attachments:

GoogleCodeExporter commented 8 years ago
Suggest using XmlPathNavigator for processing the results. The XML is too 
complicated in VS2005 XML formats for serial reading. Will attend to that this 
week-
end if time permits.

Original comment by jeyoung...@googlemail.com on 20 Mar 2009 at 2:24

GoogleCodeExporter commented 8 years ago
Also suggest investigating the use of the serializable classes.

Original comment by jeyoung...@googlemail.com on 20 Mar 2009 at 4:31

GoogleCodeExporter commented 8 years ago
This is the patch for support of VS2005 (or MSTest 8.0) unit tests. This 
corrects 
errors in the mapping of test outcomes and uses XPathNavigator for parsing the 
test 
results file more easily.

There is one unusual behaviour of which I am uncertain whether it is by design 
or a 
defect: when running the same unit tests over and over again, the test count 
keep 
incrementing instead of restarting from zero. So, 5 tests run 5 consecutive 
times 
will yield "25 tests run". However, if the tests are reloaded, the count is 
reset.

Hope this helps.

Original comment by jeyoung...@googlemail.com on 24 Mar 2009 at 8:38

Attachments:

GoogleCodeExporter commented 8 years ago
Looks great!  Many thanks!

I have applied the patch and it will be in the next build.  Please let me know 
if
that fixes it, then I'll close this issue.  :-)

I presume the other issue you mentioned is encountered with Icarus.  We might 
not be
adjusting the statistics appropriately between runs.  If that's the case, can 
you
open up an issue describing the behavior in a little more detail for Graham?  
Thanks!

Original comment by jeff.br...@gmail.com on 24 Mar 2009 at 8:59

GoogleCodeExporter commented 8 years ago
Build works fine. 

Issue can be closed. Cheers!

Original comment by jeyoung...@googlemail.com on 24 Mar 2009 at 10:36

GoogleCodeExporter commented 8 years ago

Original comment by jeff.br...@gmail.com on 24 Mar 2009 at 5:07