我可以使用 Selenium 进行自动速度测试吗?

Can I Automated Speed Test using Selenium?

我正在使用 beta.speedtest.net 检查我的网络速度。我想使用 Selenium(也对其他框架开放)自动执行此过程。这个自动化过程包括几个步骤

  1. 正在单击“更改服务器”link
  2. 输入我的首选服务器位置
  3. 选择我喜欢的服务器
  4. 运行 测试
  5. 获取每个测试的结果(以任何可能的方式)

我的进展如何

    public void RunTheTest()
    {
        IWebDriver driver = new ChromeDriver();
        driver.Manage().Window.Maximize();
        driver.Navigate().GoToUrl("http://beta.speedtest.net");
        driver.FindElement(By.LinkText("Change Server")).Click();
    }

找不到任何对我的过程至关重要的元素。

试试这个:

driver.findElement(By.xpath("//a[@class='btn-server-select' and contains(text(), 'Change Server')]")).click();

LinkText 不适用于您的情况,因为文本包含前导空格和尾随空格。这些可能是不间断空间

所以你必须使用包含 contains 或 normalize-space

的 xpath
//a[normalize-space(text())='Change Server']

//a[contains(text(),'Change Server')]

如果你想要简单,那就选择 className

btn-server-select

因为只有一个元素具有这样的类名