软件测试之基本知识点(二)

你所了解的黑盒测试方法有哪些?并简单介绍下其应用场景?

  • 黑盒测试方法等价类划分、边界值方法、因果图法、判定表、场景法、正交法、大纲法、状态图法。
  • 应用场景:
    业务表述层使用:业务分析法、大纲法
    剧本层使用:场景法、状态转换
    对象模型层使用:因果图、正交法
    抽象数据层使用:边界值、等价类划分
    用例表述层:详细测试用例
    测试脚本层:编写自动化测试脚本

简述常用的 bug 管理或者用例管理工具, 并且描述其中的一个工作流程?

  • 此处以 Bugfree 为例的工作流程:测试人员新提交 bug 到 bugfree 上,开发人员对 bug 进行解决,解决之后测试人员对已解决的 bug 进行回归验证,已经成功修改的 bug 进行关闭,没有成功解决的 bug 变成新 bug,让开发继续修改。

什么是正交实验法,使用场景是什么?

  • 正交实验法是从大量的(实验)数据(测试例)中挑选适量的,有代表性的点(例),从而合理地安排实验(测试)的一种科学实验设计方法。
  • 使用场景:利用因果图来设计测试用例时, 作为输入条件的原因与输出结果之间的因果关系,有时很难从软件需求规格说明中得到。往往因果关系非常庞大,以至于据此因果图而得到的测试用例数目多的惊人,给软件测试带来沉重的负担,为
    了有效地,合理地减少测试的工时与费用,可利用正交实验设计方法进行测试用例的设计。

请简单描述测试工具 loadrunner 、selenium 、QTP 的产品用途,并介绍你在项目中实际用到的功能模块?

  • 三种测试工具的用途分别如下:
  • loadrunner 的用途:LR 是一个性能测试工具,一般用来做压力、负载测试等性能测试。可以创建虚拟用户、创建真实的负载、定位性能问题、分析结果、重复测试、测试系统行为,优化系统性能。
  • Selenium 用途:Selenium 是一个开源的功能自动化测试工具,脚本语言可以是:Java、.Net、Perl 等不同语言的测试脚本。并支持自动录制动作和自动生成脚本的功能。在浏览器兼容性方面有很好的支持。
  • QTP 的用途:QTP 是一个 GUI 界面功能自动化测试工具,简单来说就是可以录制人操作,然后回放,工具根据录制好的人操作来操作系统,这样可以很好地进行回归测试。也可以使用 VBS 脚本语言进行编写脚本来使用。

简述 selenium grid 的作用?

  • Selenium Grid 是一种自动化的测试辅助工具,Grid 通过利用现有的计算机基础设施,能加快 Web-app 的功能测试。利用 Grid,可以很方便地同时在多台机器上和异构环境中并行运行多个测试事例。

高质量的自动化脚本应该具备哪些特性?

  • 1、不需要深入的工作或计划
    2、可以加快测试进度开始自动化
    3、对实际执行操作可以审计跟踪
    4、用户不必是编程人员就能执行
    5、可以提供良好的(软件或工具)的演示

编写测试计划文档的目的是什么?测试计划文档的内容主要包括哪些?并简单介绍其作用?

  • 测试计划文档的目的:指导测试组成员进行工作和让测试组以外的项目成员了解测试工作。
  • 测试计划文档的内容:项目背景、计划文档的受众、参考文档、提交的文档、测试术语、测试范围、测试策略、测试资源及分工、测试进度、风险说明及应对方案、测试通过的标准。
  • 测试计划的作用:
    1.把知识和经验可以直接转化成执行任务的具体方法
    2.促进团队间关于测试任务和过程的交流
    3.为组织、安排和管理测试项目提供一个整体框架
    4.对项目执行过程中的风险进行分析,并制定相关的应对策略

项目某一轮系统测试完成后,达到系统测试结束的参考指标或规则通常有哪些?

  • (1) 基本功能需求和非功能需求都实现了
    (2) 全部测试用例回归测试都执行完毕了
    (3) 框架不用再变了,缺陷数呈现收敛趋势,并趋于平稳的走势
    (4) 规定等级的 bug 都修复了,比如 1、2 级的 bug 和紧急的 bug 都修复
    了,90%的 3 级 bug 也都解决了。没修复的都得到了审核和批准。

Unix/Linux 查看所有属于 java 进程的命令是?并将其批处理杀掉?

  • ps –a | grep java
  • 批处理杀掉进程的命令是:ps –ef|grep java|grep –v grep|awk ‘kill -9’
  • Linux/unix 查看内存的命令是什么?查看某文件末尾五行的命令是什么?
  • Linux/unix 查看内存的命令:cat /proc/meminfo、查看某文件末尾五行的命令:tail -n 5 filename

