精华内容
下载资源
问答
  • 什么是网络测试

    万次阅读 2020-09-30 10:45:36
    什么是网络测试?Web测试是用于验证网站应用程序是否可以满足特定功能,安全性,可用性,可访问性,视觉和性能标准的过程。在将代码移交给生产之前,Web测试对于捕获关键错误的应用程序的成功至...

    什么是网络测试?

    Web测试是用于验证网站应用程序是否可以满足特定功能,安全性,可用性,可访问性,视觉和性能标准的过程。在将代码移交给生产之前,Web测试对于捕获关键错误的应用程序的成功至关重要。Web测试可以分为许多组件,包括但不限于:

     •功能测试

     •可用性和视觉测试

     •性能和负载测试

    其他类型的Web测试包括界面测试,数据库测试,跨浏览器的兼容性测试等等。但是出于本页面的目的,我们将重点介绍上面突出显示的三个。

    功能测试

    功能测试可确保访问网站的用户可以执行特定目标,例如创建帐户,将商品添加到购物车或提交表单。用户可能采取的每项操作都需要检查,以确保您的产品按规范中的规定运行。有多种类型的“测试”或检查需要进行,例如:

     •  简单测试  这些测试包括检查您的链接或导航点是否已正确指向预期的URL。测试人员应始终检查网页中的所有链接,以确保没有损坏的链接。

     •  复杂表单  这些测试可确保接受用户输入,客户可以提交表单,并且表单会出现在诸如Salesforce这样的接受特定输入的数据库中。例如,如果用户不填写表单中的必填字段,会发生什么?

     •  业务工作流  这些测试着眼于测试端到端工作流业务场景。 

       情况可能包括您访问亚马逊,搜索商品,浏览一些选项,阅读评论,进行价格比较,将其添加到购物车并结帐。在每个阶段都需要检查整个工作流程,以确保它适用于整个客户的旅程。

       鉴于软件团队不断感到要更快地交付软件的压力,对拥有正确工具,团队和流程的需求变得更加关键。首先,找到正确的工具。无论是希望通过记录和重放进入测试自动化的手动测试人员,还是希望将Selenium测试集成到其连续测试管道中的高级自动化测试人员,投资于使您的生活更轻松的工具都是很重要的。此外,投资合适的团队。所有团队成员之间的协作非常重要;从开发人员到质量检查工程师,在测试和开发的首要任务上,每个人都应该保持一致。最后,重要的是要确保有正确的流程。您是否正在测试您的客户最有可能使用的最新浏览器?您是否有一个流程说,每次发布新的浏览器时,您都应该在48小时内对其上的应用程序进行测试?新设备呢?为了测试应用程序的功能正确性,需要考虑所有这些项目。

    Web测试:可用性和可视化测试

       可用性已成为开发Web应用程序的团队的重要组成部分。进行了视觉测试,以确保网站在视觉上保持一致,尤其是在不同的浏览器和移动设备或断点之间。它可以由测试人员或什至是一个小型焦点小组来执行。现在您可能想知道为什么这很重要。好吧,当用户从他们喜欢使用的任何设备导航到您的应用程序时,您都想确保他们不仅具有一致的体验,而且还具有您想要给他们的体验。

       有几种方法可以做到这一点。首先,有简单的测试。简单的测试意味着确保网页在所有浏览器中看起来都是一致的,并且内容可以按预期对齐。您是否曾经浏览过网页中元素重叠的网页?例如,提交按钮和您要填写的表单重叠。或者您尝试阅读的内容与下一个标题重叠,难以辨认。这会导致糟糕的用户体验,并且在多个设备上进行测试以确保网页的重要元素不会重叠,这可以使您避免尝试访问您的应用程序时感到沮丧。

    接下来是复杂的测试。这些包括特定于设备的项目,例如导航,或者基于表单或特定用户输入显示内容的时间。考虑各种菜单,下拉菜单,按钮或可将您定向到不同站点的链接可能会令人生畏。但是,对每个不同的导航点进行测试很重要。

       在可用性测试方面,有几种不同的工具可以使您的生活更轻松。您可以检出具有探索性测试功能的工具,这些工具使您可以在设备实验室中进行实时测试,以确保您已在用户可能与之交互的设备上进行了测试。此外,您可以寻找一种工具,该工具包括用于捕获您的网站图像并自动比较这些图像的自动屏幕截图,以发现您选择用来运行测试的各种浏览器和设备之间的布局差异。

    Web测试:性能测试

       性能测试有助于确保您的网站每次用户浏览时都能正常运行。无论用户是在星期一的凌晨3点还是在星期五的9pm访问公司的应用程序,公司都需要确保其网站和Web体验仍可提供完美的用户体验,并且不要冒险两件事-他们的品牌声誉或错过机会在赚钱上。

       对于Web应用程序的性能测试,可以完成一些不同的测试。您可能希望以各种连接速度检查应用程序的响应。应用程序是否按预期加载了其他网站供稿?您可以跟踪脚本,图像等的负载。您还想检查一下并确保在高峰使用时间内加载Web应用程序-想想Prime Day的Amazon或Cyber Monday的Walmart吧。

        实时测试使您可以在各种设备上加载应用程序,以查看加载的内容,延迟的内容以及无法正确呈现的内容。使用工具时,请确保有本机浏览器可让您完全访问浏览器本身,包括扩展程序,设置和调试工具,以用于需要调试负载测试问题的时间。除了实时测试之外,您还可以运行Selenium测试来自动跨许多不同的设备,浏览器和操作系统来呈现Web应用程序。

    推荐阅读

    扫码关注我们

    更多福利等待你发现

    展开全文
  • 常用网络测试工具

    千次阅读 2019-02-13 10:07:45
    常用网络测试工具 NC Nc全称netcat,作用: 实现任意TCP/UDP端口的侦听,nc可以作为server以TCP或UDP方式侦听指定端口 端口的扫描,nc可以作为client发起TCP或UDP连接 机器之间传输文件 机器之间网络测速 伪造包...

    常用网络测试工具

    参考

    https://www.cnblogs.com/nmap/p/6148306.html
    http://www.cnblogs.com/kerrycode/p/8092942.html

    NC

    Nc全称netcat,作用:

    1. 实现任意TCP/UDP端口的侦听,nc可以作为server以TCP或UDP方式侦听指定端口
    2. 端口的扫描,nc可以作为client发起TCP或UDP连接
    3. 机器之间传输文件
    4. 机器之间网络测速
    5. 伪造包发送给client,例如伪造sip信令

    nc的控制参数不少,常用的几个参数如下所列:

    1. -l
      用于指定nc将处于侦听模式。指定该参数,则意味着nc被当作server,侦听并接受连接,而非向其它地址发起连接。
    2. -p
      暂未用到(老版本的nc可能需要在端口号前加-p参数,下面测试环境是centos6.6,nc版本是nc-1.84,未用到-p参数)
    3. -s
      指定发送数据的源IP地址,适用于多网卡机
    4. -u
      指定nc使用UDP协议,默认为TCP
    5. -v
      输出交互或出错信息,新手调试时尤为有用
      6.-w
      超时秒数,后面跟数字
    6. -z
      表示zero,表示扫描时不发送任何数据

    nc用法1,网络连通性测试和端口扫描

    方法1

    服务器上输入” nc -l 9999” 代表 启用端口监听9999
    客户端输入”telnet 服务器ip:9999”
    或客户端输入” nc -vz -w 2 10.0.1.161 9999“
    (-v可视化,-z扫描时不发送数据,-w超时几秒,后面跟数字)

    方法2

    nc可以可以扫描连续端口,这个作用非常重要。常常可以用来扫描服务器端口,然后给服务器安全加固
    在A机器上监听2个端口,一个9999,一个9998,使用&符号丢入后台
    nc -l 9999 &
    nc -l 9998 &
    在客户端上输入
    nc -vzw 2 ipaddress 9998-999

    nc用法2,使用nc传输文件和目录

    方法1 传送文件

    nc -l port >file //监听port端口接收的文件,把接收到的数据都写到file中
    nc ipadress port < file
    例:nc -l 9995 >zabbix.txt
    nc 10.0.1.162 9995 < zabbix-release.txt

    方法2 传送目录

    步骤1,B机器先启动监听,如下
    A机器给B机器发送多个文件
    传输目录需要结合其它的命令,比如tar
    经过我的测试管道后面最后必须是 - ,不能是其余自定义的文件名

    nc -l 9995 | tar xfvz -

    步骤2,A机器打包文件并连接B机器的端口
    管道前面表示把当前目录的所有文件打包为 - ,然后使用nc发送给B机器

    tar cfz - * | nc 10.0.1.162 9995

    原理还是打包之后传输

    方法3 测试网速 (这个方法有点烦 没psping好用)

    测试网速其实利用了传输文件的原理,就是把来自一台机器的/dev/zero 发送给另一台机器的/dev/null
    就是把一台机器的无限个0,传输给另一个机器的空设备上,然后新开一个窗口使用dstat命令监测网速

    在这之前需要保证机器先安装dstat工具

    yum install -y dstat
    然后一个接收一个送出就ok了

    nc -l 9991 >/dev/null

    nc 10.0.1.161 9991 </dev/zero

    使用dstat命令查看当前网速,dstat命令比较直观,它可以查看当前cpu,磁盘,网络,内存页和系统的一些当前状态指标。
    我们只需要看下面我选中的这2列即可,recv是receive的缩写,表示接收的意思,send是发送数据,另外注意数字后面的单位B,KB,MB

    recv就是每秒接收到的 send就是每秒发送的

    PsPing–windows专属

    PSTool工具包可以从微软官方网址下载:https://docs.microsoft.com/zh-cn/sysinternals/downloads/psping 。 解压PSTools.zip包后,将psping.exe拷贝到C:\Windows\System32下

    psping有四大功能:ICMP Ping、TCP Ping、延迟测试、带宽测试

    可以输入psping -? i|t|l|b 来近一步获取参数应用

    使用实例

    默认情况下:

    • psping -n 6 192.168.142.149:80 走TCP
    • psping -n 6 192.168.142.149 走ICMP

    测试网络延迟

    psping -n 6 -w 2 -h wwww.baidu.com:80
    -n 6就是6次
    -w Warmup with the specified number of iterations (default is 5).预热次数
    -h 打印直方图

    网络带宽测试

    psping -b -l 1000 -n 2000 192.168.142.149:80

    • -b 带宽测试模式
    • -l 请求的大小。附加’k’表示千字节,'m’表示兆字节。
    • -n 发送/接收的数量。附加’s’以指定秒

    Hping介绍

    Hping是一个命令行下使用的TCP/IP数据包组装/分析工具,其命令模式很像Unix下的ping命令,但是它不仅能发送ICMP回应请求,它还可以支持TCP、UDP、ICMP和RAW-IP协议,它有一个路由跟踪模式,能够在两个相互包含的通道之间传送文件。Hping常被用于检测网络和主机,其功能非常强大,可在多种操作系统下运行,如Linux,FreeBSD,NetBSD,OpenBSD,Solaris,MacOs X,Windows。 目前最新的版本为hping3

    Hping的主要功能有:

    1、防火墙测试

    2、高级端口扫描

    3、网络检测,可以用不同的协议、服务类型(TOS)、IP分片

    4、手工探测MTU( 最大传输单元) 路径

    5、先进的路由跟踪,支持所有的协议

    6、远程操作系统探测

    7、远程的运行时间探测

    8、TCP/IP堆栈审计

    展开全文
  • 汽车CAN网络测试及自动化测试工具

    千次阅读 2019-05-10 22:50:45
    汽车CAN网络测试开发方法 一、前言 随着汽车电子技术的发展和对汽车性能要求的提高,汽车上电控单元(ECU, Electronic Control Unit)数量越来越多,各个电控单元之间的交互信息通过CAN、LIN、MOST总线组成的网络...

    汽车CAN网络测试开发方法

     一、前言

      随着汽车电子技术的发展和对汽车性能要求的提高,汽车上电控单元(ECU, Electronic Control Unit)数量越来越多,各个电控单元之间的交互信息通过CAN、LIN、MOST总线组成的网络来实现。因而对整车网络的开发显得尤为必要。当前整车网络的开发流程一般都是基于国际上通用的V模式开发流程。

      整车网络开发V模式流程包括以下几个主要方面:网络需求定义、网络规范制定、网络测试验证。当前期的网络需求定义以及网络规范制定完成后,就进入后期的网络设计与测试验证阶段,网络测试验证阶段主要是对已经设计出来的样品或产品进行网络测试验证,以确保样品或产品的功能与前期的需求一致。

       网络测试验证阶段主要从事网络测试需求分析、网络测试规范制定、网络测试系统的开发以及网络测试实施、对测试过程中出现问题进行分析等。

    二、CAN网络测试开发流程

       整车CAN网络测试开发流程主要包括以下几个方面:测试计划制订、规范制定、自动化测试系统开发、测试实施以及测试报告总结。

       测试计划制订主要考虑网络测试工作所需要的资源需求(工具需求以及人力需求等)、任务划分、时间需求等,以确保后续的工作能顺利地、有效地开展。

       测试规范的制定主要是确定网络需测试内容。在整个网络开发过程当中,网络测试规范应在网络需求规范完成后开展。网络测试的目的是确认供应商提供的 ECU产品是否符合网络需求规范的要求。正因为如此,CAN网络测试规范的制定必须依据CAN网络需求规范。测试规范里需要包含所有的测试项内容以及对每一测试项测试所需要的测试环境需求、测试步骤、测试工具需求的描述。

       测试系统开发包括软件系统开发、硬件系统开发、软硬件系统集成。软件系统开发主要包括:

    软件架构的划分;
    基于测试内容的测试程序开发;
    基于网络通信报文的库文件开发;
    用来控制测试执行等方面的测试面板开发;
    用来控制不同的测试系统使之有效工作的相关控制程序开发。

    硬件系统开发主要包括:

    网络测试辅助控制器开发;
    测试工具的选型(如程控电源、CAN网络通信设备、CAN网络干扰设备、CAN网络波形采集设备等)。

    软硬件系统集成其目的是对软件开发系统与硬件开发系统进行调试使之无缝集成在一起并有效的工作。

    测试实施是CAN网络测试的具体的实施环节,主要包括:

    测试环境的搭建(测试台架的搭建等);
    对被测ECU网络测试的执行;
    记录测试结果并保存测试记录。

       测试报告总结主要是根据测试结果对被测ECU进行分析,确定被测ECU是否符合CAN网络需求规范的要求。

     
    图1 CAN网络测试流程图
    三、CAN网络测试开发工具

       CAN网络测试开发需要以下主要的开发工具:DOORS、Visual C++、Matlab/Simulink、CANoe.Matlab Interface、CANoe、CANdela、CANoe.DiVa、CANcard、CANdb++、CANscope、CANstress、 Code Warrior、Protel等。

        DOORS为需求管理工具,可以利用该工具整理网络测试内容并对后续开发工具提供测试需求的输入。Visual C++主要用于开发硬件系统之间协调工作的控制程序和人机交互操作界面的控制程序。Matlab/Simulink和CANoe.Matlab Interface主要用于基于模型的测试内容的建模,用来实现测试代码的自动生成。CANoe为网络仿真、测试工具,在CANoe下开发网络通信相关的测试程序,同时利用CANoe生成网络测试报告。CANscope用于CAN信号物理特性的测量与分析,具有多种采样触发方式,在网络自动化测试系统中用于采集被测ECU的波形。CANstress用于干扰CAN网络通信以测试ECU及网络系统的容错能力,在网络自动化测试系统中用于干扰被测网络, CANdela用于编辑基于KWP2000和UDS的诊断数据库,CANoe.DiVa用于生成诊断相关的测试程序,其输入文件为CANdela编辑的库文件,输出文件为CANoe的诊断相关的测试程序,CANdb++用于编辑CAN通信报文的数据库。

    四、一种CAN网络自动化测试系统的实现

       根据第二节介绍的测试流程,采用第三节介绍的相应开发工具来开发出一种CAN网络自动化测试系统。该CAN自动化测试系统的功能包括:测试流程的控制、测试用例的自动执行、数据采集以及处理、自动生成测试报告。

    1)测试规范的制定:采用DOORS需求管理工具,根据网络需求规范和诊断需求规范,制定出CAN网络单元测试规范、系统测试规范和诊断测试规范;
    2)利用CANdb++进行CAN报文数据库方面的软件开发,CANdela进行诊断数据库方面的开发;
    3)根据1)制定的网络单元测试规范和系统测试规范,利用Matlab/Simulink和CANoe.Matlab Interface生成相应的测试程序,并在CANoe环境下进行集成;
    4)根据2)完成的诊断数据库,利用CANoe.DiVa生成诊断测试程序,并在CANoe环境下进行集成;
    5)利用CANoe、Matlab/Simulink和Visual C++进行控制面板方面的软件开发;
    6)根据测试规范的测试需求,利用Visual C++、Code Warrior和Protel进行网络辅助控制器以及其他诸如故障植入等方面的软硬件开发;
    7)利用Visual C++开发CANstress、CANscope和程控电源等测试工具的控制程序;
    8)利用Visual C++进行系统集成。


    网络自动化测试系统架构和示意图如图2、图3所示。


    图2 CAN网络自动测试系统


    图3 CAN网络自动化测试系统示意图
    五、结论

       本文首先详细介绍了CAN网络测试流程;其次,介绍了CAN网络测试开发所需要使用的开发工具并介绍了这些开发工具的具体功能;最后,基于该流程并利用这些开发工具,详细的介绍了开发流程中自动化测试系统的开发细节。

     

    参考https://blog.csdn.net/bonson2004/article/details/69540052

     

    展开全文
  • 网络测试工具netperf

    千次阅读 2015-10-13 10:23:01
    一般我们进行网络测试,主要是测试网络的连通性、网络带宽、网络响应时间等。常用的工具包括ping、traceroute、telnet、ftp等。如测试网络连通性,可以使用ping,traceroute,如果测试防火墙是否配置正确,可以使用...

    一般我们进行网络测试,主要是测试网络的连通性、网络带宽、网络响应时间等。常用的工具包括ping、traceroute、telnet、ftp等。如测试网络连通性,可以使用ping,traceroute,如果测试防火墙是否配置正确,可以使用telnet和traceroute -p,使用ping命令可以测试网络延迟,ftp则用来测试网络带宽。

    但如果需要做一些更为深入的测试,如测试不同包大小的不同类型的业务的网络处理能力,则需要更专业的工具,如netperf,iperf等。

    netperf测试工具介绍

    netperf是一个开源的网络性能测试工具。可以在AIX和LINUX平台上安装,支持跨平台使用。

    netperf可以进行的测试TCP网络性能、UDP网络性能,并且可以模拟Client/Server长连接或短连接场景,因此能更接近实际网络的使用环境进行测试和评估。

    安装

    官方网站可以下载源代码进行编译安装。安装过程基本上是老三步,即

    ./configcure
    make
    make install
    

    默认安装路径是/usr/local下的各目录。在AIX等系统中,可能需要自己设置PATH环境变量,或使用–prefix参数更改安装路径。

    对于SUSE,在安装中发现,在内核版本为2.6.16(SUSE 10)时,会出现编译错误:

    nettest_omni.o: In function `recv_data_no_copy':
    nettest_omni.c:(.text+0x6e44): undefined reference to `splice'
    nettest_omni.c:(.text+0x6e7b): undefined reference to `splice'
    collect2: ld returned 1 exit status
    make[3]: *** [netperf] Error 1
    make[3]: Leaving directory `/root/py/netperf-2.6.0/src'
    make[2]: *** [all-recursive] Error 1
    make[2]: Leaving directory `/root/py/netperf-2.6.0/src'
    make[1]: *** [all-recursive] Error 1
    make[1]: Leaving directory `/root/py/netperf-2.6.0'
    

    经查,splice系统调用是在2.6.17内核版本以后出现的,因此换用SUSE 11编译通过。

    如果是UBUNTU之类的版本,因为软件库中已经有了netperf,可以用包管理器安装。比如UBUNTU中使用:

    sudo apt-get install netperf
    

    使用

    启动服务

    netperf包括两个程序。一个是客户端netperf,用于模拟各类网络行为。另一个为服务器程序netserver。用于接收客户端的请求。启动服务的操作类似于:

    # netserver
    Starting netserver with host 'IN(6)ADDR_ANY' port '12865' and family AF_UNSPEC
    

    默认情况下TCP服务的监听启动在12865端口上。可以通过-p参数修改。

    未发现使用了哪个UDP端口,估计是在测试时根据netperf启用的测试项目再启用端口的。

    netperf参数说明

    netperf的参数格式如下:

    netperf [global options] -- [test options] 
    

    其中,global options为通用参数,所有测试项目都涉及或是公共的参数,常用的有:

    -H 主机名或IP 指定运行netserver的服务器的IP

    -l 测试时长 指定测试的时间长度,单位为秒

    -t 测试项目 指定测试的内容。测试项目如下:

    TCP批量数据传输测试 TCP_STREAM

                     TCP_SENDFILE
    
                     TCP_MAERTS
    

    TCP请求应答(长连接)模式测试 TCP_RR

                     TCP_CRR
    

    UCP批量数据传输测试 UDP_STREAM

                     UDP_RR
    
                     DLCO_STREAM
    
                     DLCO_RR
    
                     DLCL_STREAM
    
                     DLCL_RR
    
                     STREAM_STREAM
    
                     STREAM_RR
    
                     DG_STREAM
    
                     DG_RR
    
                     SCTP_STREAM
    
                     SCTP_STREAM_MANY
    
                     SCTP_RR
    
                     SCTP_RR_MANY
    
                     LOC_CPU
    
                     REM_CPU
    

    test specific options是测试项用的参数,它与全局参数之间要用“–”分开类似

    netperf -H 127.0.0.1 -l 30 -- -m 2048
    

    测试项参数与测试项目相关。

    常用测试项目

    网络带宽测试

    带宽测试一般使用-t TCP_STREAM测试项,这也是netperf的默认测试项目。此项测试与ftp类似可以测试系统的带宽,但可以通过参数进行更多的设置。比如:

    $ netperf -H 127.0.0.1 -l 60
    MIGRATED TCP STREAM TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to 127.0.0.1 () port 0 AF_INET : demo
    Recv   Send    Send                          
    Socket Socket  Message  Elapsed              
    Size   Size    Size     Time     Throughput  
    bytes  bytes   bytes    secs.    10^6bits/sec  
    
     87380  16384  16384    60.00    2760.70 
    

    第一列为服务端接收包的Socket缓冲区大小,这里没87380

    第二列为客户端发送数据的Socket缓冲区大小,这里为16384

    第三列为发送的消息的大小,这里为16384

    第四列为测试时长

    第五列为测试的速率,单位为M,这里结果为2.7G。因为使用的是localhost,实际是在本机的内存中收发的数据。

    TCP_STREAM的常用测试参数有:

    -s 缓冲区大小 指定客户端发送数据的缓冲区大小 -S 缓冲区大小 指定服务端接收数据的缓冲区大小

    -m 发送消息大小 单位为bytes

    -M 接收消息大小 单位为bytes

    可以调整这些参数,了解哪些因素对传输速率有影响。比如将发送缓冲变大,测试结果变化不大:

    1
    2
    3
    4
    5
    6
    7
    8
    
    $ netperf -H 127.0.0.1 -l 60 -- -s 65535
    MIGRATED TCP STREAM TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to 127.0.0.1 () port 0 AF_INET : demo
    Recv   Send    Send                          
    Socket Socket  Message  Elapsed              
    Size   Size    Size     Time     Throughput  
    bytes  bytes   bytes    secs.    10^6bits/sec  
    
     87380 131070 131070    60.00    2672.42   

    而改变接收缓冲和发包大小,则可以提升性能:

    $ netperf -H 127.0.0.1 -l 60 -- -S 65535 
    MIGRATED TCP STREAM TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to 127.0.0.1 () port 0 AF_INET : demo
    Recv   Send    Send                          
    Socket Socket  Message  Elapsed              
    Size   Size    Size     Time     Throughput  
    bytes  bytes   bytes    secs.    10^6bits/sec  
    
    131070  16384  16384    60.00    3058.22   
    $ netperf -H 127.0.0.1 -l 60 -- -m 65535
    MIGRATED TCP STREAM TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to 127.0.0.1 () port 0 AF_INET : demo
    Recv   Send    Send                          
    Socket Socket  Message  Elapsed              
    Size   Size    Size     Time     Throughput  
    bytes  bytes   bytes    secs.    10^6bits/sec  
    
     87380  16384  65535    60.00    3266.55   
    

    UDP协议的传输性能

    与网络带宽测试类似,只是更换了协议,所以这个项目是UDP_STREAM:

    $ netperf -H 127.0.0.1 -l 60 -t UDP_STREAM
    MIGRATED UDP STREAM TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to 127.0.0.1 () port 0 AF_INET : demo
    Socket  Message  Elapsed      Messages                
    Size    Size     Time         Okay Errors   Throughput
    bytes   bytes    secs            #      #   10^6bits/sec
    
    212992   65507   60.00      440506      0    3847.46
    212992           60.00      433151           3783.22
    

    与TCP_STREAM不太一样,测试结果中有两行数据。第一行是客户端的,第二行是服务端。

    第一列为缓冲区大小,在netperf测试中,两端的缓冲区大小会设置成一样大。

    第二列为消息大小

    第三列为测试传输时间

    第四列为传输数据包量,UDP由于协议不保证传输可靠性,收发消息数量不一样多,而且实际生产环境收包量可能比发包少得更多。从数据看,这个包数量应是每秒数量(消息大小和速度的单位不一样)

    最后是测试的速率,可以看到要比TCP协议快一些。这是协议决定的。

    TCP长连接请求应答模式测试

    除了网络数据传输,大量的网络流量是请求/应答式的,即一方发送一个报文,另一方回复一个。而且通常这类请求和回复的报文大小不一样大,甚至差别很大。netperf可以简单模拟这类应用场景,进行网络性能测试。测试使用类型为TCP_RR。

    最简单的TCP_RR测试如下:

    $ netperf -H 127.0.0.1 -l 60 -t TCP_RR
    MIGRATED TCP REQUEST/RESPONSE TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to 127.0.0.1 () port 0 AF_INET : demo : first burst 0
    Local /Remote
    Socket Size   Request  Resp.   Elapsed  Trans.
    Send   Recv   Size     Size    Time     Rate         
    bytes  Bytes  bytes    bytes   secs.    per sec   
    
    16384  87380  1        1       60.00    13517.65   
    16384  87380 
    

    测试结果分为两行,第一行是本地,第二行是远端(服务端)

    第一列和第二列应该还是缓冲区,只是和STREAM测试的顺序相反。

    第三、四列为请求和返回包的大小。默认为1位。

    第五列为测试时间

    第六列为交易速率,这次是笔数/每秒,不再是带宽。

    默认的包大小实际业务中不可能发生,可以通过参数进行调整,来模拟真实的情况。使用测试参数-r 请求包大小,应答包大小(-r request,response)来测试。注意此参数单位为BYTES,实际的业务一般是以字节为单位的报文:

    $ netperf -H 127.0.0.1 -l 60 -t TCP_RR -- -r 64,2048
    MIGRATED TCP REQUEST/RESPONSE TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to 127.0.0.1 () port 0 AF_INET : demo : first burst 0
    Local /Remote
    Socket Size   Request  Resp.   Elapsed  Trans.
    Send   Recv   Size     Size    Time     Rate         
    bytes  Bytes  bytes    bytes   secs.    per sec   
    
    16384  87380  64       2048    60.00    13129.09   
    16384  87380 
    

    此测试使用8字节的请求,256字节的返应答包进行测试,测试结果相对默认值轻微下降。

    TCP短连接请求应答模式测试

    TCP请求的另一大类是类似HTTP业务的短连接请求应答报文。对应的测试项是TCP_CRR:

    $ netperf -H 127.0.0.1 -l 60 -t TCP_CRR             
    MIGRATED TCP Connect/Request/Response TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to 127.0.0.1 () port 0 AF_INET : demo
    Local /Remote
    Socket Size   Request  Resp.   Elapsed  Trans.
    Send   Recv   Size     Size    Time     Rate         
    bytes  Bytes  bytes    bytes   secs.    per sec   
    
    16384  87380  1        1       60.00    2210.55   
    16384  87380 
    

    测试参数和显示与TCP_RR类似。由于业务类型的影响,速率降得比厉害。

    UDP连接请求应答模式测试

    由于UDP协议的原因,UDP请求应答不分长短连接。只有UDP_RR一个测试项目,测试参数也类似TCP类的测试:

    $ netperf -H 127.0.0.1 -l 60 -t UDP_RR              
    MIGRATED UDP REQUEST/RESPONSE TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to 127.0.0.1 () port 0 AF_INET : demo : first burst 0
    Local /Remote
    Socket Size   Request  Resp.   Elapsed  Trans.
    Send   Recv   Size     Size    Time     Rate         
    bytes  Bytes  bytes    bytes   secs.    per sec   
    
    212992 212992 1        1       60.00    15837.63   
    212992 212992
    

    理论上,UDP的测试结果要好于TCP,但在实际网络中,可能受网络设备配置等影响,存在一定未知数。

    如何进行模拟测试

    首先需要搞好测试用例。要明确业务的类型,协议,好确定选择哪个测试项目,要了解业务的特性,如一般包的大小等信息,以便选择合适的参数。这些参数可以根据业务设计来确定,也可能需要通过业务监控数据来获取。例如通过监控数据中的最大流量和最大IO量,可以大致评估一下数据包的大小,当然这种评估很不精确。

    由于决定网络性能的因素有一部分和配置相关,因此在测试中可以变更缓冲区大小等参数,以便了解是否需要对网络参数进行调整。

    展开全文
  • windows下网络测试工具

    千次阅读 2019-04-05 09:49:02
    下面列举下网工会用到的一些网络测试工具,分别为ping、telnet、tracert、tcping、psping、nc(支持UDP)、nmap我会分别列举其优缺点,来历,这也是我常用的。1.pingping 命令以前是一个很好用并且常用的网络测试工具...
  • fiddler设置网速模拟弱网络测试

    万次阅读 2018-09-29 14:42:23
    测试过程中,经常会要求测试网络情况时的一些特殊情况,这时候IOS还好说,在开发者选项中调整网络模式即可,但android就只能通过别的方式了,这里整理了通过fiddler抓包工具来设置弱网模式,在fiddler可以设置...
  • 学习使用网络测试命令

    千次阅读 2018-07-31 22:43:06
    学习使用PING、ARP -a、ipconfig等网络测试命令;找出本机以及虚拟机的MAC地址、IP地址等等信息。 一、ipconfig命令
  • app弱网络测试

    千次阅读 2015-01-16 22:16:55
    网络测试:测试手机app在连接弱网络下的表现。 原理:PC端利用软件控制wifi网络强弱,比如将网络设置成上行发包超时网络。手机连接到该wifi,此时手机处于上行发包超时网络下。然后就可以测试app的相应功能,看弱...
  • 网络测试的window bat脚本分析

    千次阅读 2017-12-01 14:57:45
    网络测试的window bat脚本分析
  • 汽车CAN网络测试开发方法

    千次阅读 2017-04-07 14:35:28
    汽车CAN网络测试开发方法  一、前言  随着汽车电子技术的发展和对汽车性能要求的提高,汽车上电控单元(ECU, Electronic Control Unit)数量越来越多,各个电控单元之间的交互信息通过CAN、LIN、MOST总线...
  • 如何模拟手机弱网络测试

    千次阅读 2017-06-30 15:13:07
    如何模拟手机弱网络测试发表于:2017-6-29 11:25 作者:51Testing 来源:51Testing软件测试网原创字体:大中小|上一篇|下一篇|打印|我要投稿|推荐标签:弱网测试 移动互联网设备与PC产品最大的不同之处就在于,PC...
  • 网络测试与分析主要内容总结

    千次阅读 2018-06-30 19:21:45
    一、网络测试与分析概述定义: 按照特定的方法在指定的网络环境中,运用测试仪器平台对计算机网络进行数据采集,并对采集到的数据进行分析处理,得到数据结果,同时对故障原因进行分析或定位。分类:1)按功能体系...
  • Ping是测试网络联接状况以及信息包发送和接收状况非常有用的工具,是网络测试最 常用的命令。Ping向目标主机(地址)发送一个回送请求数据包显卡测试命令,要求目标主机收到请求后给予答复,从而判定网络的响应时间...
  • 我常用的网络测试工具

    千次阅读 2014-05-13 11:37:19
    最近学习了一些网络测试方面的东西,先做个小结,也算给自己理清一下思路。 1. 网络相关测什么? From internet: 网络性能五项指标:Availability, Response time, networkutilization, network throughput, ...
  • 路径:系统管理员职责 - > 应用产品 -> 网络测试,或者,网络测试职责 -> 网络测试介绍一个Oracle EBS产品提供的网络测试Form(Network Test)。有的时候遇到了性能问题,但又不确定是网络问题,还是功能本身的问题...
  • udp网络测试

    千次阅读 2018-08-08 10:34:45
     通过命令ethtool -G d<NIC> rx NEW-BUFFER-SIZE可以设置RX ring的缓冲区大小,改变会立即生效不需要重启操作系统或刷新网络栈,这种变化直接作用于网卡本身而不影响操作系统,不影响操作系统内核网络栈但是会影响...
  • 网络测试及探测命令

    千次阅读 2019-08-22 18:06:15
    1、网络性能测试(iperf) iperf 是一个网络性能测试工具。Iperf可以测试最大TCP和UDP带宽性能。Iperf具有多种参数和UDP特性,可以根据需要调整。iperf可以报告带宽,延迟抖动和数据包丢失。 参数: -i 设置...
  • 实验二:网络测试命令和工具的使用   一、实验目的  1. 熟悉常用网络测试命令的语法功能;  2. 掌握常用的网络故障分析及排除的方法 二、实验内容 1、阅读相关参考资料,学习常用网络测试命令知识; 2、...
  • APP弱网络测试--基于WANem

    千次阅读 2017-02-25 16:40:03
    近日,因公司项目需要,要做弱网络测试,摸索了一番,在此记录一下。 首先是工具准备,在找工具这个路上费了挺大一番功夫,这里就简单介绍下吧,避免走弯路。App的弱网络测试,iOS可直接借助手机自带的网络状况模拟...
  • 在对Android项目进行网络测试时,特别是当与服务器有交互时,使用真实服务环境进行测试是非常不可取的,因为网络环境无法控制,容易导致用例失败。此时有测试者会自己搭建测试服务器(常用tomcat或nodejs,在此就不...
  • Facebook开源移动网络测试工具Augmented Traffic Control 摘要:Facebook宣布开源移动网络测试工具ATC,支持利用Wi-Fi网络模拟2G、2.5G、3G以及LTE 4G移动网络环境,让测试工程师们能够快速对智能手机和App在...
  • Linux网络测试工具

    千次阅读 2018-06-04 20:11:45
    1.ping命令,用来测试网络的连通性。2.netstat命令,用来显示网络状态信息-i 显示网络接口状态信息-an 显示所有监控中的服务器的Socket和正在使用Socket的程序信息-nr 显示内核路由表信-Inpt 显示TCP传输协议的连接...
  • 这一篇讲一讲在zynq开发板上面的进行网络测试。1、netperf安装目前linux下主流的网络测试工具是netperf,完全可以在zc706上运行的linux内加入netperf网络测试工具,然后用网线与电脑相连进行测试。 netperf下载地址...
  • 这一篇主要讲讲网络测试,同时也包含怎么将netperf测试工具通过petalinux工具编译进zynq中。准备:《zynq学习笔记之petalinux (3)petalinux 创建自定义工程》的工程文件my_first_proj netperf测试工具,可以直接...
  • PING、ARP -a、ipconfig等网络测试命令的使用 按下win+R快捷键,输入cmd,我们便可以进入Dos窗口(1)ipconfig/all命令 在Dos窗口中输入IPconfig/all命令,IPConfig是一个命令 他可以让你了解你的网络参数,比如你...
  • Android/IOS弱网络测试设置

    万次阅读 2014-08-11 14:49:48
    Android/IOS弱网络测试设置 Fiddler是一个web调试代理。它能够记录所有客户端和服务器间的http请求,允许你监视,设置断点,甚至修改输入输出数 据,fiddler包含了一个强大的基于事件脚本的子系统,并且能够使用...
  • telnet,icmp,ping,tracert,traceroute,网络测试
  • 无论你是一个网络维护人员,还是正在学习TCP/IP协议,了解和掌握一些常用的网络测试命令将会有助于您更快地检测到网络故障所在,同时也会有助你您了解网络通信的内幕。  下面我们逐步介绍几个常用的命令:
  • iperf网络测试工具的使用

    千次阅读 2018-05-18 19:58:11
    转自:https://blog.csdn.net/dayancn/article/details/50732431iperf使用方法Iperf是一个网络性能测试工具。...利用Iperf这一特性,可以用来测试一些网络设备如路由器,防火墙,交换机等的性能。Ip...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 82,208
精华内容 32,883
关键字:

网络测试