京东测开(一面)

谈一谈白盒测试

白盒测试也称为结构测试或逻辑驱动测试,是针对被测单元内部是如何进行工作的测试。它根据程序的控制结构设计测试用例,主要用于软件或程序验证。白盒测试法检查程序内部逻辑结构,对所有的逻辑路径进行测试,是一种穷举路径的测试方法,但即使每条路径都测试过了,但仍然有可能存在错误。因为:穷举路径测试无法检查出程序本身是否违反了设计规范,即程序是否是一个错误的程序;穷举路径测试不可能检查出程序因为遗漏路径而出错;穷举路径测试发现不了一些与数据相关的错误。

白盒测试需要遵循的原则有:1. 保证一个模块中的所有独立路径至少被测试一次;2. 所有逻辑值均需要测试真(true)和假(false);两种情况;3. 检查程序的内部数据结构,保证其结构的有效性;4. 在上下边界及可操作范围内运行所有循环。

常用白盒测试方法:

静态测试:不用运行程序的测试,包括代码检查、静态结构分析、代码质量度量、文档测试等等,它可以由人工进行,充分发挥人的逻辑思维优势,也可以借助软件工具(Fxcop)自动进行。

动态测试:需要执行代码,通过运行程序找到问题,包括功能确认与接口测试、覆盖率分析、性能分析、内存分析等。

白盒测试中的逻辑覆盖包括语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖。六种覆盖标准发现错误的能力呈由弱到强的变化:

1.语句覆盖每条语句至少执行一次。

2.判定覆盖每个判定的每个分支至少执行一次。

3.条件覆盖每个判定的每个条件应取到各种可能的值。

4.判定/条件覆盖同时满足判定覆盖条件覆盖。

5.条件组合覆盖每个判定中各条件的每一种组合至少出现一次。

6.路径覆盖使程序中每一条可能的路径至少执行一次。

谈一谈探索性测试用到的方法

在这里插入图片描述
常见的探索性测试的方法

  1. 指南针测试法:该方法要求测试人员严格遵守文档、用户需求或说明书来尽职尽责,非常忠实的测试每一个特性。这是最基本的的测试方法,也是我们平时测试的时候最易用到的方法。

  2. 极限测试法:向软件提出很多难以回答的问题,即找麻烦测试法,让软件性能达到最大极限、输入或者计算量达到设计的最大能力,此时可能会出现一些crash等异常情况。要创建用户确实会用到的场景,比如P图中使用自拍相机连拍、使用最大保存分辨率保存、不断快速切换前后摄像头拍照等操作。

  3. 快递测试法: 数据就像快递包裹在软件中不断流动,从数据输入开始、到存储在内存中、然后可能会被计算修改后最后输出传递给用户,达到目的地。测试人员要参与数据生命周期的每个阶段。

  4. 出租车测试法:测试人员需要和出租车司机一样熟悉到达指定位置的每条可能的路径。比如P图中素材中心使用,要考虑多路径进入情况,点击首页icon进入、素材中心点击某个素材进入、push链接带着某个素材跳转进入等情况。

  5. 出租车禁区测试法:用户无论使用哪一条路径都无法达到目的地。

  6. 遍历测试法: 选定一个目标类,然后用可以发现的最短路径来访问该目标类所包含的所有对象。有计划的进行抽查。

  7. 超模测试法:要求测试人员关心表面的东西,也就是关注测试界面。如P图中不同大小屏幕手机/不同语言环境下,在一些UI展示方面的区别、进入不同页面时,图片展示情况、不同路径进入/退出某个界面是否有异常(单图保存/多图保存后,底部p图晒图bar出现等)。

  8. 懒汉测试法:测试人员没有做很多事情不意味着软件也不做事情。接受默认值、保持输入字段继续为空,在表单中尽可能少填数据,在进入下一个界面不点击任何按钮或输入数据。

  9. 取消测试法:启动操作然后停止它。

  10. 破坏测试法:测试者要掌握某些操作成功需要的资源,从破坏应用程序的角度,如强制软件做一些操作,在不同程度上删除或者限制程序正常使用所需的资源。如P图中拍照后退后台删除原图、破坏加载的图片或者素材等。

  11. 地标测试法:把软件的某些特性定为关键点,确定起点和终点,执行程序从一个地标跳跃到另一个地标,探索应用程序,直到访问了所有的目标地标。可以探索性的设置不同的起始地标、改变地标访问顺序、反复设置并增加新的地标来创造更多的测试场景。

  12. 深巷测试法:软件最不可能被用到或最不吸引用户的特性。

  13. 强迫症测试法:反复进行同样的操作或者反复输入同样的数据,由于性能不足、恶意使用或者用户重复提交同一请求等。比如P图中重复进入退出某个界面、相机界面重复进入后取消退出等、下载中途点击取消重复操作。

  14. 放大缩小测试法:放大或者缩小图片、窗口等,可能或导致图片、界面异常;按钮遮盖等情况发生。

  15. 移动测试法:移动拖拽图片、控件至界面任意位置,可能会有不可预知的错误

  16. 恶邻测试法:需求和功能特性耦合的地方最容易出现bug,找到那些缺陷数目较多的功能特性,把这些产品特性连接起来,最好能形成文档,后续对邻近功能特性进行重点测试。比如P图中人脸选择,美容进美妆、变妆去美妆等情况,很多地方人脸选择需要记忆,用户重新选择人脸、中途切换人脸、保存/取消/切换人脸等操作数据会耦合共享;再比如一键美容、一键美妆和单项美容美妆之间的
    效果是叠加或者独立的。