java 中 sleep()和 和 wait() 的区别?抽象类和接口的主要区别是?

  • java 中 sleep()和 wait()的区别:
    1、这两个方法来自不同的类分别是 Thread 和 Object
    2、最主要是 sleep 方法没有释放锁,而 wait 方法释放了锁,使得其他线程可以
    使用同步控制块或者方法。
    3、wait,notify 和 notifyAll 只能在同步控制方法或者同步控制块里面使用,而sleep 可以在任何地方使用
    4、sleep 必须捕获异常,而 wait,notify 和 notifyAll 不需要捕获异常

抽象类和接口的主要区别

  • 第一点. 接口是抽象类的变体,接口中所有的方法都是抽象的。而抽象类是声
    明方法的存在而不去实现它的类。
    第二点. 接口可以多继承,抽象类不行
    第三点. 接口定义方法,不能实现,而抽象类可以实现部分方法。
    第四点. 接口中基本数据类型为 static 而抽类象不是的。

QTP 中的 RO 和 和 TO 的区别?谈谈你生成某业务功能模的块的 QTP 脚本具体操作步骤?

  • TO 是仓库文件里的仓库对象,RO 是被测软件的实际测试对象,两者是不
    同的对象,是独立的。
    QTP 是通过 TO 来寻找和操作 RO 的,所以 TO 里必须含有 RO 的特征,这是两
    者相似的地方。
    TO 的属性可以在录制时抓取 RO 的特征属性得来,也可以在脚本运行时通过
    SetTOProperty 来随意更改,通过 GetTOProperty 来读取。
    RO 的属性可以通过 GetROProperty 来读取。没有 SetROProperty,要修改
    RO 属性,只能通过对象具体的 Method。
    TO 的属性值和对应 RO 的属性值并不一定相同,TO 的属性值可以包含通配符
    和多种可能的 RO 属性值。

关于 selenium 中 ,查找某个页面元素的常见方法有哪几种?对于窗体和页面框架:frame 切换用什么方法?

  • 1.通过id查找
    例:
    element = driver.find_element_by_id(“kw”)
    2.通过name查找
    例:
    cheese = driver.find_element_by_name(“cheese”)
    3.通过classname查找
    例:
    Cheddar

    cheeses = driver.find_elements_by_class_name(“cheese”)
    4.通过标签名查找
    例:
    frame = driver.find_element_by_tag_name(“iframe”)
    5.通过链接文本查找
    例:转到百度
    ele = driver.find_element_by_link_text(“转到百度”)
    注:有的时候,链接的文本很长,我们甚至只需要通过部分文本去找到该链接元素
    只要这个链接文本是唯一的就行
    6.通过CSS选择器查找
    eles = driver.find_element_by_css_selector(‘#choose_car option’)
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    7.通过Xpath查找
    eles = food.find_elements_by_xpath(‘./p’)
  • Switchto()

RobotFramework 框架中设置变量有几种方式?

  • 设置变量的方式:Set 赋值、Get 赋值、运行时赋值

RobotFramework 框架中调用各种 cmd 命令,用什么关键字?

  • 1.电脑cmd进入
    2.在cmd中输入相应的执行命令即可以正常执行
    3.执行完成,会显示当前用例执行情况,以及output/log/report的默认保存路径
    接下来详细说一下执行不同用例的具体指令,找到robotframework中保存代码的路径,我的放在D:\RedWorkspace
    1.执行某一个目录,一般是一个折叠的folder
    pybot D:\RedWorkspace\GMS
    2.执行suitcase,
    pybot D:\RedWorkspace\GMS\suitecase.robot
    3.执行suitcase中的某一个testcase
    pybot --test testcast in D:\RedWorkspace\GMS\suitecase.robot
    4.tags,若你在每个testcase中均设置了【tags】项,可以按照该项的值筛选执行用例
    pybot --include tagsname D:\RedWorkspace\GMS\suitecase.robot
    (中中–include可以简写为–i)
    5.更多帮助
    pybot --h

写出你常用的测试工具有哪些?

  • 比较熟悉的是 Bugfree,除此之外还有以下的一些工具:
    性能测试:Rational 系列(除了 Rational Rose ,那是做 UML 建模的)
    单元测试:CUnit(C/C++/C#)、JUnit(JAVA)
    功能测试:WinRunner
    压力测试:LoadRunner

介绍下你所经历的开发- 测试- 代码 上线的整个相关流程? 并简单描述下此流程.

  • 开发流程:设计—评审—coding—单元测试
    测试流程:设计测试用例—评审—冒烟测试—测试—测试报告
    代码上线流程:从开发本地发布到开发服务器上—测试服务器—预热
    服务器—生产服务器上—生产环境的冒烟测试
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值