http://www.technicalpage.net/search/label/SQL

>> Why Selenium ? Advantages and Disadvantages of Selenium...

Why Selenium ?
1. Selenium is open source (free) tool for Sortware Automation.
2. It is platform independent . You can operate this in any platform : MAC , window, Linux, iphone, android , ipad . Within the same operating systems , you can run in different versions such as Window 8, Window 9 , Window 10 etc.
3. It supports multiple languages : Java , C#, Python , PHP , Perl , Ruby , .net
4. Supports multiple browsers(cross browser testing) : Mozilla (firefox) , Chrome , Internet Explorer , Microsoft Edge , Safari
5. Can be integrated with other tools such as Jenkins , TestNG , Cucumber , Junits , Maven , AutoIT, Sikuli .
6. Not a bulky tool (size in MB not in GB).
7. Supports parallel execution(using Selenium Grid)

Selenium has 4 components :
1. Selenium IDE (Integrated Development Environment)
2. Selenium RC (Remote Control)
3. WebDriver
4. Selenium Grid


Disadvantages of using Selenium:
1. Since it is an open source tool, there is no technical support.
2. Supports web applications only, does not support window or desktop applications.You need to use third party tool or libraries to work with window or desktop applications.
3. Tester has to know at least one object oriented programming language( Java , C#, Python , PHP , Perl , Ruby , .net). There is no record and replay (except Selenium IDE which is almost not used.)
4. When environment or browser or network is very slow, the webElement takes time to be displayed or to be available. Then the code fails because of not finding the element.
5. The response is slow or fast depending upon the browsers(in cross browser), operating systems . In such situations the code might pass in one browser or OS and fail in another browser or OS.
6. The xpath or locator or web element identifier might not work when used in different browsers and might fail the test.
7. Presence of frames are problems sometimes, there are many frames, some are visible and some are not. We have to identify the right frame. First of all, we need to find out if there is frame.
8. Dynamic xpath , some times we are unaware of the dynamic xpath. And we need to do some hard work to find the right xpath for the element.
9. Does not support window elements, so we have to use keyboard methods or third party tools such as autoIT.
10. Does not work with images , when needed we need to use third party tools.
11. Sometimes the code runs fast that it skips the dynamic elements, such as : after you click something or add value on text box, you should expect additional element or field, but before the additional element or field appear, it jumps to the next element and fails. Example when YES is selected , it is expected to display some additional fields and when NO selected,  it is expected to display  some additional but different fields. In such situations, before the additional fields are displayed, code jumps to next element and fails.
12. We observe more failures when used attributes directly to identify elements such as id , name , class . So needs good knowledge of xpath or CSS selector.

13. Crossbrowser testing : xpath of one browser not working in another browser. wait time in one browser not enough in another browser because of slowness. Similar issues with different versions of the browsers. sometimes the web elements are displayed differently in different browsers. So we have to adjust these also in our code.



No comments:

Post a Comment