【问题标题】:How to setup virtual machines on cloud for testing environment如何在云上设置虚拟机以用于测试环境
【发布时间】:2024-01-15 13:33:01
【问题描述】:

我必须设置测试环境才能在不同的操作系统和浏览器上运行我的 Selenium 脚本。

谁能帮助我最好的解决方案是什么? 我们必须按照下面的矩阵进行测试。

Win7 IE7, IE8, IE9 , Safari XP: IE7,IE8 苹果浏览器 VIsta : IE7, IE8

这是我设置驱动程序的方式:

if (browser1.equalsIgnoreCase("chrome")) {
  File file = new File(CONFIG.getProperty("CHROME_DRIVER_EXE"));
  System.setProperty("webdriver.chrome.driver", file.getAbsolutePath());
  driver = new ChromeDriver();
  builder = new Actions(driver); 
  bckdbrowser = new WebDriverBackedSelenium(driver, ConfigReader.ENVIRONMENT_URL);
  driver.manage().timeouts().implicitlyWait(10,TimeUnit.SECONDS);
}

【问题讨论】:

  • 我需要更多信息。您使用什么测试框架,目前如何创建驱动程序?
  • 我创建了两种类型的框架,每次运行单个浏览器在我的框架中,我在 Config.Properties 文件中提供浏览器名称和操作系统详细信息。另一种是并行运行多个浏览器的 Selenium Grid。但是所有东西都在我的笔记本电脑里。我已经设置了一些测试环境来运行不同的操作系统和浏览器。
  • 如果你自己写了框架,那么我需要看代码。如果您使用的是 TestNG 或 JUnit 之类的东西,那么我需要在那里看到它。我的第二个问题仍然存在……在您的代码中,您如何创建驱动程序实例(我实际上想查看代码)?
  • if (browser1.equalsIgnoreCase("chrome")) { File file = new File(CONFIG.getProperty("CHROME_DRIVER_EXE")); System.setProperty("webdriver.chrome.driver", file.getAbsolutePath());驱动程序 = 新的 ChromeDriver(); builder = new Actions(驱动程序); bckdbrowser = new WebDriverBackedSelenium(驱动程序,ConfigReader.ENVIRONMENT_URL); driver.manage().timeouts().implicitlyWait(10,TimeUnit.SECONDS);
  • 我正在使用Testng

标签: testing selenium automated-tests admin development-environment


【解决方案1】:

好的。使用 TestNG 有不同的方法可以做你想做的事。我将简要概述每一个,因为有很多关于如何做的文档。

第一种是使用@Factory,为每个驱动实例化一个新类。

第二种是使用@Dataprovider 并将驱动程序传递给您的方法。这具有并行的灵活性。

在实例化每个驱动程序的实际任务中……有很多资源可以做到这一点。

【讨论】:

    最近更新 更多