如何使用selenium webdriver运行exe文件。如果我可以运行exe文件,那么我可以使用auto it工具自动化Windows窗口,并可以使用java selenium运行这些exe。它有助于在Selenium中浏览文件
答案 0 :(得分:3)
是的,你可以这样做。
Runtime.getRuntime().exec("path to the autoIt exe file");
例如:
Runtime.getRuntime().exec("E:\\Softwares\\Testing\\FileIUploadAutoit.exe");
以下是使用Selenium WebDriver
{/ 1>使用java
TestNG
将文件上传到网站的小例子
public class autoitclass {
public WebDriver driver;
@BeforeTest
public void websitemain()
{
System.setProperty("webdriver.gecko.driver", "E:\\Softwares\\Testing\\geckodriver.exe");
driver = new FirefoxDriver();
driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
String URL = "http://www.megafileupload.com/";
driver.get(URL);
}
@Test
public void uploadFile() throws Throwable{
driver.findElement(By.xpath(".//a[contains(@class,'slider-btn')]")).click();
driver.findElement(By.xpath(".//*[@id='initialUploadSection']")).click();
Runtime.getRuntime().exec("E:\\Softwares\\Testing\\FileIUploadAutoit.exe");
}
@AfterTest
public void quit(){
driver.quit();
}
答案 1 :(得分:0)
您无法使用selenium测试独立应用程序(桌面)(如果不正确,请帮我解决),例外是使用Electron开发的应用程序。当你编译和构建一个电子项目时,你得到一个硒,它可以与selenium进行交互和测试。 以下示例演示了如何进行交互:
public void TestSampleGooglePlayElectronApp()
{
ChromeOptions chromeOptions = new ChromeOptions();
chromeOptions.BinaryLocation = @"C:\MySampleElectronApp\MyApp.exe";
DesiredCapabilities capability = new DesiredCapabilities();
capability.SetCapability(CapabilityType.BrowserName, "Chrome");
capability.SetCapability("chromeOptions", chromeOptions);
IWebDriver driver = new ChromeDriver(chromeOptions);
driver.FindElement(By.XPath("//paper-button[contains(text(),'Sign in')]")).Click();
}