有没有办法加快硒服务器加载时间?
根据设计,Selenium 会在每次运行新测试时制作一个新的 Firefox 配置文件副本。我发现这个复制时间是一个相当大的瓶颈,特别是在运行100s测试时。(5-15 秒重新复制配置文件)。
有没有人知道任何覆盖行为?我宁愿我的Selenium服务器只是重用相同的firefox配置文件。我知道这违反了“干净地设置你的测试夹具”的理念,但这是我愿意走的捷径,因为我的测试不会对我的firefox配置文件造成实质性的改变,以至于危及未来的测试。
根据设计,Selenium 会在每次运行新测试时制作一个新的 Firefox 配置文件副本。我发现这个复制时间是一个相当大的瓶颈,特别是在运行100s测试时。(5-15 秒重新复制配置文件)。
有没有人知道任何覆盖行为?我宁愿我的Selenium服务器只是重用相同的firefox配置文件。我知道这违反了“干净地设置你的测试夹具”的理念,但这是我愿意走的捷径,因为我的测试不会对我的firefox配置文件造成实质性的改变,以至于危及未来的测试。
我同意这是一个问题。每次都有一个新的Firefox进程副本是件好事,但是通过重新生成Firefox配置文件将启动时间加倍有点过分。如果您打开有关 http://jira.openqa.org 的错误报告,并在 patrick@browsermob.com 上给我发送电子邮件,我将很乐意确保我们找到解决方案。
PS:我已经解决了这个问题,作为我自己的一次性问题。我们使用相同的Firefox配置文件,只是对缓存和cookie DB进行核蚀。但我真的应该把这个变化修补回硒源。
只需将下面的代码移出测试设置并放入夹具设置中,并保留硒实例的全局(代码假定为NUnit)。
[TestFixtureSetUp()]
public void FixtureSetup()
{
selenium = New DefaultSelenium("localhost", 4444, "*firefox", "http://localhost/");
selenium.Start();
selenium.SetTimeout("30000");
selenium.Open("/");
}
然后,您的测试设置应如下所示:
[SetUp()]
public void SetUpTest()
{
selenium.Open("default.aspx");
selenium.WaitForPageToLoad("30000");
}