0


Selenium面试题(一)

本文包含了关于Selenium WebDriver的一系列面试问题及其答案,涉及了Selenium的基本操作、高级功能以及与TestNG的集成等内容。

关于TestNG注解

  • @Test@BeforeSuite@AfterSuite@BeforeTest@AfterTest@BeforeClass@AfterClass@BeforeMethod@AfterMethod:这些注解用于控制测试用例的执行顺序和生命周期。

读取Excel数据

  • 如何从Excel文件中读取数据?FileInputStream fis =newFileInputStream("Excel文件路径");Workbook wb =WorkbookFactory.create(fis);Sheet s = wb.getSheet("sheetName");String value = s.getRow(rowNum).getCell(cellNum).getStringCellValue();

XPath的作用

  • XPath是用来在网页上查找WebElement的。它对于识别动态Web元素非常有用。

不同类型的定位符

  • Selenium支持八种类型的定位符,这些都是By类的静态方法:By.id()By.name()By.tagName()By.className()By.linkText()By.partialLinkText()By.xpathBy.cssSelector

Assert和Verify的区别

  • Assert:用于验证结果。如果测试用例失败,则停止执行该测试用例,并将控制权移交给其他测试用例。
  • Verify:也用于验证结果。如果测试用例失败,则不会停止该测试用例的执行。

替代点击登录按钮的方式

  • 如果登录按钮的type属性为submit,可以使用submit()方法代替点击操作。

验证复选框/单选按钮是否被选中

  • 可以使用isSelected()方法来验证。driver.findElement(By.xpath("复选框/单选按钮的XPath")).isSelected();

处理Alert弹出窗口

  • 要处理Alert弹出窗口,首先需要切换到Alert窗口,然后点击确定或取消,最后将控制权切换回主页面。Alert alt = driver.switchTo().alert();alt.accept();// 点击确定alt.dismiss();// 点击取消driver.switchTo().defaultContent();// 切换回主页面

启动IE/Chrome浏览器

  • 在启动IE或Chrome浏览器之前,需要设置系统属性。System.setProperty("webdriver.ie.driver","IEDriverServer.exe的路径");WebDriver driver =newInternetExplorerDriver();System.setProperty("webdriver.chrome.driver","ChromeDriver.exe的路径");WebDriver driver =newChromeDriver();

执行右键点击

  • 使用Actions类来执行右键点击操作。Actions act =newActions(driver);act.moveToElement(webElement).perform();act.contextClick().perform();

执行拖拽和释放

  • 使用Actions类来执行拖拽和释放操作。Actions act =newActions(driver);WebElement source = driver.findElement(By.xpath("要拖拽的元素XPath"));WebElement target = driver.findElement(By.xpath("放置位置XPath"));act.dragAndDrop(source, target).perform();

方法重载的例子

  • frame(String)frame(int)frame(WebElement):这些是WebDriver中的方法重载例子。

文件上传

  • 上传文件可以使用sendKeys()方法。driver.findElement(By.xpath("输入字段XPath")).sendKeys("要上传文件的路径");

点击下拉菜单项

  • 如果下拉菜单是由select标签创建的,则可以使用Select类的方法selectByValue()selectByIndex()selectByVisibleText()来选择项目。如果不是由select标签创建的,则可以直接查找该项目的XPath并点击。

模拟浏览器前进和后退

  • driver.navigate().back();
  • driver.navigate().forward();

获取当前页面URL

  • 使用driver.getCurrentUrl()方法。

隐式等待

  • 可以使用隐式等待。driver.manage().timeouts().implicitlyWait(10,TimeUnit.SECONDS);

读写Excel文件

  • 读取Excel文件中的数据。FileInputStream fis =newFileInputStream("Excel文件路径");Workbook wb =WorkbookFactory.create(fis);Sheet s = wb.getSheet("sheetName");String value = s.getRow(rowNum).getCell(cellNum).getStringCellValue();
  • 写入Excel文件。s.getRow(rowNum).getCell(cellNum).setCellValue("要设置的值");FileOutputStream fos =newFileOutputStream("文件路径");wb.write(fos);

获取输入框中输入的文本

  • 使用getAttribute("value")方法。String typedText = driver.findElement(By.xpath("输入框XPath")).getAttribute("value");

WebDriver中遇到的不同异常

  • ElementNotVisibleExceptionElementNotSelectableExceptionNoAlertPresentExceptionNoSuchAttributeExceptionNoSuchWindowExceptionTimeoutExceptionWebDriverException等。

清除输入框中的内容

  • 使用clear()方法。driver.findElement(By.xpath("输入框XPath")).clear();

这些面试问题和答案涵盖了Selenium WebDriver的一些基本和进阶操作,有助于准备Selenium相关的技术面试。


本文转载自: https://blog.csdn.net/TalorSwfit20111208/article/details/142071155
版权归原作者 知识的宝藏 所有, 如有侵权,请联系我们删除。

“Selenium面试题(一)”的评论:

还没有评论