Learning selenium isn't all that easy especially if you have been using either QTP or any other tool that uses simple scripting.but i have simple and strategic set of things to learn and If you go about this then you are ready for any god damn Selenium Code!
Java Introduction and Concepts
- First Java program
- Concept of class file
- Platform independence
- Data types in Java
- String class
- If statements
- While Loop
- For Loops
- Single/Two Dimensional Arrays
- Function Input Parameters
- Function Return Types
- Local/ Global Variables
- Static and Non-Static Variables
- Static and Non-Static Functions
- Objects in Java
- Call by reference and Value
- Constructors
- Inheritance
- Interface
- Overloading and Overriding Functions
- Packages
- Access modifiers - Public, Private, Default, Protected
- Exception handling with try catch block
- Throw able Class
- Final and Finally
- Throw and Throws
- Collections API
- Array List Class
- Hash Table Class
- Reflection API
- String class and functions
- Reading/Writing Text Files
- Reading Properties File in Java
- Concept of jar file
- POI API in java
- Reading/Writing Microsoft XLS Files
- Log4j API for Logging
- Configuring Junit 4 in Project/Eclipse
- Junit 4 annotation
- Running Test in Junit
- Skipping Tests
- Parametrize Tests
- Using Assertions
- Reporting Errors / Error Collector
- Batch Running - Custom Runners
- OR
- TestNg annotations
- Running a Test in TestNg
- Batch Running of tests in TestNg
- Skipping Tests
- parametrize Tests - Data Provider
- Assertions/Reporting Errors
- TestNg Reports
- XSLT report generation generation using TestNg and Ant
- Building a BAT file to run tests using ANT
- What is Ant
- Downloading and configuring Ant
- Build.xml configuration
- HTML Report generation using Ant
- XPATHS and installing firebug to get XPATHS
- Wait Commands
- Verification and Assertions
- JavaScript
- Echo, StoreEval and StoredVars Demystified
- Reading XML from JavaScript using DOM.
- Handling JavaScript Alerts
- Configuring in eclipse
- Drivers for Firefox, IE, chrome, Iphone, Android etc
- Selenium RC and WebDriver
- Firefox profile
- Close and Quit -Difference
- Importing webdriver documentation in eclipse
- WebDriver Class
- Proxy settings with webdriver
- HTMLUnit driver
- Firepath and firebug Add-ons
- Inspecting elements in Mozilla, Chrome and IE
- WebDriver Interface
- WebElement Interface
- Identifying WebElements using id, name, class
- Xpaths
- CssSelectors as compared to Xpaths
- Class attribute
- Handling Dynamic objects/ids on the page
- Working with different browsers without changing code
- Managing Input fields, Buttons and creating custom xpaths
- Managing/Identifying Links with xpaths/css selectors
- Extracting More than one object from a page
- Extracting all links of a page/Bulk extraction of objects
- Extracting Objects from a specific area of a web page
- Finding response Headers/ response code
- Finding whether object is present on page or not
- Handling drop down list
- Select Class in Selenium API
- Managing radio buttons and Checkboxes
- Hidden components
- isDisplayed function
- Taking Screenshots of the web pages
- Implicit and Explicit waits
- PageLoadTimeout Property
- WebDriverWait Class
- WebDriver.Timeout Interface
- ExpectedCondition interface and Expected Conditions class
- WaitUntil Condition
- Fluent Wait
- Managing Ajax based components
- Concepts of Set Interface in Java
- Window Handles
- Managing tabbed windows in IE, Chrome and Mozilla
- Managing popups in IE, Chrome and Mozilla
- Closing windows
- Default Popups
- Testing https websites / Managing certificate errors in https websites in IE, Chrome and Mozilla
- Dynamic WebTable Handling
- Attaching files with Selenium
- Mouse movement with Selenium- Mouse Interface
- Handling Ajax Auto suggests
- Handling Frames in Web Page
- Handling cookies
- Simulating front and back buton click on Browser using selenium
- Assigning Firefox profile parameters
- Listeners- Using WebDriverEventListener
- Finding Coordinates of a Web Object
- Actions class in Webdriver
- Drag, drop, native events
No comments:
Post a Comment