Previous Post: Good News for Selenium Testers
1. What are
the annotations used in TestNG?
@Test,
@BeforeSuite, @AfterSuite, @BeforeTest, @AfterTest, @BeforeClass, @AfterClass,
@BeforeMethod, @AfterMethod
2. How do
you read data from excel?
FileInputStream
fis = new FileInputStream (“path of excel file”);
Workbook wb
= WorkbookFactory.create (fis);
Sheet s =
wb.getSheet (“sheetName”)
String value
= s.getRow (rowNum).getCell (cellNum).getStringCellValue ();
3. What is
the use of xpath?
It is used
to find the WebElement in web page. It is very useful to identify the dynamic
web elements.
4. What are
different types of locators?
There are 8
types of locators and all are the static methods of the By class.
- By.id ()
- By.name ()
- By.tagName ()
- By.className ()
- By.linkText ()
- By.partialLinkText ()
- By.xpath
- By.cssSelector ()
5. What is
the difference between Assert and Verify?
Assert it is
used to verify the result. If the test case fails then it will stop the
execution of the test case there itself and move the control to other test
case.
Verify it is
also used to verify the result. If the test case fails then it will not stop
the execution of that test case.
6. What is
the alternate way to click on login button?
Use submit
() method but it can be used only when attribute type=submit.
7. How
do you verify if the checkbox/radio is checked or not?
We can use
isSelected () method.
Syntax – driver.findElement (By.xpath (“xpath of the checkbox/radio
button”)).isSelected ();
If the
return value of this method is true then it is checked else it is not.
8. How
do you handle alert popup?
To handle
alert popup, we need to 1st switch control to alert popup then click on ok or
cancel then move control back to main page.
Syntax:
String
mainPage = driver.getWindowHandle ();
Alert alt =
driver.switchTo ().alert (); // to move control to alert popup
alt.accept
(); // to click on ok.
alt.dismiss
(); // to click on cancel.
//Then move
the control back to main web page
driver.switchTo
().window (mainPage); → to switch back to
main page.
9. How do
you launch IE/chrome browser?
Before
launching IE or Chrome browser we need to set the System property.
//To open IE
browser
System.setProperty
(“webdriver.ie.driver”,”path of the iedriver.exe file”);
Web Driver
driver = new InternetExplorerDriver ();
//To open
Chrome browser → System.setProperty
(“webdriver.chrome.driver”,”path of the chromeDriver.exe file”);
WebDriver
driver = new ChromeDriver ();
10. How to
perform right click using WebDriver?
Use Actions
class
Actions act
= new Actions (driver); // where driver is WebDriver type
act.moveToElement(WebElement).perform();
act.contextClick
().perform ();
11. How
do perform drag and drop using WebDriver?
Use Action
class
Actions act
= new Actions (driver);
WebElement
source = driver.findElement (By.xpath (“”)); //source ele which you want to
drag
WebElement
target = driver.findElement (By.xpath (“”)); //target where you want to drop
act.dragAndDrop(source,
target).perform();
12. Give the
example for method overload in WebDriver.
Frame
(string), frame (int), and frame (WebElement).
13. How do
you upload a file?
To upload a
file we can use sendKeys() method.
driver.findElement
(By.xpath (“input field”)).sendKeys (“path of the file which u want to
upload”);
14. How do
you click on a menu item in a drop down menu?
If that menu
has been created by using select tag then we can use the methods selectByValue
() or selectByIndex () or selectByVisibleText (). These are the methods of the
Select class.
If the menu
has not been created by using the select tag then we can simply find the xpath
of that element and click on that to select.
15. How do
you simulate browser back and forward?
Driver.
Navigate ().back ();
Driver.
Navigate ().forward ();
16. How do
you get the current page URL?
driver.getCurrentUrl
();
17. What is
the difference between ‘/’ and ‘//’?
// It is
used to search in the entire structure.
/ It is used
to identify the immediate child.
18. What is
the difference between find Element and find Elements?
Both methods
are abstract method of WebDriver interface and used to find the WebElement in a
web page.
Find Element
() – it used to find the one web element. It return only one WebElement type.
FindElements
() it used to find more than one web element. It returns List of WebElement.
19. How do
you achieve synchronization in WebDriver?
We can use
implicit wait.
Syntax
driver.manage ().timeouts ().implicitly Wait (10, TimeUnit.SECONDS);
Here it will
wait for 10sec if while execution driver did not find the element in the page
immediately. This code will attach with each and every line of the script
automatically. It is not required to write every time. Just write it once after
opening the browser.
20. Write
the code for Reading and Writing to Excel through Selenium?
FileInputStream
fis = new FileInputStream (“path of excel file”);
Workbook wb
= WorkbookFactory.create (fis);
Sheet s =
wb.getSheet (“sheetName”);
String value
= s.getRow (rowNum).getCell (cellNum).getStringCellValue (); // read data
s.getRow
(rowNum).getCell (cellNum).setCellValue (“value to be set”); //write data
FileOutputStream
FOS = new FileOutputStream (“path of file”);
wb.write
(FOS); //save file
21. How to
get typed text from a textbox?
Use get
Attribute (“value”) method by passing arg as value.
String
typedText = driver.findElement (By.xpath (“xpath of box”)).get Attribute
(“value”));
22. What are
the different exceptions you got when working with WebDriver?
- ElementNotVisibleException,
- ElementNotSelectableException,
- NoAlertPresentException,
- NoSuchAttributeException,
- NoSuchWindowException,
- TimeoutException,
- WebDriverException
23. What are
the languages supported by WebDriver?
Python,
Ruby, C# and Java are all supported directly by the development team. There are
also WebDriver implementations for PHP and Perl.
24. How do
you clear the contents of a textbox in selenium?
Use clear ()
method.
driver.findElement
(By.xpath (“xpath of box”)).clear ();
25. What is
a Framework?
A framework
is set of automation guidelines which help in
Maintaining
consistency of Testing, Improves test structuring, Minimum usage of code, Less
Maintenance of code, Improve reusability, Non Technical testers can be involved
in code, Training period of using the tool can be reduced, Involves Data
wherever appropriate.
There are
five types of framework used in software automation testing:
- Data Driven Automation Framework
- Method Driven Automation Framework
- Modular Automation Framework
- Keyword Driven Automation Framework
- Hybrid Automation Framework, it’s basically
combination of different frameworks. (1+2+3).
26. What are
the prerequisites to run selenium WebDriver?
JDK,
Eclipse, WebDriver (selenium standalone jar file), browser, application to be
tested.
27. What are
the advantages of selenium WebDriver?
a) It
supports with most of the browsers like Firefox, IE, Chrome, Safari, Opera etc.
b) It
supports with most of the language like Java, Python, Ruby, C# etc.
b) Doesn’t
require to start server before executing the test script.
c) It has
actual core API which has binding in a range of languages.
d) It
supports of moving mouse cursors.
e) It
supports to test iphone/Android applications.
28. What is
WebDriverBackedSelenium?
WebDriverBackedSelenium
is a kind of class name where we can create an object for it as below:
Selenium
WebDriver= new WebDriverBackedSelenium (WebDriver object name, “URL path of
website”)
The main use
of this is when we want to write code using both WebDriver and Selenium RC , we
must use above created object to use selenium commands.
29. How to
invoke an application in WebDriver?
driver. get
(“url”); or driver. Navigate ().to (“url”);
30. What is
Selenium Grid?
Selenium
Grid allows you to run your tests on different machines against different
browsers in parallel. That is, running multiple tests at the same time against
different machines, different browsers and operating systems. Essentially,
Selenium Grid support distributed test execution. It allows for running your
tests in a distributed test execution environment.
31. How to
get the number of frames on a page?
List <
WebElement> frames List = driver.findElements (By.xpath (“//iframe”));
int
numOfFrames = frameList.size ();
32. How do
you simulate scroll down action?
JavaScript
Executor jsx = (JavaScript Executor) driver;
jsx.executeScript
(“window.scrollBy (0, 4500)”, “”); //scroll down, value 4500 you can change as
per your req
jsx.executeScript
(“window.scrollBy (450,0)”, “”); //scroll up
public class
Scroll Down {
public
static void main (String[] args) throws Interrupted Exception {
WebDriver
driver = new Firefox Driver ();
driver.manage
().timeouts ().implicitly Wait (10, TimeUnit.SECONDS);
}
}
33. What is
the command line we have to write inside a .bat file to execute a selenium
project when we are using TestNG?
Java cp bin;
jars/* org.testng.TestNG testng.xml
34. Which is
the package which is to be imported while working with WebDriver?
org.openqa.selenium
35. How to
check if an element is visible on the web page?
Use is
Displayed() method.The return type of the method is Boolean.So if it return
true then element is visible else not visible.
driver.findElement
(By.xpath (“xpath of element”)).is Displayed ();
36. How to
check if a button is enabled on the page?
Use is
Enabled () method. The return type of the method is Boolean. So if it return
true then button is enabled else not enabled.
driver.findElement
(By.xpath (“xpath of button”)).is Enabled ();
37. How to
check if a text is highlighted on the page ?
To identify
weather color for a field is different or not,
String color
= driver.findElement (By.xpath (“//a [text () =’Shop’]”)).getCssValue
(“color”);
String
backcolor = driver.findElement (By.xpath (“//a [text () =’Shop’]”)).getCssValue
(“backgroundcolor”);
System.out.println
(color);
System.out.println
(backcolor);
Here if both
color and back color different then that me that element is in different color.
38. How to
check the checkbox or radio button is selected?
Use
isSelected () method to identify. The return type of the method is Boolean. So
if it return true then button is selected else not enabled.
driver.findElement
(By.xpath (“xpath of button”)).isSelected ();
39. How to
get the title of the page?
Use getTitle
() method.
Syntax:
driver.getTitle ();
40. How does
u get the width of the textbox?
driver.findElement
(By.xpath (“xpath of textbox”)).getSize().getWidth ();
driver.findElement
(By.xpath (“xpath of textbox”)).getSize().getHeight();
41. How do u
get the attribute of the web element?
driver.getElement
(By.tagName (“img”)).getAttribute(“src”) will give you the src attribute of
this tag. Similarly, you can get the values of attributes such as title, alt
etc.
Similarly
you can get CSS properties of any tag by using getCssValue (“some property
name”).
42. How to
check whether a text is underlined or not?
Identify by
getCssValue (“borderbottom”) or sometime getCssValue (“text decoration”) method
if the CssValue is ‘underline’ for that WebElement or not.
ex : This is
for when moving cursor over element that is going to be underlined or not
public class
UnderLine {
public
static void main (String [] args) {
WebDriver
driver = new Firefox Driver();
driver.manage
().timeouts ().implicitly Wait (10, TimeUnit.SECONDS);
driver.get
(“https://www.google.co.in/?gfe_rd=ctrl&ei=bXAwU8jYN4W6iAf8zIDgDA&gws_rd=cr“);
String
cssValue= driver.findElement (By.xpath
(“//a[text()=’Hindi’]”)).getCssValue(“textdecoration”);
System.out.println
(“value”+cssValue);
Actions act
= new Actions(driver);
act.moveToElement
(driver.findElement (By.xpath (“//a[text()=’Hindi’]”))).perform();
String
cssValue1= driver.findElement (By.xpath
(“//a[text()=’Hindi’]”)).getCssValue(“textdecoration”);
System.out.println
(“value over”+cssValue1);
driver.close
();
}
}
43. How to
change the URL on a webpage using selenium web driver ?
driver. get
(“url1”);
driver. get
(“url2”);
44. How to
hover the mouse on an element?
Actions act
= new Actions (driver);
act.moveToElement
(WebElement); //WebElement on which you want to move cursor
45. What is
the use of get Options () method?
get Options
() is used to get the selected option from the dropdown list.
46. What is
the use of deselect All () method?
It is used
to deselect all the options which have been selected from the dropdown list.
47. Is
WebElement an interface or a class?
WebDriver is
an Interface.
48. Firefox
Driver is class or an interface and from where is it inherited ?
Firefox
Driver is a class. It implements all the methods of WebDriver interface.
49. What is
the difference b/w close () and quit ()?
close () –
it will close the browser where the control is.
quit () – it
will close all the browsers opened by WebDriver.
50. Can
Selenium handle windows based pop up?
Selenium is
an automation testing tool which supports only web application testing.
Therefore, windows pop up cannot be handled using Selenium.
Quick Links:
- Why Seleniumis widely used?
- Advantagesof Learning Java + Selenium
- Top 5 Selenium Webdriver coding tips
Comments
Post a Comment