弱网测试,你真的会做吗?

相信很多小伙伴在面试的时候,可能会被问到,如果一个功能要进行弱网测试的时候,你会怎么做呢?

一个功能需要做弱网测试,你会怎么做?

首先,我们要做的第一点就是需要分析这个功能为什么要做弱网测试,这样才会有针对性的去进行弱网测试。

通常一个功能在需要做弱网测试的时候,通常有两种原因。

  1. 原因一: 我们需要去看一下这个功能在客户端弱网状态下,所呈现的形式是怎么样的,是否会影响到我们的用户操作及体验。
  2. 原因二:也是比较重要的,就是我们这个功能他有网络相关的逻辑。

什么是网络相关的逻辑?

非常典型的功能,就是上传和下载。比如我们日常的看图片,或者看视频的时候,经常服务端就会有这样的逻辑,根据你客户端的状态,返回不同的分辨率或者视频,还有一种就是客户端可能在你发生网络切换的时候,会有对应的提示,这样的逻辑就是网络相关的逻辑。

怎么去做弱网测试呢?

如果你只是想要去查看一下弱网状态下的用户体验,那么方式有非常多,如 CharlesFiddler 等,(下方内容中会详细描述如何使用 charles模拟弱网环境)都可以设置弱网状态,我们只需要将当前所在的网络调慢即可。

但是如果说我们需要测试网络相关的逻辑,那就不是简单的调慢网速就可以了。我们需要根据我们的业务逻辑也进行具体的网络测试。

比如说我们的业务逻辑是,2G、3G、4G,WIFI、不同的网络下,给用户对应的分辨率。那么我们就需要在服务端不同的条件逻辑判断下,去测试不同的分辨率。

弱网测试的关注指标

各个网络功能测试

  1. 测试 WIFI/4G/3G/2G/无网 状态下的用户体验
  2. 高延时高丢包、假热点

在弱网测试过程中,我们可以借助 tc工具

通常我们是在应用服务器上使用tc工具模拟网络丢包。tc工具是工作在服务端的,是专门针对网卡来进行一些相关的策略的。比如当我们请求传到网卡的时候,其实这个时候请求还没有到程序里面,那我们可以在网卡出来的时候加长延时时间或者丢包。

关于如何模拟 延时、丢包,可以查看我的这篇博客。: 《Linux环境下模拟延时和丢包实现–tc》

无网络测试

测试断网状态下,各个功能是否会受到影响。通常程序会提供一个 无网络的 toast 提示或者兜底页。

在这里插入图片描述

网络切换测试

测试切换不同的网络环境,如 wifi切换至 4G、2G等,功能是否正常,弱网下,重复提交,事务的处理。

也需要校验弱网状态下的用户体验,如:

  1. 响应时间:安卓手机无响应报 ANR ,ios手机响应超时也会有提示
  2. 加载图标:loading、进度条

异常机制

同样也需要测试弱网状态下的 异常信息容错机制超时机制重连机制

利用 charles 模拟弱网环境

点击 proxy --> Throttle Settings, 打开网络设置页面。
在这里插入图片描述
在这里插入图片描述
首先勾选Enable Throttling,在Throttling preset中可以选择工具默认配置的一些网络状况。

在这里插入图片描述
配置参数解析

在这里插入图片描述

配置参数名称配置参数说明
bandwidth带宽,即上行、下行数据传输速度
utilisation带宽可用率,大部分modern是100%
round-trip latency第一个请求的时延,单位是毫秒
MTU最大传输单元,即TCP包的最大size,可以更真实模拟TCP层,每次传输的分包情况。
Releability指连接的可靠性。这里指的是10kb的可靠率。用于模拟网络不稳定。
Stability连接稳定性,也会影响带宽可用性。用于模拟移动网络,移动网络连接一般不可靠。

如果测试中,我们只需要针对部分域名的请求进行网络控制的话,可以勾选 only for selected hosts选项,添加hosts。

在这里插入图片描述
进入添加hosts页面,输入指定的参数,不需要的话填*号,填写完成后点击ok

在这里插入图片描述
点击ok保存就可以了。

在这里插入图片描述

  • 9
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: "弱网测试" 是指在网络环境较差的情况下对软件或系统的测试。这种测试可以帮助开发人员了解在网络环境不稳定或带宽有限的情况下,软件或系统的表现如何。 要进行弱网测试,可以使用以下步骤: 1. 定义网络环境:需要确定测试的网络环境,例如带宽、延迟、丢包率等。 2. 选择工具:可以使用专业的网络模拟工具,例如 Network Emulator 或 WANem 等,来模拟弱网环境。 3. 准备测试环境:需要在模拟的弱网环境中准备测试环境,并准备好测试数据。 4. 进行测试:在模拟的弱网环境中进行测试,对软件或系统的性能、可用性和用户体验进行评估。 5. 分析结果:分析测试结果,了解软件或系统在弱网环境下的表现情况,并找出可能的问题和改进方案。 通过这样的测试,可以帮助开发人员提高软件或系统在弱网环境下的可用性和用户体验,并为今后的研发和改 ### 回答2: 弱网测试是一种用于评估网络性能和稳定性的测试方法,主要用于模拟网络条件较差或不稳定的情况下,评估系统在此环境下的表现。以下是进行弱网测试的一般步骤: 1. 需求分析:明确测试需求和目的,确定要模拟的弱网环境类型,如高延迟、低带宽、丢包率等。 2. 环境搭建:利用专业的弱网测试工具或设备来模拟弱网条件,如使用网络模拟器或专用网络测试仪器等。 3. 网络特性设置:根据需求,设置相应的网络参数,如延迟时间、带宽限制、丢包率等。可以通过限制带宽、增加网络延迟、人为干扰网络等手段来模拟不同的弱网场景。 4. 测试执行:在弱网环境下,执行各项测试用例,记录系统的性能数据和特征,如响应时间、吞吐量、丢包情况等。可以使用自动化测试工具来进行测试,也可以进行手动测试。 5. 数据分析和评估:对测试数据进行分析和评估,比较系统在弱网环境与正常网络环境下的性能差异,评估系统对弱网环境的适应能力和稳定性。根据测试结果,评估系统的弱网性能,发现并解决潜在的问题。 6. 结果报告:整理测试结果和评估报告,向相关人员进行汇报,提供改进建议和解决方案。弱网测试的结果可以用于优化系统性能、改进网络架构、提高用户体验等方面的决策。 弱网测试是保障系统在不稳定网络环境下正常运行的重要手段,能够帮助开发人员和运维人员找出系统中的性能瓶颈和不足之处,从而提高系统的可靠性和稳定性。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

七月的小尾巴

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

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

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

打赏作者

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

抵扣说明:

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

余额充值