出了一道SQL题

题目描述:
现有表 tb1 ,有字段 name, class, score .分别代表 姓名,所在班级,分数。
要求:用一条SQL语句查询出每个班的及格人数和不及格人数,格式为:class,及格人数,不及格人数(score>=60为及格)

select class '班级',
	sum(when score>=60 then 1 else 0 end) as 及格人数,
	sum((when score<60 then 1 else 0 end)) as 不及格人数
		from tb1;
		group by class;
//group_by的意思是根据by对数据按照哪个字段进行分组,或者是哪几个字段进行分组。
select class,
	sum(if(score>=60,1,0)) as 及格人数,
	sum(if(score<60,1,0)) as 不及格人数
	from tb1
	group by class;

你是如何测试一部电梯的

从软件测试的角度,描述怎么测试一部电梯?
系统测试:
(1)、功能测试-单个功能(单元测试)
1、电梯内各楼层键是否正常
2、电梯内开关门键是否正常
3、电梯内的报警键是否正常使用
4、电梯外的上下键是否正常
5、同时关注电梯内外的显示屏显示的电梯层数和运行方向
6、有障碍物时,电梯门的感应系统的有效情况

(2)、功能测试-模块交互(集成测试)
1.电梯当前状态是上行时,有人在X楼按下上升/下降键,电梯是否会停止
2电梯当前状态是下行时,有人在X楼按下上升/下降键,电梯是否会停止
3.在搭载满员的情况下,如有人在X楼按下上升/下降键,电梯是否会停止

(3)、性能测试
1、测试电梯负载单人时的运行情况(基准测试)
2、测试电梯承载多人时的运行情况(负载测试)
3、测试电梯在承载一定人数下较长时间的运作(稳定性测试)
4、测试电梯在更长时间运作时的运行情况(疲劳测试)
5、测试不断增加电梯内的人数导致电梯报警情况(拐点压力测试)

(4)、接口测试
1、电梯和大楼层
2、梯和摄像头
3、电梯与空调
4、电梯和对讲机(报警装置)
5、电梯与显示屏
6、电梯与其他电梯的协作能力

