【软件测试系列】之系统测试

读者大大们好呀!!!☀️☀️☀️


博客首页

🔥欢迎来到我的博客
👀期待大大的关注哦❗️❗️❗️
🚀欢迎收看我的主页文章➡️木道寻的主页

🔥前言

请添加图片描述

谈到软件测试,离不开的便是系统测试,下面笔者将从掌握技能以及实际测试方面详细的讲解一下系统测试流程

🚀过程要素

1️⃣每个系统测试过程都是由活动组成的
2️⃣每个活动都要输入(开展活动有参考资料)和输出(结束活动要提交工作成果)
3️⃣每个活动要有负责人:谁负责干什么活
4️⃣每个活动要有方法;使用工具
5️⃣每个活动要度量活动做的如何:数据度量
6️⃣每个活动的培训和参照的标准模板

🚀技能掌握

🚗web软件测试

1️⃣web软件功能测试
2️⃣web软件接口测试

  1. web协议
  2. 接口自动化测试
  3. 接口测试

3️⃣web软件性能测试
4️⃣web软件UI自动化测试

  1. web开发相关语言(HTML、CSS、JS)
  2. python语言基础
  3. unittest框架
  4. selenium框架

5️⃣web软件安全性测试

🚗移动端软件测试

1️⃣移动app测试
2️⃣微信小程序测试
3️⃣H5测试

🚀系统测试活动

🚗系统测试计划

🚲测试计划概况与人员分工

🔥输入:

  1. 软件需求规格说明书
  2. 软件项目计划
  3. 软件测试计划
  4. 软件开发计划

🔥输出:
系统测试计划STP

🔥角色和职责:
测试组长复制制定计划

🔥方法和标准
测试计划评审:评审方法
测试计划标准:计划的格式与模板

🔥系统测试计划
在这里插入图片描述

  1. 明确系统测试的组织形式
    (1)什么是组织:就是人为了完成某项工作而组成的一个团队;
    (2)在这个团队中:应该有角色划分;角色有对应的职责;
    (3)用系统测试组织形式说明团队中有哪些角色;团队中的角色的汇报沟通关系;整个团队和其他团队沟通关系;
    (4)可以通过组织形式看出整个系统测试是独立的;
    (5)可以用组织形式图+职责表表示

  2. 明确系统测试的测试对象
    (1)列出测试范围:明确说出在范围内的工作和不在范围内的工作;
    (2)从质量模型角度和功能业务角度

从质量模型角度

  • 测试范围:功能;性能;兼容
  • 不测试范围:安全—有专项安全测试小组完成;易用—最终用户都是专业业务人员没有对易用性有要求

从功能业务角度

  • 测试范围:前台注册、登录、购物、支付;后台商品管理、订单管理、广告管理;
  • 不测试范围:前台评价----共用一套评价系统比较成熟;后台的报表管理—时间有限,客户没有提出特别要求
  1. 完成系统测试的需求跟踪
    (1)要将测试范围列出的测试方向结合测试分析方法确定比较详细的测试项;在需求跟踪矩阵表中进行跟踪管理
    (2)需求跟踪矩阵表

在这里插入图片描述

上表要在整个测试过程中进行相应的维护,
直到系统测试结束。
  1. 明确系统测试的通过/失败标准
    (1)测试通过标准是客观的陈述;要用量化数据制定标准;
    (2)测试通过标准是能够判断测试工作何时结束的一个参考;
    (3)测试的通过标准与测试失败标准是相对的:有一条测试通过标准没有达到—失败
    (4)测试通过标准从测试过程与测试结果两方面考量

测试过程数据

  • 需求覆盖率:需求覆盖率不低于85%;功能需求覆盖率不低于90%;性能需求覆盖。。。;高优先级需求覆盖率达到100%;中优先级需求覆盖率达到。。。。
  • 测试用例数量:测试用例数量不少于5000条;功能测试用例。。。性能测试用例。。。某某核心业务模块测试用例数量
  • 测试工作效率:每人每天编写100条用例;每人每天执行用例120条。(按实际情况定)
  • 测试用例执行率:高优先级测试用例100%执行;中优先级等。
  • 测试用例的有效性:发现缺陷数/测试用例比例
  • 测试用例的稳定性:修改、删除测试用例数/测试用例比例

