在VS 2010中启动带有编码UI测试的Web应用程序

时间:2010-12-16 02:47:27

标签: visual-studio-2010 web-applications coded-ui-tests

我有一个Web应用程序和测试项目的解决方案。测试应用程序编写了Web应用程序的ui测试。如何在测试执行时启动Web应用程序?

我试过

  • 添加TestSetup方法以通过System.Diagnostics.Process启动Web服务器。我不喜欢这个,因为它看起来很笨拙,而且编码的ui测试不能很好地适应继承。
  • 在testsettings中添加一个安装脚本,通过批处理文件启动Web服务器(同一命令行)。但是批处理文件永远不会退出并最终超时。我尝试通过start命令启动Web服务器,但这不起作用 - 从命令行运行它时效果很好,但不能从testsettings安装脚本运行。

我想过可能只是在后台运行IIS并将其指向特定文件夹。然后将Web应用程序部署到该文件夹​​。让测试项目针对IIS进行测试。

这似乎很多工作。必须有一个更简单的方法。我希望通过计划或持续集成在多个开发人员的计算机上以及TFS构建计算机上执行此操作。

有什么想法吗?

由于

2 个答案:

答案 0 :(得分:0)

我将Web项目(在项目属性中)配置为在IIS上托管。它只需3或4次点击即可完成。它将提示创建一个虚拟应用程序。之后,构建并运行您的项目,它将永久托管在IIS上。因此,您无需手动启动Web服务器即可启动编码UI测试。

答案 1 :(得分:0)

您可以执行Gerardo Grignoli建议的操作,并在IIS中托管该网站,以便它始终开启。

您也可以启动Web项目(如果要调试测试,则不进行调试),然后运行/调试测试。在你的测试中,只需使用BrowserWindow.Launch(" localhost:appPort / whateverPageToStartOn");只需根据您的IIS express设置填写端口而不是appPort。

关于在TFS构建机器上运行它,这似乎是一个值得怀疑的事情。您可以从测试实验室测试已部署的站点(开发,测试,产品等)。 Microsoft Test Manager(MTM)是可以执行此操作的产品之一。