2. What is Xamarin?
What is Continues Integration?
Getting your APK for google store
Deploy APK (Emulator)
TFS Build Template Integration
Why Appium?
Finding the objects
Appium Project Demo
WebDriver Common Commands
Android Emulators
Agenda
9. Appium Architecture
Web Driver Script
Appium Server
(Node.JS)
Automation commands are sent
via JSON
1
2Appium Sever invoke commands
on devices
3
Appium Server logs the result to
console
4
Client sends back notification to
the server
4.2 +
Xamarin is a cross platform development tool that allows a .NET developer to develop apps that can target multiple mobile platforms.
70-90% Shared Code
Continuous Integration is a software engineering practice in which an automated build compiles and optionally tests an app when code is added or changed by developers in the project's version control repository.
התהליך שאני הולך להראות לכם היום, לא מחייב אותכם לקפוץ למים להתחיל לשנות מטודולגיות.
תתחילו להפעיל בילד שעובד בלילה, תוסיפו טסטים. תעבו את התהליך ואז תראו אם יש צורך ואתם בשלים.
Create a Private Key – This step needs to be performed only once. A private key is necessary to digitally sign the APK. After the private key has been prepared, this step can be skipped for future release builds.
Sign the APK – This step involves signing the APK with the private key that was created in the previous step.
Zipalign the APK – Zipalign is an optimization process that is performed on an application. It enables Android to interact more efficiently with the APK at runtime. Xamarin.Android conducts a check at runtime, and will not allow the application to run if the APK has not been zipaligned.
The Android Debug Bridge (adb) provides a Unix shell that you can use to run a variety of commands on an emulator or connected device. The command binaries are stored in the file system of the emulator or device
Appium is an open source test automation tool for mobile applications. It allows you to test all the three types of mobile applications: native, hybrid and mobile web.
It also allows you to run the automated tests on actual devices, emulators and simulators.
Client/Server ArchitectureAppium is at its heart a webserver that exposes a REST API. It receives connections from a client, listens for commands, executes those commands on a mobile device, and responds with an HTTP response representing the result of the command execution. The fact that we have a client/server architecture opens up a lot of possibilities: we can write our test code in any language that has a http client API, but it is easier to use one of the Appium client libraries. We can put the server on a different machine than our tests are running on. We can write test code and rely on a cloud service like Sauce Labs to receive and interpret the commands.
For every application you want to test, you must know its package name and app activity name. So to know about these attributes, you need to download a little android app on your phone. It is called apkInfo. It will show you the package name and activityname of any android app installed on your phone. Just pass these parameters here and that app will launch on your phone by automation code.
For every application you want to test, you must know its package name and app activity name. So to know about these attributes, you need to download a little android app on your phone. It is called apkInfo. It will show you the package name and activityname of any android app installed on your phone. Just pass these parameters here and that app will launch on your phone by automation code.