测试结果数据

  • 测试用例通过率:高优先级测试用例通过率100%;中优先级。。。
  • 缺陷的严重程度分布:致命和严重缺陷比例0;中优先级缺陷比例不能高于20%;一般缺陷为80%;
  • 缺陷原因分布:需求缺陷不能超过30%;代码原因缺陷比例。
  • 缺陷的走势:在项目的第七个月新增缺陷数量的趋势呈下降;修复缺陷的趋势在第六个月开始下降
  1. 明确系统测试的挂起标准及恢复的必要条件

  2. 明确系统测试工作任务分配

  3. 工作量估算

  4. 明确系统测试结束后应交付的测试工作产品

🚲测试计划的测试范围

🅰️web软件测试范围

1️⃣功能测试

  • 链接测试
  • 表单测试
  • cookie测试
  • 文件上传测试
  • 数据库测试

2️⃣接口测试

3️⃣性能测试

  • 负载测试
    并发数、响应时间、事务成功率、资源使用情况、吞吐量、TPS
  • 压力测试
  • 容量测试
  • 基准测试
  • 稳定性测试

4️⃣兼容性测试
不同的浏览器的兼容性
5️⃣易用性测试
6️⃣安全性测试

🅱️移动端软件测试范围

1️⃣功能测试
2️⃣性能测试

  • 移动app性能指标
    启动时间、CPU占用、内存占用、fps(每秒传输的帧数)、电量损耗、流量耗用
  • 微信小程序性能指标
    启动时间、CPU占用、内存占用、fps、缓存
  • H5性能指标
    首屏时间、请求数、传输数据大小

3️⃣兼容性测试

  • 移动app的兼容性测试
    操作系统版本、机型兼容
  • 微信小程序兼容性测试
    操作系统版本、机型兼容、微信兼容
  • H5兼容性测试
    手机浏览器兼容、机型兼容、微信兼容

4️⃣网络测试

  • 不同网络下测试
  • 网络切换测试
  • 弱网测试
  • 无网测试

🚗系统测试设计

🚲测试技术手段

🔥测试工具
自动化测试工具、接口测试工具、性能测试工具、兼容性测试工具、网络测试工具

🚲测试技术细节

🔥测试用例格式
🔥缺陷报告格式

🚗系统测试实现

🚲web软件测试用例

⭐️功能测试用例

  • 根据界面输入
  • 根据业务规则
  • 根据界面输出

⭐️接口测试用例

  • 根据接口文档请求参数

⭐️性能测试用例

  • 设计性能测试场景
    单功能开发场景、多功能开发场景

🚲移动端软件测试用例

🅰️功能测试用例
🅱️性能测试用例

🚗系统测试执行

1️⃣搭建系统测试环境
2️⃣执行系统测试用例

  • web软件测试用例执行
  • 功能测试用例执行
    👉手工测试用例执行
    1、链接测试:xenu
    2、表单测试:浏览器开发者工具F12
    3、cookie测试:浏览器开发者工具F12
    4、文件上传测试
    5、数据库测试
    👉UI自动化测试执行
    1、web基础
    HTML 标签
<!--html-->
<!--结构标签-->
<html></html>
<head></head>
<body></body>
<!--文档标签-->
<a></a>
<h></h>
<img></img>
<!--复合标签-->
<table>
<tr>
<td>表格标签<td>
</tr>
</table>
<ul>
<li>无序列表</li>
</ul>
<ol>
<li>有序列表</li>
</ol>
<select>下拉框标签</select>
<form>表单标签</form>
<frameset>
<frame>
<html>布局标签</html>
</frame>
</frameset>

css

行间样式表
内部样式表
外部样式表
修饰全部标签:标签选择器
修饰一部分标签:类选择器
修身单个标签:id选择器

JS

js与HTML内部整合
js与HTML外部整合
js函数
js函数调用
鼠标点击:onclick
鼠标移入:onmousemove
鼠标移出:onmouseout

2、python基础

# 变量
# 控制结构
'分支结构'
if:
else: 
'循环结构'
while:
continue
break
for:
# 函数
'函数模块包'
# 面向对象
'类-继承,封装,多态'
class'对象-方法'

3、selenium自动化测试

