我之前使用 psexec 在特定环境上运行测试,看起来 psexec 在 Surface 上运行:
http://technet.microsoft.com/en-us/library/ee692107(v=surface.10).aspx http://technet.microsoft.com/en-us/library/ee692107(v=surface.10).aspx
我不确定您是否可以在表面上运行 mstest.exe 或 nunit.exe,所以如果不能的话,我会制作自己的轻量级测试框架,该框架将生成某种易于解析的输出(可能是 xml)以及测试结果和将其放在一个 .exe 文件中。
所以你的詹金斯构建脚本将具有如下步骤:
[Copy SurfaceTests.exe to \\mySurfaceDevice\c$\testfolder]
psexec.exe \\mySurfaceDevice c:\testfolder\surfacetests.exe > c:\testfolder\output.xml
[Copy \\mySurfaceDevice\c$\testfolder\output.xml to jenkins folder]
那么你必须配置 jenkins 来解析你的输出。如果您研究 nunit 或 mstest 结果的输出,您可能可以在 Surfacetests.exe 中生成类似的内容,并设置 jenkins,就好像它是由其中之一生成的一样。我没有任何使用 Jenkins 的经验,但在 Cruisecontrol.net 中,制作解析 xml 输出并在构建报告中呈现的 xslt 文件非常容易。
如果 psexec 方法不起作用,我会制作一个始终在设备上运行的小型 wcf 服务主机。该服务有一个方法 (RunTests()),每当调用 Surfacetests.exe 时都会执行该方法。或者更好的是,也许只需从存储在磁盘上的程序集运行测试(您必须进行一些反射才能实现此目的),并在方法调用中返回结果。这是一篇文章,解释如何创建将在 Windows 应用商店应用程序上运行的服务
http://www.c-sharpcorner.com/uploadfile/7e39ca/simple-wcf-service-in-windows-store-apps/ http://www.c-sharpcorner.com/uploadfile/7e39ca/simple-wcf-service-in-windows-store-apps/
祝你好运。听起来是一项有趣的任务。请更新您最终如何解决此问题。