Test automation framework
A test automation framework is a collection of interacting components facilitating the creation and
execution of automated tests and the results reporting.
Framework provides the solution where different tools can do their job in a unified manner
Questions to answer before framework setup
What tests does the framework need to support?
What are the requirements with regards to the reporting?
Who will be responsible for creating the tests using this framework?
What's their level of expertise?
Test automation framework benefits
Minimizes the time needed to write and maintain tests
Improves readability and reusability of the test automation code
Test automation scalability
Provides an organization-wide guideline on how to write automated tests
Provides a common platform for the automation engineer and simplifies the automation
effort
What is Appium ?
Architecture: Appium is an HTTP server that creates and handles
webdriver sessions. Appium Server is written in node.js
The basic workflow to test with Appium is the following:
Tests are written using different languages (Appium supports many of
them: Ruby, C# and Java to list some).
A server running Appium (the test server) is configured and made
available on a certain network location.
Devices, or their corresponding simulators, are connected to the test
server.
Tests are run from the test machine.
Web Driver Script
Appium Server
(Node.JS)
Automation commands are sent
via JSON
Appium Sever invoke commands
on devices
Appium cServer logs the result to
console
Client sends back notification to
the server
4.2 +
Appium Architecture