What is Selenium?

Selenium is a free automated testing framework that is used to validate web applications in different browsers and platforms. To create Selenium test scripts you can use multiple programming languages such as Java, C #, Python, and more.

Here is the list of tools in Selenium:

  • Selenium Integrated Development Environment (IDE)
  • Selenium Remote Control (RC)
  • WebDriver
  • Selenium Grid

Who can learn this course?

  • Basic understanding of java or any other object-oriented programming language.
  • Should have knowledge C#, Java, Perl, PHP, Python, and Ruby.

Benifits of Selenium:

  • Language and Framework Support
  • Open Source Availability.
  • Multi-Browser Support
  • Ease Of Implementation
  • Reusability and Integrations.
  • Flexibility.

What are the features of selenium?

  • Multi-Browser Compatibility.
  • Multiple Language Support.
  • Speed and Performance.
  • Handling of Dynamic Web Elements.
  • Easy to Identify and use web elements.

How does Selenium works?

Selenium works through API commands, such as GET and POST, and Selenium will act based on script requests. Requests are then sent to the browser driver’s HTTP server as well as to browsers via HTTP.

What is the main role of Selenium in the software testing process?

Selenium has become one of the most popular testing tools, mainly because it is an open-source framework and it enables skilled testers to automate many testing processes, such as Functional Testing and Regression Testing.

Selenium Agenda:

Why is selenium popular?

Selenium has a large and active user community that provides extensive support. This makes the equipment highly resourceful and cost-effective.

To get more clarify, see these videos:

Tagged : / / / /

How to run UI testing in Docker container using Selenium

Docker is one of the revolutions technologies which has created lots of buzz in the Software development practices. Docker has not only helped to setup Continuous Integration and Delivery but also manage and replicate test environments and deploy a large at scale in no time. Here are the following advantages which benefit to testing team using docker

  • Docker will help setting up Continuous Integration and Delivery which will enable testing team to deploy and test application in very less time compare of using virtual machines.
  • Efficient software teams push code to production multiple times a day. But this only works with good processes in place. Pull requests, code reviews, and good test coverage are essential for enabling a fast pace and high output of new code. Docker will help QA team to enable this in no time
  • Docker Compose help to create a Application Stake for Developers and QA in very less time.
  • Docker allows you to run your tests in containers as well as isolate your tests in development and deployment.
  • Using Docker to manage and replicate test environments in no time.

But there is one limitation. The major problem of a Docker container for UI testing is that it does not have a screen output. There are in general two solutions:

  1. Use a headless browser such as HTMLUnit that does not require a graphical user interface or
  2. Simulate a screen output.

Recommended is second one because in this case you do not need to change my testing code to use a WebDriver for a headless browser. Moreover, headless browser may not have full functionalities of a real browser.  What I need is a display server called Xvfb or X virtual frame buffer. It performs all graphical operations in memory without showing any screen output.

You can find sample example in following urls.

https://medium.com/@yiquanzhou/run-selenium-ui-tests-in-docker-container-78be98e1b52d

http://testnblog.com/ui-automation-framework-on-docker/

Tagged : / /