(5)、安全性测试
1、下坠时是否有制动装置
2、暴力破坏电梯时是否报警,
3、超重是否报警
4、超时是否自动开门
5、火灾报警后,是否允许就近停靠
6、停电情况下,电梯是否有应急电源装置

(6)、兼容性测试
1、电梯的整体和其他设备的兼容性,与大楼的兼容,与海底隧道的兼容等等
2、不同类型的电压是否兼容

(7)、用户界面测试
1、查看电梯的外观
2、查看按钮的图标显示,大小
3、查看电梯内部张贴的说明(比如报警装置的说明、称重量等)

//可安装性测试

(8)、易用性测试
1、楼层按键高度(小孩和一些身高矮的用户会按键不方便)
2、楼层按键上是否有盲文显示
\3. 电梯是否有地毯、夏天是否有空调、通风条件、照明条件、手机信号是否通畅
3、电梯是否有扶手,是否有专针对残疾人的扶手等等

(9)、验收测试
1.大量用户从1楼上电梯,去向不同的楼层。
2.大家都不同的楼层上电梯,一起到一楼。

你是如何测试矿泉水的瓶的(个人补充)

矿泉水瓶的外观测试
对于矿泉水瓶的外观测试——主要是两方面,水瓶的大小、水瓶外观设计,那具体一点来说,我们可以列举出以下一些用例:
 1)瓶子的高度、底座是否符合设计要求;
 2)瓶子的口径是否符合设计要求;
 3)瓶身上的字体颜色、大小是否符合设计要求,是否有错别字;
 4)瓶身上的纹路是否符合设计要求;
 5)瓶身上图标位置、间距是否符合设计要求;
 6)瓶子是否有异味;

矿泉水瓶的功能测试
对于矿泉水瓶来说,功能测试主要就是测试水瓶的装水、喝水的功能,具体如下:
 1)检查水瓶在装少量水、半瓶水、装满水的情况下是否会漏水;
 2)检查水瓶在装少量水、半瓶水、装满水的情况下能否喝到水;
 3)在瓶盖拧紧不漏水的情况下,分别让成年男性、成年女性和小孩尝试拧开瓶盖,看是否成功;

矿泉水瓶的性能测试
对于矿泉水瓶来说,性能测试主要是测试水瓶的抗摔、抗压、抗高低温等情况,具体如下:
 1)将空瓶、半瓶水、满瓶水分别从不同的高度摔下来,看瓶子是否摔坏;
 2)成年人从各种角度按压空瓶,看瓶子是否漏水或破裂;
 3)将空瓶和半瓶水、满瓶水分别放置于冰箱、室内和太阳光下一段时间,观察瓶子是否漏水,瓶身是否破裂;

矿泉水瓶的安全性测试
对于矿泉水瓶来说,安全性测试主要是测试水瓶使用时是否会伤害到人、是否产生对人体有害物质等,具体如下:
 1)用手去抚摸瓶身的内壁和外壁,是否感觉光滑舒适不刺手;
 2)用矿泉水瓶喝水,并转动瓶口,感受瓶口是否圆滑;
 3)空瓶长时间放置一段时间,看是否产生塑化剂或细菌;
 4)矿泉水瓶分别装满不同液体(水、碳酸饮料、果汁等),放置一段时间,看瓶身是否与液体之间发生化学反应,是否产生有毒物质或细菌;
 5)矿泉水瓶中装入热水(或放入微波炉),观察瓶子是否变形,是否有异味产生

矿泉水瓶的易用性测试
 1)用手轻拿装满水的瓶子,看是否轻易掉落,是否有防滑措施;
 2)矿泉水瓶分别装入不同温度的水,用手感受瓶身温度,看是否会烫手;
 3)分别将水瓶放在手中、口袋、包包、车上等不同位置,看是否方便携带

矿泉水瓶的兼容性测试
 1)瓶中分别装入碳酸饮料、果汁、咖啡、茶水等液体,方式一段时间后看是否变味;
 2)瓶中是否可以装入固体

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值