none
VS2010进行UI测试,初始化程序报错 RRS feed

  • 问题

  • 在UIMap.uitest里面的<InitializeActions>,初始化启动程序,xml语言如下
    <InitializeActions>
        <LaunchApplicationAction>
          <FileName> C:\Zbdvnms.Bayonet.exe</FileName>
        </LaunchApplicationAction>
         <TestStepMarkerAction MarkerInformation="StartTest">
               <StepId>-1</StepId>
              <Direction>Start</Direction>
              <Disabled>false</Disabled>
        </TestStepMarkerAction>
      </InitializeActions>
    重新生成代码,在UIMap.Designer.cs里面生成了一行代码
     public void StartTest()
            {

                // 启?动ˉ“° C:\Zbdvnms.Bayonet.exe”±
                ApplicationUnderTest zbdvnmsBayonetApplication = ApplicationUnderTest.Launch(this.StartTestParams.ExePath, this.StartTestParams.AlternateExePath);
            }
    在CodedUITest2.cs里面
    public void CodedUITestMethod1()
            {
               
                this.UIMap.StartTest();(这个方法里面添加了这个)
            }

    进行运行的时候弹出了登陆的客户端界面,但是运行是失败的,错误是这样写的

    用户代码未处理 Microsoft.VisualStudio.TestTools.UITest.Extension.FailedToLaunchApplicationException
      Message=启动此进程时出现了以下错误: “无法启动应用程序。这可能是以下某个原因所致:
    1) 该应用程序的另一个实例已在运行,而一次只能运行一个实例。
    2) 该应用程序启动了另一个进程,并且现已停止。可能需要直接启动进程。
    3) 您对此应用程序没有足够的权限。” 文件: C:\Zbdvnms.Bayonet.exe。 文件:  C:\Zbdvnms.Bayonet.exe。
      Source=Microsoft.VisualStudio.TestTools.UITesting
      BasicMessage=启动此进程时出现了以下错误: “无法启动应用程序。这可能是以下某个原因所致:
    1) 该应用程序的另一个实例已在运行,而一次只能运行一个实例。
    2) 该应用程序启动了另一个进程,并且现已停止。可能需要直接启动进程。
    3) 您对此应用程序没有足够的权限。” 文件:  C:\Zbdvnms.Bayonet.exe。 文件: C:\Zbdvnms.Bayonet.exe。
      HResult=-268111863
      StackTrace:
           在 Microsoft.VisualStudio.TestTools.UITesting.ApplicationUnderTest.Start(ProcessStartInfo startInfo)
           在 Microsoft.VisualStudio.TestTools.UITesting.ApplicationUnderTest..ctor(String fileName, String alternateFileName, String arguments)
           在 Microsoft.VisualStudio.TestTools.UITesting.ApplicationUnderTest.Launch(String fileName, String alternateFileName, String arguments)
           在 Microsoft.VisualStudio.TestTools.UITesting.ApplicationUnderTest.Launch(String fileName, String alternateFileName)
           在 TestProject1.UIMap.StartTest() 位置 D:\test\TestProject1\UIMap.Designer.cs:行号 40
           在 TestProject1.CodedUITest2.CodedUITestMethod1() 位置 D:\test\TestProject1\CodedUITest2.cs:行号 32
      InnerException: Microsoft.VisualStudio.TestTools.UITest.Extension.FailedToLaunchApplicationException
           Message=“无法启动应用程序。这可能是以下某个原因所致:
    1) 该应用程序的另一个实例已在运行,而一次只能运行一个实例。
    2) 该应用程序启动了另一个进程,并且现已停止。可能需要直接启动进程。
    3) 您对此应用程序没有足够的权限。” 文件:  C:\Zbdvnms.Bayonet.exe       Source=Microsoft.VisualStudio.TestTools.UITesting
           BasicMessage=“无法启动应用程序。这可能是以下某个原因所致:
    1) 该应用程序的另一个实例已在运行,而一次只能运行一个实例。
    2) 该应用程序启动了另一个进程,并且现已停止。可能需要直接启动进程。
    3) 您对此应用程序没有足够的权限。” 文件: C:\Zbdvnms.Bayonet.exe       HResult=-268111863
           StackTrace:
                在 Microsoft.VisualStudio.TestTools.UITesting.ApplicationUnderTest.ThrowIfProcessNotValid(Process process)
                在 Microsoft.VisualStudio.TestTools.UITesting.ApplicationUnderTest.set_Process(Process value)
                在 Microsoft.VisualStudio.TestTools.UITesting.ApplicationUnderTest.Start(ProcessStartInfo startInfo)
           InnerException:


    • 已编辑 yang2013 2013年5月9日 5:51
    • 已移动 Bob Shen 2013年5月10日 6:21
    2013年5月9日 5:40

答案

  • 你好,

    我的建议是你可以先去一步步的debug你的test,看看是哪段代码产生这个问题。另外,你可以用coded UI test Builder去记录相同的行为,然后用它自动生成代码,你可以比较二者的不同,从而发现问题的所在。通过错误信息来看,一是有可能你你已经运行了这个实例。或者你没有足够的权限去打开该进程,当然,如果你直接可以手动的打开它,应该不是权限的问题。


    Jack Zhai [MSFT]
    MSDN Community Support | Feedback to us
    Develop and promote your apps in Windows Store
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    2013年5月13日 2:12
    版主

全部回复