# 元素定位
'''
定位单个页面元素
'''
id定位
find_element_by_id(‘xx’)
name定位
find_element_by_name(‘xx’)
class定位
find_element_by_class_name(‘xx’)
tag name定位
find_element_by_tag_name(‘xx’)
链接文本定位
find_element_by_link_text(‘xx’)
链接部分文本定位
find_element_by_partial_link_text(‘xx’)
xpath定位
find_element_by_xpath(‘xx’)
css选择器定位
find_element_by_css_selector(‘xx’)
'''
定位一组页面元素
'''
find_elements系列
# 操作页面元素
# 1、启动浏览器
webdriver.Chrome()
# 2、打开页面
get('url地址')
# 3、设置浏览器窗口大小
set_window_size()
# 4、文本框输入
send_keys('文本内容')
# 5、点击
click()
# 6、提交输入
submit()
# 7、最大化
maximize_window()
# 8、刷新
refresh()
# 9、后退/前进
back()
# 10、等待:强制等待、隐式等待、显示等待
sleep()
implicitly_wait()
WebDriverWait()
# 11、切换窗口、切换框架
switch_to.windows()
switch_to.frame()
# 12、下拉列表选择
select_by_value()
select_by_visible_text()
select_by_index()
# 13、js弹窗处理
switch_to.alert
# 14、js代码调用
execute_script()
# 15、窗口截图
get_screenshot_as_file()

4、自动化测试管理

unittest框架
# 新建测试套件
unittest.TestSuite()
# 测试用例加入测试套件
addTest()
# 执行测试套件
HTMLTestRunner().run()
      # 执行套件环境
      setUp()
      setUpClass()
      # 执行测试用例(断言)
      assertEqual()
      assertNotEqual()
      assertTrue()
      assertln()
      # 清理环境
      tearDown()
      tearDownClass()
      # 产生报告
  • 接口测试用例执行

    👉postman接口测试
    1、集合:对应项目
    2、文件夹:对应模块或接口
    3、请求:对应测试用例
    4、环境变量:接口地址变化,上下游接口数据传递
    5、断言:检查响应数据
    6、批量执行器:执行多个接口的多条测试用例 数据驱动测试:执行一个接口的多个相似测试用例
    7、swagger导入:快速添加接口
    8、jenkins集成:Newman命令化

    👉requersts库接口自动化测试
    1、自动化测试框架前置库
    2、自动化测试框架搭建
    使用接口用例数据,pymysql库封装
    调用接口,requests库封装
    logging库,框架日志管理
    pytest库封装,执行测试用例
    3、持续集成
    git管理代码
    jenkins自动化执行

  • 性能测试用例执行
    jmeter性能测试

  • 安全性测试执行
    常见漏洞:SQL 注入、XSS攻击
    测试工具:BurpSuite

  • 移动app测试用例执行

  • 手工测试用例执行
    1、功能测试用例执行:fiddler(inspectors、Auto Responder)
    2、性能测试用例:solopi
    3、兼容性测试执行:阿里云测
    4、网络测试执行:fiddler(Simulate Modem Speeds)

  • UI自动化测试用例执行
    1、appium自动化测试

  • 微信小程序测试用例执行

  • 开发版本
    1、功能测试用例执行:开发者工具Appdata
    2、性能测试用例:真机调试性能监控面板
    3、兼容性测试执行:开发者工具
    4、网络测试执行:开发者工具

  • 体验版本
    1、功能测试用例执行:fiddler
    2、性能测试用例:真机调试性能监控面板
    3、兼容性测试执行:真机测试
    4、网络测试执行:真实环境

  • 上线版本/正式版本
    1、功能测试用例执行:fiddler
    2、兼容性测试执行:真机测试
    3、网络测试执行:真实环境

  • H5测试用例执行
    1、功能测试用例执行:开发者工具
    2、性能测试用例:开发者工具
    3、兼容性测试执行:开发者工具、手机浏览器、微信
    4、网络测试执行:开发者工具
    3️⃣提交缺陷报告
    4️⃣回归测试
    5️⃣编写系统测试报告

⭐️⭐️⭐️总结

完成了系统测试的全流程,基本就迈进软件测试中级工程师的行列了,对web进行完整的测试,对移动端进行完整的测试。

✈️✈️✈️如果喜欢这篇文章的话

🙏大大们可以动动发财的小手:
👉👉👉 点赞:👍收藏:⭐️评论:✍️👈👈👈

  • 60
    点赞
  • 53
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 53
    评论
评论 53
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一川烟柳清风

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值