zoukankan      html  css  js  c++  java
  • 自动化测试面试题及答案大全(4)

    1.当我们使用testng时,我们必须在.bat文件中写入以执行selenium项目的命令行是什么?
    Ans- java -cp bin; jars / * org.testng.TestNG testng.xml

    2.使用WebDriver时要导入的包是哪个?
    Ans- org.openqa.selenium

    3.识别某个字段的天气颜色是否不同 -

    String color = driver.findElement(By.xpath("//a[text()=‘Shop’]")).getCssValue(“color”);
    String backcolor = driver.findElement(By.xpath("//a[text()=‘Shop’]")).getCssValue(“background-color”);
    System.out.println(color);
    System.out.println(backcolor);
    这里如果颜色和背面颜色不同,那么这意味着元素具有不同的颜色。

    4. 如何选中复选框或单选按钮?
    Ans-使用isSelected()方法进行识别。该方法的返回类型是boolean。因此,如果它返回true,则选择按钮,否则不启用。
    driver.findElement(By.xpath(“xpath of button”)).isSelected();

    5.如何获得页面的标题?

    Ans-使用getTitle()方法。
    Syntax- driver.getTitle();

    6.你如何获得文本框的宽度?

    driver.findElement(By.xpath(“xpath of textbox ”)).getSize().getWidth();

    driver.findElement(By.xpath(“xpath of textbox ”)).getSize().getHeight();

    7.你如何获得网络元素的属性?

    Ans- driver.getElement(By.tagName(“img”))。getAttribute(“src”)将为您提供此标记的src属性。同样,您可以获取title,alt等属性的值。
    类似地,您可以使用getCssValue(“some somepepe name”)获取任何标记的CSS属性。

    8. 如何将鼠标悬停在元素上?

    Actions act = new Actions(driver);
    act.moveToElement(webelement); //webelement on which you want to move cursor

    9. getOptions()方法有什么用?
    Ans- getOptions()用于从下拉列表中获取所选选项。

    10. deSelectAll()方法有什么用?
    Ans-用于取消选择从下拉列表中选择的所有选项。

    11. WebElement是一个接口还是一个类?
    接口

    12. FirefoxDriver是类还是接口,它从哪里继承?
    Ans- FirefoxDriver是一个类。它实现了WebDriver接口的所有方法。

    13. 哪个是webdriver的超级界面?
    Ans- SearchContext。

    14.在selenium自动化测试中,你一般完成什么类型的测试?
    主要是冒烟测试和回归测试。回归测试主要写一些功能稳定,容易实现的场景,通过自动化手段去实现,节约测试时间。

    15.你是如何管理你的测试用例并执行?
    写用例和管理并执行用例,我们都需要借助单元测试框架来实现,如果是Java语言一般有junit和TestNG。例如我使用TestNG比较多,需要配置testng.xml文件来实现测试用例的执行。有时候需要配置多个testng.xml去实现不同的任务场景。再展开,可能问你一下testng框架的知识点。例如,方法依赖,用例执行优先级,数据源驱动等。

    16.关于自动化测试报告生成?
    我个人一般用TestNG原生的测试报告,也有第三方叫reportNG的插件,不过我没有实际使用过。

    17. 了解或者使用过框架不?
    类似的问题还有,你知道那些自动化测试框。
    我们知道POM自动化测试框,还有关键字驱动框架。

    18. 这个框架是你自己写的吗?
    我自己设计过POM的框架和关键字驱动框架。

    19. Selenium 特点和组成
    Selenium是一个针对web应用的开源测试框架,它的测试用例可以用html table或者html 代码或者编程语言进行开发,而且他能在几乎所有的现在的浏览器上执行。Selenium可以被部署到windows.linux.mac平台上,支持的语言有java/python/ruby/.net/perl
    特点:
    ·支持录制回放
    ·多种方式对页面元素进行定位并操作
    ·能够及进行debug和设置断点
    ·能够把测试脚本保存成html/ruby或者其他语言
    ·支持user-extensions.js形式的用户扩展
    ·能够进行页面的断言

    Selenium IDE: 是firefox的插件,可以录制/回放/测试脚本
    Selenium RC:支持程序语言(java/C#/python/ruby)编写测试用例; selenium和其他测试框架集成,比如java环境下将selenium和Junit集成,利用selenium来书写测试用例,用Junit来实现测试用例的自动化运行。
    Selenium Core:是selenium的核心,是有js和html文件组成,它是selenium IDE和selenium RC的核心引擎。
    Selenium Grid:是selenium的扩展,可以将一批selenium脚本分配到不同的测试机上同步运行。即selenium grid可以在不同的主机上建立主节点(hub)和分支节点(node), 可以使主节点上的测试用例在不同的分支节点上运行。对于不同的节点来说,可以搭建不同的测试环境(操作系统/浏览器)。
    web Driver用到的协议
    打开浏览器时:HTTP协议
    client端发送http请求到远程服务器的侦听端口:the wire protocol
    其中:
    有线协议:指的是从点到点获取数据的方式,是应用层的协议。
    HTTP协议:是用于从服务器传输超文本标记语言HTML到客户端的通信协议。是一个应用层协议,由请求/响应构成,是一个标准的客户/服务器模式。是一个无状态的协议。(无状态:对事务没有记忆能力,不会保存这次传输的信息——节约内存)

    ————————————————
    版权声明:本文为CSDN博主「测试喵」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/qq_33299873/article/details/89372384

  • 相关阅读:
    从GoogleClusterData统计每个用户的使用率、平均每次出价
    简单的大众点评爬虫
    导入GoogleClusterData到MySQL
    高斯分布(正态分布)
    解决Mysql无法导入存在null数据的问题
    使用Python操作MySQL
    [Vue warn]: Duplicate keys detected: '0'. This may cause an update error.
    css多行超出时,超出高度,显示省略号
    mock.js学习之路(二)easy-mock(Vue中使用)
    mock.js学习之路一(Vue中使用)
  • 原文地址:https://www.cnblogs.com/51QA/p/15237125.html
Copyright © 2011-2022 走看看