Appium works

Epochs - Automation for mobile apps
 
Architecture introduces a .Appium
Official website: www.appium.io
SauceLab presided over by the company. And it was introduced in Google's GATC2013 the meeting in detail.
Appium is written by express nodejs framework of the Http Server. It Your Own Appium not create a new set of test box ⼀
Frame, is the existing excellent framework integrated into ⾏ to Selenium WebDriver agreement
(JsonWireProtocol / Restful web service) system ⼀ up. This framework allows the screen for full EMPTY multi ⽅ demand.
After Appium automatically start of the test, a start ⼀ server on the device under test, to automatically monitor means Appium server
make. Different platforms (e.g., IOS, Android) Use when running a different collection and exchange shutter mode. Appium to a pile program
"Intrusive" platform, for accepting an instruction to complete the run test scripts.
characteristic:
1. Cross-platform, native hybrid webview (H5) 
2. Cross-device, android iOS 
3. Cross-app, can interact across multiple app
4. Do not rely on APP Open Source (reservations .., android Uiautomator support code supports the need for H5, where not elaborate) 
5. 支持Selenium WebDriver / Selenium Grid 
6. The cross-language, java python ruby ​​nodejs 
7. Open Source 
 
Two. Appium end Android operating mode
1. Chart
Appium <wbr>mobile <wbr>automation <wbr>framework <wbr>analysis <wbr>and <wbr>practice
 
Simple map:
Appium <wbr>mobile <wbr>automation <wbr>framework <wbr>analysis <wbr>and <wbr>practice


In Android end, appium based WebDriver, Use and advantage with Bootstrap.js, by adjusting the final Use life with UiAutomator
Order to achieve App automated testing. UiAutomator testing framework that automatically comes with Android SDK App UI test automation
Trial Java libraries.
In addition, as UiAutomator ⽀ support for H5 limited, appium introduced chromedriver be implemented based on the H5 automatic
Of.
2. The main principle:
1. WebDriver script is left of our selenium test scripts
2. The middle is played Appium service, Appium here played a Server (4723 port), with selenium
Similar Webdriver testing framework, Appium ⽀ supports standard WebDriver JSONWireProtocol. Here offer
A set of web services, Appium Server Driver receives standard web request, parses the content of the request, the frame with the corresponding tone Use
Frame response operation.
Such as: script sends a request to click a button to appium server,
3. appium server will forward the request to the middleware Bootstrap.jar, it is written in java, installed on the phone.
Bootstrap appium receiving commands (port 4724), the final command to be implemented by adjusting UiAutomator Use.
4. Perform the last row to the results returned by appium server Bootstrap
5. Further, appium also uses chromedriver to ⽀ supports H5 (webview) test.
 
Two. Appium end IOS operating mode
 
1. Chart:
Appium <wbr>mobile <wbr>automation <wbr>framework <wbr>analysis <wbr>and <wbr>practice
Simple map:
Appium <wbr>mobile <wbr>automation <wbr>framework <wbr>analysis <wbr>and <wbr>practice
In IOS end, appium Using the same set of protocols used WebDriver of ⼀. Android testing framework with end is different,
appium ios apple frame encapsulates Instruments, mainly used in the Instrument UI Automation (Apple
The automated testing framework automatically), then the START bootstrap.js feed injection line ⾏ listening device.
 
2. The main principle
1. The left side of WebDriver script is selenium test scripts
2. The middle is played Appium service, Appium here played ⼀ a Server (4723 port), with selenium
Similar Webdriver testing framework, Appium ⽀ supports standard WebDriver JSONWireProtocol. Here offer
A set of web services, Appium Server Driver receives standard web request, parses the content of the request, the frame with the corresponding tone Use
Frame response operation.
Such as: script sends a request to click a button to appium server,
3. appium server calls instruments.js start ⼀ a socket server, while a separation ⼀ submenus when running a child process line
instruments.app, the bootstrap.js (UIAutomation a script) START injection into the external device and for feeding Use line cross ⾏
mutual.
4. For the H5 operation, with the transport Use iOS webkit debug proxy implemented
http://appium.io/slate/en/v1.0.0/?java#ios-support
https://github.com/google/ios-webkit-debug-proxy

Guess you like

Origin www.cnblogs.com/lisa2016/p/11283455.html