Countless hours are spent testing a web app in and out of the local development environment to ensure it works properly. Hundreds of test case scenarious were enacted and reenacted on all benchmarked browsers before selenium, with manual testers indicating what broke and attempting to locate the source of the failure.
An end-to-end system test could take anything
from days to weeks to complete, depending on the size of the manual testing
team.
What is Selenium?
Selenium is an open-source web browser automation
tool. It provides a single interface for writing test scripts in a variety of
programming languages, including Ruby, Java, NodeJS, PHP, Perl, Python, and C#.
The scripts are executed by a browser-driver on a
browser-instance on your device.
Selenium Features
· Selenium is an open source
and portable web testing framework
· Selenium IDE has a playback
and recording feature that allows you to create tests without learning a test
scripting language.
· It is widely used as the top
cloud-based testing tool, allowing testers to record their actions and export
them as reusable scripts via a user-friendly interface.
· Selenium supports many
operating systems, browsers and programming languages.
- Programming Languages : C#, Java, Phython,
PHP, Ruby, Perl, and JavaScript
-
Operating Systems: Android, iOS, WIndows, Linux, Mac, Solaries
-
Browsers: Google Chrome, Mozilla Firefox, Internet Explorer, Edge, Opera,
Safari
· It also allows for parallel
test execution, which saves time and improves test efficiency.
· For source code compilation,
selenium can be integrated with frameworks like Ant and Maven.
· For application testing and
report generation, Selenium can be combined with testing frameworks such as
TestNG.
· when compared to other
automation test technologies, Selenium requires less resources.
· The selenium web driver does
not need to be installed on a server, and test scripts communicate directly
with the browser.
· Selenium 2.0 is the
combination of Selenium Remote Control (RC) with the WebDriver API. This
version was created to work with dynamic web pages and Ajax.
Selenium Limitations
· Automation testing for
desktop applications are not supported by Selenium
· To execute automated tests
more effectively it requires high skill sets
· Since Selenium is open
source software, to resolve technical issues we need to relay on community
forums.
· Using Selenium we can't
perform automation tests on web services like SOAP or Rest.
· To write Selenium WebDriver
test scripts, we should be familiar with at least one of the supported
programming languages.
· Selenium has no built-in
reporting capabilities; you must to relay on plug-ins like JUnit and TestNG for
test reports.
· For image based testing we
need to integrate with Selenium with Sikuli, as it does not support testing on
images.
· When compared to vendor
products like UFT, RFT, Silk test, and others selenium takes longer to setup a
test environment
· NO one is liable for the use
of new features; they may or may not function properly.
· For Test Management,
Selenium does not provide any test tool integration.
Selenium Tool Suite
Selenium is a suite of software, not just a
single tool. Each with a different approach to support automation testing.
The four major components of Selenium are:
1. Selenium Integrated Development Environment
(IDE)
2. Selenium Remote Control
3. WebDriver
4. Selenium Grid
What Types of Testing can be Automated with
Selenium?
· Compartibility Testing
· Performance Testing
· Integration Testing
· System Testing
· End-to-End Testing
· Regression Testing
How Selenium Testing Boosts Agile Development
What is Agile?
Agile is a process for developing software. It
begins with the most basic working version of the product design - one that can
be refined over time.
A typical Agile workflow looks like the below:
· upon agreeing on the
simplest working design of the product by stakeholders.
· the design is divided into
smaller modules.
· A cross-functional team of
developers, designers, and quality Assurance personnel is allocated to each
module.
· Teams work in sprints to
develop their modules within a time-frame (iteration)- usually one to four
weeks.
· At the end of each
iteration, finished modules are put together. Tests are carried out, and the
stakeholders are shown a working product (with few problems)
No comments:
Post a Comment