2016-06-20 5 views
2

Ich versuche, Winkelmessertest auf mehreren Geräten auszuführen.Führen Sie Test mit Winkelmesser und Appium auf mehreren Geräten durch

  1. Mehrere Desktop-Browser
  2. Mehrere mobilen Browser mit Appium

Die Konfiguration für Desktop-Browser und mobile Browser Appium unterscheidet. Gibt es eine Möglichkeit, beide Konfigurationen zu mischen?

Dies ist der Inhalt meiner Konfigurationsdateien:

1.Main Konfiguration für "1- Mehrere Desktop-Browser" mit

// conf.js 
exports.config = { 
framework: 'custom', 

frameworkPath: require.resolve('protractor-cucumber-framework'), 

cucumberOpts: { 
    require: 'features/step_definitions/*.step.js', 
    format: "summary" 
}, 

seleniumAddress: 'http://localhost:4444/wd/hub', 
specs: ['features/*.feature'], 
multiCapabilities: [ 
    { 
     browserName: 'firefox' 
    }, 
    /* TODO Safari is randomly failing (necessary restart safari and selenium server) 
    { 
    browserName: 'safari' 
    },*/ 
    { 
     browserName: 'chrome' 
    }, 
    { 
     browserName: 'chrome', 
     // List of devices https://cs.chromium.org/chromium/src/chrome/test/chromedriver/chrome/mobile_device_list.cc 
     'deviceName': 'Google Nexus 5' 
    }, 
    { 
     browserName: 'chrome', 
     'deviceName': 'Apple iPhone 6' 
    }, 
    { 
     browserName: 'chrome', 
     'deviceName': 'Apple iPad' 
    }, 
    { 
     browserName: 'chrome', 
     'deviceName': 'Samsung Galaxy S4' 
    } 
] 
}; 

https://github.com/aluzardo/protractor-cucumber-tests/blob/master/conf.js

2.Konfiguration der ersten mobilen Vorrichtung Appium

// conf-appium.js 
exports.config = { 
framework: 'custom', 

frameworkPath: require.resolve('protractor-cucumber-framework'), 

cucumberOpts: { 
    require: 'features/step_definitions/*.step.js', 
    format: "pretty" 
}, 

seleniumAddress: 'http://localhost:4723/wd/hub', 
specs: ['features/*.feature'], 
capabilities: { 
    browserName: 'chrome', 
    'appium-version': '1.5.3', 
    platformName: 'Android', 
    platformVersion: '5.0.2', 
    deviceName: '33005bd56ac6c223' 
} 
}; 

https://github.com/aluzardo/protractor-cucumber-tests/blob/master/conf-appium.js

3.Configuration der zweiten mobilen Gerät Appium

// conf-appium-1.js 
exports.config = { 
framework: 'custom', 

frameworkPath: require.resolve('protractor-cucumber-framework'), 

cucumberOpts: { 
    require: 'features/step_definitions/*.step.js', 
    format: "pretty" 
}, 

seleniumAddress: 'http://localhost:4747/wd/hub', 
specs: ['features/*.feature'], 
capabilities: { 
    browserName: 'chrome', 
    'appium-version': '1.5.3', 
    platformName: 'Android', 
    platformVersion: '4.2.2', 
    deviceName: '30048664b980c100' 
} 
}; 

https://github.com/aluzardo/protractor-cucumber-tests/blob/master/conf-appium-1.js

Derzeit meine Tests laufen, aber mit unterschiedlichen conf.js Dateien und verschiedene Instanzen von appium Server ausgeführt wird.

muss ich Selen-Server auf Port 4444, ein appium Server auf Port 4723 und andere appium Server auf Port 4747. Und laufen die drei Skripte zur gleichen Zeit mit diesem Befehl auszuführen:

protractor conf.js & protractor conf-appium.js & protractor conf-appium-1.js 

Normalerweise sind die Testdurchlauf erfolgreich, aber manchmal diesen Fehler erhalte ich:

WebDriverError: An unknown server-side error occurred while processing the command. Original error: Could not proxy. Proxy error: Could not proxy command to remote server. Original error: Error: socket hang up 

gibt es richtigen Weg, um Config Winkelmesser und appium Tests in mehreren Geräten laufen zu lassen?

Antwort

0

Wie ich verstehe, führen Sie Tests in BROWSERS nur in Web & Mobile, warum überhaupt Appium verwenden? Sie können dieselben Tests durchführen, indem Sie einfach die Fenstergröße ändern.

Ich glaube, es sei denn, Sie sind Native/Hybrid-Anwendungen aus der Automatisierung Perspektive ist es gleich. Und in wenigen Ausnahmefällen (Locator Änderungen) können separat innerhalb der Seite Objekte behandelt werden.

+0

Wie Sie in der ersten Konfiguration sehen können, teste ich Browser mit Größenanpassung der Fenster. Aber ich möchte den Test auf echten Geräten ausführen, weil der native mobile Browser nicht gleich dem Desktop-Browser ist. Ich möchte ein echtes env erstellen. Danke für Ihre Lösung, aber ich möchte Appium verwenden. –

Verwandte Themen