I am trying to automate window calculator app to start desktop application testing using appium.
I am using the sample code giving on github. But facing some issue.
Appium server version is 1.7.2
Appium logs:
[HTTP] <-- POST /wd/hub/session - - ms - - [Appium] Welcome to Appium v1.7.2 [Appium] Non-default server args: [Appium] address: 127.0.0.1 [Appium] Appium REST http interface listener started on 127.0.0.1:4723 [HTTP] --> POST /wd/hub/session {"desiredCapabilities":{"app":"Calculator","platformName":"Windows","deviceName":"JITENDER-QA"}} [MJSONWP] Calling AppiumDriver.createSession() with args: [{"app":"Calculator","platformName":"Windows","deviceName":"JITENDER-QA"},null,null] [BaseDriver] Event 'newSessionRequested' logged at 1519707069217 (10:21:09 GMT+0530 (India Standard Time)) [Appium] Creating new WindowsDriver (v1.0.0) session [Appium] Capabilities: [Appium] app: Calculator [Appium] platformName: Windows [Appium] deviceName: JITENDER-QA [BaseDriver] The following capabilities were provided, but are not recognized by appium: app. [BaseDriver] Session created with session id: 5954b7ba-b1fb-4970-8bf1-f37a6703fd81 [WinAppDriver] You must use WinAppDriver version 1.0 [WinAppDriver] Verifying WinAppDriver version 1.0 is installed via comparing the checksum. [WinAppDriver] WinAppDriver changed state to 'starting' [WinAppDriver] Killing any old WinAppDrivers on same port, running: FOR /F "usebackq tokens=5" %a in (`netstat -nao ^| findstr /R /C:"4724 "`) do (FOR /F "usebackq" %b in (`TASKLIST /FI "PID eq %a" ^| findstr /I winappdriver.exe`) do (IF NOT %b=="" TASKKILL /F /PID %a)) [WinAppDriver] No old WinAppDrivers seemed to exist [WinAppDriver] Spawning winappdriver with: 4724/wd/hub [WinAppDriver] WinAppDriver exited unexpectedly with code 3221225781, signal null [WinAppDriver] WinAppDriver changed state to 'stopped'
My appium script is:
import java.net.URL;
import java.util.concurrent.TimeUnit;import org.openqa.selenium.WebElement;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.testng.Assert;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.Test;import io.appium.java_client.windows.WindowsDriver;
public class Cal1 {
private static WindowsDriver CalculatorSession = null; private static WebElement CalculatorResult = null; @BeforeTest public static void setup() { try { DesiredCapabilities capabilities = new DesiredCapabilities(); capabilities.setCapability("app", "Microsoft.WindowsCalculator_8wekyb3d8bbwe!App"); capabilities.setCapability("deviceName", "JITENDER-QA"); CalculatorSession = new WindowsDriver<WebElement>(new URL("http://127.0.0.1:4723/wd/hub/"), capabilities); CalculatorSession.manage().timeouts().implicitlyWait(2, TimeUnit.SECONDS); CalculatorResult = CalculatorSession.findElementByAccessibilityId("CalculatorResults"); Assert.assertNotNull(CalculatorResult); }catch(Exception e){ e.printStackTrace(); } finally { } } @Test public void Subtraction() { CalculatorSession.findElementByName("Nine").click(); CalculatorSession.findElementByName("Minus").click(); CalculatorSession.findElementByName("One").click(); CalculatorSession.findElementByName("Equals").click(); Assert.assertEquals("8", _GetCalculatorResultText()); } protected String _GetCalculatorResultText() { // trim extra text and whitespace off of the display value return CalculatorResult.getText().replace("Display is", "").trim(); } @AfterClass public static void TearDown() { CalculatorResult = null; if (CalculatorSession != null) { CalculatorSession.quit(); } CalculatorSession = null; }
}
Please help me resolve this issue.
@Aleksei @Telmo_Cardoso @Daniel_Graham
Any help?
created
Feb '18
last reply
Feb '19
- 4
replies
- 603
views
- 3
users
- 4
links