我正准备为当前处于开发初始阶段的 Web/桌面应用程序编写自动化测试。将使用的技术是 Laravel、VueJS 和最重要的 Electron Framework。 Electron 是一个框架,用于使用 JavaScript、HTML 和 CSS 等网络技术创建 native 应用程序。
所以我很好奇是否可以使用 Selenium WebDriver 来自动化使用网络技术(例如 Electron)创建的桌面应用程序?
我已经成功地为“Slack Web 应用程序”编写了一些 Selenium/Java 测试(Slack 是使用 Electron framefork 开发的)
现在我想尝试使用相同的测试来测试“Slack Desktop App”。如果可能的话,也许我可以更改“SetupSelenium”@Before 方法?
这是基于 Web 的应用程序的初始“SetupSelenium”方法: @BeforeMethod
public void setupSelenium() {
baseUrl = "https://slack.com/";
System.setProperty("webdriver.chrome.driver", "C:\\UOOP\\WorkspaceJava\\chromedriver.exe");
driver = new ChromeDriver();
driver.manage().timeouts().implicitlyWait(1, TimeUnit.SECONDS);
driver.manage().window().maximize();
driver.navigate().to(baseUrl);
homePage = new HomePage(driver);
signInPage = new SignInPage(driver);
signInToYourTeamPage = new SignInToYourTeamPage(driver);
}
如果有人有任何想法,我将不胜感激……也许可以将二进制路径设置为 slack.exe ??
至:C:\Users\Danant\AppData\Local\slack\slack.exe
最佳答案
创建ChromeDriver
时需要设置一些ChromeOptions
,例如:
ChromeOptions options = new ChromeOptions();
options.setBinary(new File("C:\\path\\to\\slack.exe"));
ChromeDriver driver = new ChromeDriver(options);
Electron 文档中也有关于此主题的教程:https://xwartz.gitbooks.io/electron-gitbook/content/en//tutorial/using-selenium-and-webdriver.html
关于selenium-webdriver - 是否可以使用 Selenium WebDriver 来自动化桌面应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41656637/