Prev: Regarding the problem
Next: FileStream Bug
From: aryaabraham on 16 Feb 2010 18:41 Hi, Is there any way to run .net CF application unit tests on a PC or a VS Team System Server without an emulator? I would like to leverage the code coverage capabilities of recent versions of VS Team Systems. Does anybody have any experience running automated regression tests on a CF application? Sincerely Arya
From: drozd on 17 Feb 2010 05:08 On Feb 17, 12:41 am, aryaabraham <aryaabra...(a)discussions.microsoft.com> wrote: > Hi, > > Is there any way to run .net CF application unit tests on a PC or a VS Team > System Server without an emulator? I would like to leverage the code coverage > capabilities of recent versions of VS Team Systems. > > Does anybody have any experience running automated regression tests on a CF > application? > > Sincerely > Arya I'm assuming you mean MSTest tests. You can configure a test runner configuration that will run the tests on the local computer using full .NET Framework. The advantages are that you don't need a device or emulator and the tests run really fast. The downside is that if some of your tests exercise some device specific libraries (or P/ Invokes) then they will fail (however, in most cases you should probably stub out these dependencies anyway). It is also possible to check test coverage when doing this test run. I haven't tried it yet, but I think it should be pretty straightforward to include such a run of the tests using MSBuild in your TFS build script.
From: Chris Tacke, MVP on 17 Feb 2010 10:35 You can run them against the desktop if the code they are testing isn't dependent on device info, but it's a bit of a challenge because the test assemblies are going to have references to the device test infrastructure. The way around that is to create a separate desktop test project or maybe modify the overall test configuration. I do a fair amount of device testing and I actually have the TFS server spin up the emulator (I've written an emulator library that the targets file can launch before running tests) and actually run against it. I've also had it run against actual hardware. Since the TFS server is really doing regression testing (the developer should be ensuring the tests run and pass locally in the first place) I find it's extremely valuable to have the server testing against the actual OS rather than trying to shortcut it and test against the desktop. -Chris "aryaabraham" <aryaabraham(a)discussions.microsoft.com> wrote in message news:16200ED3-033B-4AE8-8E31-F059F88877E2(a)microsoft.com... > Hi, > > Is there any way to run .net CF application unit tests on a PC or a VS > Team > System Server without an emulator? I would like to leverage the code > coverage > capabilities of recent versions of VS Team Systems. > > Does anybody have any experience running automated regression tests on a > CF > application? > > Sincerely > Arya
From: aryaabraham on 17 Feb 2010 12:45 Thank you. If I want to run code coverage I shall take your suggestion to stub out any OS/hardware specific calls and then run the tests against the desktop version of the .net framework. Arya "drozd" wrote: > On Feb 17, 12:41 am, aryaabraham > <aryaabra...(a)discussions.microsoft.com> wrote: > > Hi, > > > > Is there any way to run .net CF application unit tests on a PC or a VS Team > > System Server without an emulator? I would like to leverage the code coverage > > capabilities of recent versions of VS Team Systems. > > > > Does anybody have any experience running automated regression tests on a CF > > application? > > > > Sincerely > > Arya > > I'm assuming you mean MSTest tests. You can configure a test runner > configuration that will run the tests on the local computer using > full .NET Framework. The advantages are that you don't need a device > or emulator and the tests run really fast. The downside is that if > some of your tests exercise some device specific libraries (or P/ > Invokes) then they will fail (however, in most cases you should > probably stub out these dependencies anyway). > > It is also possible to check test coverage when doing this test run. > > I haven't tried it yet, but I think it should be pretty > straightforward to include such a run of the tests using MSBuild in > your TFS build script. > > . >
From: aryaabraham on 17 Feb 2010 12:54
Chris, Thank you for taking the time to answer my question. I have a follow up question on your emulator library. What do you do in the emulator library to start up the emulator? Do you connect out to the real hardware to run your tests? I can see how that would be very useful especially if I could collect OS profiling data in parallel to look for memory or resource leaks. If I find that test coverage is a problem I could run seperate regression tests on a PC, for specific classes, as both you and drozd had mentioned. Sincerely Arya "Chris Tacke, MVP" wrote: > You can run them against the desktop if the code they are testing isn't > dependent on device info, but it's a bit of a challenge because the test > assemblies are going to have references to the device test infrastructure. > The way around that is to create a separate desktop test project or maybe > modify the overall test configuration. > > I do a fair amount of device testing and I actually have the TFS server spin > up the emulator (I've written an emulator library that the targets file can > launch before running tests) and actually run against it. I've also had it > run against actual hardware. Since the TFS server is really doing > regression testing (the developer should be ensuring the tests run and pass > locally in the first place) I find it's extremely valuable to have the > server testing against the actual OS rather than trying to shortcut it and > test against the desktop. > > -Chris > > > "aryaabraham" <aryaabraham(a)discussions.microsoft.com> wrote in message > news:16200ED3-033B-4AE8-8E31-F059F88877E2(a)microsoft.com... > > Hi, > > > > Is there any way to run .net CF application unit tests on a PC or a VS > > Team > > System Server without an emulator? I would like to leverage the code > > coverage > > capabilities of recent versions of VS Team Systems. > > > > Does anybody have any experience running automated regression tests on a > > CF > > application? > > > > Sincerely > > Arya > |