【测试岗】测试基础知识

本帖持续更新~~(*^▽^*)  欢迎附帖技术交流~~

1、常用的黑盒测试方法

等价类划分、边界值验证

2、软件测试考虑的核心问题

  1. 显式功能需求:软件本身要实现的具体功能
  2. 非功能需求:
  • 安全性:用户安全性、软件安全性
用户密码后台存储是否加密;用户密码在网络传输过程中是否加密;密码是否具有有效期,密码有效期到期后,是否提示需要修改密码;不登录的情况下,在浏览器中直接输入登录后的 URL 地址,验证是否会重新定向到用户登录界面;密码输入框是否不支持复制和粘贴;密码输入框内输入的密码是否都可以在页面源码模式下被查看; 用户名和密码的输入框中分别输入典型的“SQL 注入攻击”字符串,验证系统的返回页面用户名和密码的输入框中分别输入典型的“XSS 跨站脚本攻击”字符串,验证系统行为是否被篡改;连续多次登录失败情况下,系统是否会阻止后续的尝试以 应对暴力破解;同一用户在同一终端的多种浏览器上登录,验证登录功能的互斥性是否符合设计预期;同一用户先后在多台终端的浏览器上登录,验证登录是否具有互斥性。
  • 性能:并发、并行
单用户登录的响应时间是否小于 3 秒;单用户登录时,后台请求数量是否过多;高并发场景下用户登录的响应时间是否小于 5 秒;高并发场景下服务端的监控指标是否符合预期;高集合点并发场景下,是否存在资源死锁和不合理的资源等待;长时间大量用户连续登录和登出,服务器端是否存在内存泄漏。
  • 兼容性:显示正确性、功能正确性、不同浏览设备、不同分辨率、不同版本
不同浏览器下,验证登录页面的显示以及功能正确性;相同浏览器的不同版本下,验证登录页面的显示以及功能正确性;不同移动设备终端的不同浏览器下,验证登录页面的显示以及功能正确性;不同分辨率的界面下,验证登录页面的显示以及功能正确性

3、设计一个用户登录界面的测试用例

注意:需要考虑的因素主要包括:

  • 显式功能需求:是否注册、用户名、密码、验证码
  • 非功能性需求:大小写正确性、用户信息安全(初始密码、修改密码)、会话时间、快捷键、用户身份、密码/用户名长度、验证码的时效性

一般的设计: 

补充的优化:

4、好的测试用例的度量标准

  • 测试用例整体的完备性
  • 等价类划分的准确性
  • 等价类集合的完备性

5、常用的测试用例设计方法

  • 等价类划分方法
  • 边界值分析法
  • 错误推测方法

6、 单元测试

指对于软件中的最小可测试单元(函数 / 类)在与程序中的其他部分相隔离的情况下,进行检查和验证工作

7、驱动代码、桩代码、Mock代码

  • 驱动代码:调用被测函数的代码,在单元测试中,驱动代码主要包括调用被测函数前的数据准备、调用被测函数、验证相关结果三个步骤。
  • 桩代码:用来代替真实代码的临时代码。通常用来解决在A中包含未开发出的B的情况下,对A的全路径覆盖测试。
    • 桩函数要具有与原函数完全相同的原形,仅仅是内部实现不同,这样测试代码才能正确链接到桩函数;
    • 用于实现隔离和补齐的桩函数比较简单,只需保持原函数的声明,加一个空的实现,目的是通过编译链接;
    • 实现控制功能的桩函数是应用最广泛的,要根据测试用例的需要,输出合适的数据作为被测函数的内部输入
  • Mock代码:和桩代码类似,起到隔离和补齐的作用。和桩代码的本质区别是:测试期待结果的验证,Mock代码的测试结果出现在Mock函数中,而桩代码的测试结果出现在测试驱动函数中。

8、单元测试的自动化测试

  • 用例框架代码生成
  • 部分测试输入数据
  • 自动桩代码生成
  • 被测代码自动化静态分析
  • 测试覆盖率的自动统计与分析
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值