2010-10-15 69 views
3

我有一个WP7的单元测试框架,它可以在手机上运行。结果相当难读,所以我将它们写入XDocument。如何从我的Windows Phone 7仿真器获取数据

我的问题是,我怎么才能将这个XML文件从手机中拿到我的桌面上,在那里我可以真正分析结果?

到目前为止,我所做的是在创建summary xml的位置之后放置一个Debugger.Break()行。然后,我可以从VS中复制/粘贴xml或在调试器中正确检查它。问题是,如果你还没有附加调试器(这在很多ExpectedException测试中很好),Debugger.Attach()似乎不起作用,但是手动将VS附加到仿真器进程似乎什么都不做。

我试着用一些额外的命令行参数运行模拟器,所以我可以尝试看看我是否能够使用我的实际硬盘作为它自己的磁盘,但我似乎无法让它工作...

PS它可能是不合理的弹出一个新的进程,如Web服务器来监听这些数据。我知道该怎么做,我只是不想。

那么,你是如何得到这些电话的东西?

回答

2

看看这个article about emulator automation from Justin Angel
它包含有关如何从/到仿真器/设备隔离存储器远程读写文件的详细信息。

正如您所指出的,另一种选择是让应用程序将结果发送到[本地] Web服务器。

+0

这看起来比我希望的复杂得多,但我认为它会起作用。私人反思有点令人担忧......我想我也必须创建一个测试运行的应用程序。 – 2010-10-15 21:51:57

1

Justin Angel的article真的很棒,但不幸的是他的基于文件的解决方案不适用于CoreCon API的最终RTM版本。微软已经从原生的conman层中删除了这个功能。

我和你一直处于同样的境地,并且已经考虑过从设备中获取数据的各种方式,但最终只有一件事情似乎有效:如你所建议的那样,将数据传递给外部Web服务。

这种解决方案并不理想,不仅因为它需要一些努力,但由于一些需要注意的地方也:

  • 您的应用程序必须被授予ID_CAP_NETWORKING能力
  • 网络流量似乎在Application_Closing不允许事件,也许在其他地方也

在光明的一面,我发现从手机,无论是硬件还是模拟器webrequests,真的是快,所以这种方法效果非常好(我们的应用程序是EQATEC Profiler用W P7)。

+0

感谢那些信息,可能为我节省了一些时间。 – 2010-10-27 04:51:36

相关问题