2014-01-22 11 views
7

ich benutze den + + Jasmine + Selenium WebdriverJS für die Automatisierung von angularjs Anwendung. Ich konnte ein Beispielskript mit all diesen Werkzeugen konfigurieren und einrichten, um auf einem Desktop-Computer zu laufen.Wie man Winkelmesser-Skripte auf Android und IOS ausführen?

Jetzt möchte ich die gleichen Skripte auf mobilen (IOS & Android) Gerät/Emulator ausführen.

Ich möchte Appium verwenden, um Winkelmesser-Skripte auf IOS und Android laufen zu lassen. Wenn jemand an Winkelmesser und Appium gearbeitet hat. Bitte hilf mir, ein Beispielskript einzurichten.

Ich bin ziemlich neu zu all diesen Tools, jede Info dazu ist wirklich hilfreich.

Antwort

3

Haben Sie versucht, SoceLabs zu verwenden? Ich denke, dass Sie iOS- und Android-Geräte anfordern können, indem Sie die Plattform im Abschnitt "Fähigkeiten" der Konfiguration angeben.

Wenn Sie keine SauceLabs verwenden möchten, können Sie die Selenium Grid-Funktion verwenden. Sie können Selenium-Treiber für iOS und Android erhalten und sie mit einem zentralisierten Selenium-Server verbinden, gegen den Ihre Protractor-Szenarien ausgeführt werden. Sie müssen nur die selenAddress in Ihrer Konfigurationsdatei so ändern, dass sie auf den zentralisierten Server zeigt.

Grundsätzlich müssen Sie die Verbindung zu den Geräten aus der Ferne herstellen und die einfachsten Möglichkeiten sind wie oben angegeben.

3

bei https://github.com/angular/protractor/blob/master/docs/browser-setup.md können Sie sehr detaillierte Informationen finden, wie appium Setup mit Winkelmesser auf Emulatoren (Android/iOS) testen

Sie die WebDriver von Transporteur mit dem appium WebDriver ersetzen müssen. der appium WebDriver läuft normalerweise am Port 4723. folloing des Code ist für Android für ein Web-only angualr app (ohne APK, reines Netz, in dem cromebrowser der Vorrichtung ausgeführt wird, die vorhanden sein muß)

exports.config = { 
    seleniumAddress: 'http://localhost:4723/wd/hub', //appium 

    specs: [ 
    'spec.js' 
    ], 

    capabilities: { 
    browserName: 'chrome', 
    'appium-version': '1.0', 
    platformName: 'Android', 
    platformVersion: '4.4.2', 
    deviceName: 'Android Emulator', 
    }, 
    baseUrl: 'http://yourwebsite.com'), 
}; 

Start appium und Lauftest mit

protractor yourtest.js 

edit: Anpassung der Fähigkeiten der jüngsten Version (browser muss für Selen 2.43.x vorhanden sein)

0

wollte nur teilen, dass diese Konfiguration für mich gegen BrowserStack.- arbeitete

multiCapabilities: [ 
     { 
      platformName: 'iOS', 
      platformVersion: '7.1', 
      browserName: '', 
      app: 'safari', 
      deviceName: 'iPhone Simulator', 
      'appium-version': "1.4.0", 
      username: '<username>', 
      accessKey: '<key>' 

     } 
     , 
     { 
      platformName: 'Android', 
      platformVersion: '4.4', 
      browserName: 'Browser', 
      deviceName: 'Android Emulator', 
      'appium-version': "1.4.0", 
      username: '<username>', 
      accessKey: '<key>' 
     } 


     ], 

Ich habe festgestellt, dass andere Werte für platformVersion unterschiedlich, dass diejenigen, die ich hier platziert, nicht funktioniert, können Sie diese Fehlermeldung erhalten, werden wie: ‚Angular wurde nicht gefunden ....‘

Ich habe ein Ticket für Winkelmesser Team erstellt und einen Kommentar: https://github.com/angular/protractor/issues/2247