我有一个Visual Studio解决方案,其中包含一个具有Selenium Tests的测试项目。
(我已经有版本控制checkin(Mercurial)触发的编译版本)
但我希望有一个单独的(每晚)构建配置来运行Selenium测试,最好是在MSTest下。
我认为我需要Selenium Server吗?如果是这样,在运行测试之前启动它的最佳方法是什么?我应该从 MSBuild脚本执行此操作还是使用Team City本身的构建步骤?我首先需要启动Cassini \ WebDev.WebServer,以便运行以下命令:
selenium = new DefaultSelenium("localhost", 4444, "*firefox", "http://localhost:49192/");
我安装了TeamCity 6.5.1的Build Server。 我安装了VS2010。
当然有人这样做了!绝望的帮助这些家伙。如果任何人可以提供任何示例,那将不胜感激。
答案 0 :(得分:16)
我正准备在我们的TeamCity Server中设置Selenium测试,但仍然是Google搜索。 这些是我发现有趣的页面(除了你的StackOverflow问题):
Regression testing for any web application with TeamCity, Selenium, and JUnit
Selenium browser UnitTesting from TeamCity
因此,有一种解决方案可以将使用Selenium IDE记录的html文件转换为Java,以便在TeamCity中使用JUnit进行运行,另一种方法是使用C#创建测试脚本。
本主题"Running Selenium Tests through Teamcity, can it be done?"描述了将Build Agent作为服务运行时的问题...我希望我可以继续将代理作为服务运行。
答案 1 :(得分:7)
我们正在使用Selenium对我们公司的外部网站进行夜间测试。为此,我们使用Selenium RC和动态创建的测试套件。
我们的过程似乎比罗斯更复杂,就像这样:
http://www.mysite.com/selenium/generateTests.aspx
)在powershell脚本中:
[* 1] java -jar C:\Selenium\selenium-remote-control-1.0.3\selenium-server-1.0.3\selenium-server.jar -log C:\Selenium\www.mysite.com\selenium-log.log -userExtensions 'user-extensions.js' -firefoxProfileTemplate 'Selenium FireFox Profile' -htmlSuite *firefox http://www.mysite.com C:\Selenium\www.mysite.com\generated\GeneratedSuite.htm C:\Selenium\www.mysite.com\TestResults.html
[* 2] nxslt3 $seleniumXmlTestReportPath nunit.xslt -o $nunitReportPath baseUrl=$testBaseUrl
答案 2 :(得分:6)
我们使用TeamCity来构建和测试基于C#的Web应用程序。我们一直运行Selenium Server,使用Java service launcher启动它。测试会连接到localhost
,就像您在问题中显示的那样。
我们使用TeamCity的“NAnt Runner”来启动测试作业,并使用NAnt的<nunit2>
任务在NUnit的控制下运行测试。因为我们这样做,NUnit会找到并运行任何使用[Test]
属性注释的公共方法 - 这是一个非常简单,非常强大的工具。
此设置对我们非常有效。
答案 3 :(得分:1)
将其与NUnit或其他测试运行器集成。