Macでデスクトップアプリケーションを自動化しようとしています。私は、次のコードを書かれている:Mac OSでのデスクトップアプリケーションの自動化
import java.net.MalformedURLException;
import java.net.URL;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.remote.RemoteWebDriver;
import org.testng.annotations.Test;
public class createTemplate {
@Test
public void newTemplate() throws InterruptedException, MalformedURLException {
String fileMenu = "/AXApplication[@AXTitle='AppiumForMac']/AXMenuBar[0]/AXMenuBarItem[@AXTitle='File']";
String createNewTemplate = "/AXApplication[@AXTitle='OpsGenie']/AXMenuBar[0]/AXMenuBarItem[@AXTitle='File']/AXMenu[0]/AXMenuItem[@AXTitle='Create New Template']";
String templateName = "/AXApplication[@AXTitle='OpsGenie']/AXWindow[@AXIdentifier='_NS:10' and @AXSubrole='AXStandardWindow']/AXSheet[0]/AXTextField[@AXIdentifier='_NS:114']";
String supportedRoles = "/AXApplication[@AXTitle='OpsGenie']/AXWindow[@AXIdentifier='_NS:10' and @AXSubrole='AXStandardWindow']/AXSheet[0]/AXScrollArea[@AXIdentifier='_NS:181']/AXTable[@AXIdentifier='_NS:185']/AXRow[@AXSubrole='AXTableRow']/AXCell[0]/AXButton[@AXIdentifier='_NS:49']";
String numberOfPodes = "/AXApplication[@AXTitle='OpsGenie']/AXWindow[@AXIdentifier='_NS:10' and @AXSubrole='AXStandardWindow']/AXSheet[0]/AXStaticText[@AXIdentifier='_NS:85']";
String VRCast = "/AXApplication[@AXTitle='OpsGenie']/AXWindow[@AXIdentifier='_NS:10' and @AXSubrole='AXStandardWindow']/AXSheet[0]/AXStaticText[@AXIdentifier='_NS:17']";
String doneButton = "/AXApplication[@AXTitle='OpsGenie']/AXWindow[@AXIdentifier='_NS:10' and @AXSubrole='AXStandardWindow']/AXSheet[0]/AXButton[@AXTitle='Done' and @AXIdentifier='_NS:283']";
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability("platform","Mac");
WebDriver driver = new RemoteWebDriver(new URL("http://localhost:4622/wd/hub"),capabilities);
driver.get("OpsGenie");
Thread.sleep(2000);
driver.findElement(By.xpath(fileMenu)).click();
driver.findElement(By.xpath(createNewTemplate)).click();
driver.findElement(By.xpath(templateName)).sendKeys("New Template");
driver.findElement(By.xpath(supportedRoles)).click();
driver.findElement(By.xpath(numberOfPodes)).sendKeys("1");
driver.findElement(By.xpath(VRCast)).sendKeys("Yes");
driver.findElement(By.xpath(doneButton)).click();
}
}
そして、私は次のエラーを取得しています:
org.openqa.selenium.remote.UnreachableBrowserException: Could not start a new session. Possible causes are invalid address of the remote server or browser start-up failure.
Build info: version: '3.4.0', revision: 'unknown', time: 'unknown'
System info: host: 'TACH0029', ip: '192.168.1.8', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.12.6', java.version: '1.8.0_144'
私は問題が何であるかを知りません。誰でも助けることができますか?
セレンは、ブラウザでウェブサイトをテストするための開発ツールです。私の知る限り、任意のアプリケーションを制御することはできません。 – cello
Seleniumは、AppiumFor Macアプリケーションのおかげで、Mac上のデスクトップアプリケーションの自動化に使用できます。リンクhttps://medium.com/@rajuayyampillai/how-to-automate-any-desktop-application-d7b4615d6f1f – Amrutha