Learn the basic syntax and concepts of Python programming language
Understand the fundamentals of web automation and testing
Get familiar with the Playwright library and its features
Write simple scripts to automate basic web interactions
Intermediate Level (1-2 months)
Gain in-depth knowledge of Playwright's API and capabilities
Learn advanced techniques like handling dynamic content, iframes, and shadow DOM
Implement robust error handling and logging mechanisms
Integrate Playwright with testing frameworks like pytest
Understand the Page Object Model (POM) design pattern
Advanced Level (3-6 months)
Develop reusable and maintainable Playwright automation frameworks
Implement parallel and cross-browser testing
Integrate Playwright with Continuous Integration (CI) and Continuous Deployment (CD) pipelines
Create comprehensive reporting and dashboarding solutions
Stay updated with the latest Playwright updates and best practices
Factors Affecting the Timeline
Prior experience in Python and web automation: Developers with existing Python and web testing knowledge can learn Playwright more quickly.
Complexity of the application under test: More complex web applications may require more time to automate effectively.
Dedication and learning approach: Learners who dedicate more time and follow structured learning resources can progress faster.
Access to mentorship and guidance: Working with experienced Playwright practitioners can accelerate the learning curve.
Conclusion
Becoming a "decent enough" professional in Python automation using the Playwright tool typically requires 2-6 months of focused learning and practice, depending on your starting point and learning approach. Continuous upskilling and staying updated with the latest Playwright developments are essential to maintain and expand your expertise over time.
Validating the same functionality across devices would be time consuming, using the tool xcode/simulator makes tasks easy to do.
For example: sizes of the screens, font sizes, buttons, can be validated.
Validations can be made on physical device, which is the ultimate step, but in cases where we do not have the devices, a simulator is helpful.
Appium (appium.io) is an open-source tool, used to automate mobile applications, IOS, Android and support windows and
platforms like android, iOS, desktop, windows as well.
It can be used to automate native, web and hybrid mobile applications.
native- an application which is native to mobile OS like iOS or Android
web - can run in mobile web browser
hybrid- are native applications but still can be opened in a specific native container or browser.
Appium uses selenium web driver library, and the client scripts can be written in multiple programming languages Java, python, C# ruby, PHP, JavaScript and robot framework.
written in C# created in 2011 by Dan Cuellar under the name iOSAuto, 2012 made open source under Apache license. 2013- sauce labs agreed to support Appium development.
Design of Appium:
Appium uses selenium web driver script ->
and using the web driver wire protocol (Json wire protocol) the client scripts are converted into http rest-based requests->
sends to Appium server->
Appium server runs the request->
and runs automation using the native automation framework on the mobile application in the mobile device.
more info is int eh Appium documentation here https://appium.io/docs/en/about-appium/intro/
Install Apium in Windows,
option we are going tose eis from node.js
Check in command line node --v to check for the version of the node js
Apache JMeter is an Apache project used to in load test, to evaluate the performance of the applications. Let's get started in few simple steps in creating a simple test to understand the basic features of JMeter.
Accessing JMeter -the package can be downloaded from the Apache JMeter - Download Apache JMeter website and extracted, saved in the preferred location from where it could be used. The necessary pre-requisite is provided on the website.
Open the tool in windows OS by navigating to the path and double clicking the batch file, once the tool is opened
Navigate to file->new->Test Plan add necessary info and save the file.
New Test Plan creation in Apache JMeter
Once the Test Plan is created, Right click on the test plan and create a thread Group defining the total number of users, ramp-up time, etc.. to be used in the test.
Adding the users- ramping up and ramping down, here the users are10 and minutes to ramp-up (steadily increase the user count/simulation to do the similar actions) in the 20 seconds. Adding Samplers
Adding listeners to see the results, here we are seeing 2 listeners View results tree and View Results in table, once the test plan is run the below information can be seen.
Robot framework.org - python based framework - keyword driven approach! Ex: open browser url chrome input text id text info Close Browser
install on windows OS
1.As a pre-requisite python must be installed in the system you are going to create the automation scripts, once its installed need to check if pip is available
2. pip install robotframework
3. pip install --upgrade robotframework
4. pip install robotframework==5.0.1
to check if the robot framework is correctly installed, please follow the below commands! pip freeze
pip list
pip show robotframework
pip check robotframework
If you want to uninstall Robot framework
To check on the version of the Robot framework
robot --version
Set environment variables in the PATH, so python is accessible from across locations in the system from where the code/file is being saved.
Selenium can be considered either as API or a framework, a tool to automate web applications. It is open source and can be programmed in multiple high-level languages.
Ex: Python, Java, C#, etc...
Here, we are going to see the usage of the tool in Java. A foundation level of understanding of the core concepts and object-oriented programming is necessary.
To validate the UI scenarios using Java and Selenium, one can use the jQuery website to practice with the latest UI level usage across the website.
Cypress is a test automation tool for web applications. With scripts written in JavaScript, there are many built in commands available. Even though the tool can be used by using only JavaScript, one can use type script can be used. Note: Cypress does not use selenium - it interacts with browser directly and is fast
Oen Source and free to use for most of the features - Dashboard (optional pricing)
There are 4 steps in Cypress one must know to start with
Setup test - in IDE
Write test
Run test
View the results (Debugging, if required)
As of now, 5 Browsers are supported Chrome, Firefox, edge, electron, brave
Cypress Features:
Time Travel- snapshot is taken for every command - the screenshots can be seen from the command logs state of the application before and after the command are recorded.
Automatic Waits- For assertions - automatic waits are added by cypress - if required one can add extra wait time for a specific step.
Pre-Requisite to install and use Cypress can be seen below: OS: Windows 7 and >, Mac 10.9 and > (64 bit), Linux (ubuntu 12.4 and >, Fedora21, Debian 8(64 bit)
Before installing node, check whether node is already installed in the system, node -v or node --version to see the version of the node .js app
Here we are going to see the simplest and easiest steps about the validation of API thru automation in java using REST Assured, Junit5, MySQL
Basic knowledge on Java, Xampp, MYSQL, Maven, Junit
API-
API Request has the 4 basic info required End point - the url where the action to be made is provided here method - action to be made as get, post, put, delete on the url provided header - authorization cred required to make the request and format of how we receive the response, html, json, txt etc.. data- additional information for the api in order to fulfill the request- data - also called as payload- can be given in body or in query parameters too!
REST Assured - Uses Given, when and then approach to process the requests