
(二)各种技术应用的环境需求。对于各类工具,需要关注编译和运行时对各种包和库及其版本的依赖关系以及对预先安装的应用的依赖关系。这些在用户手册中都有详尽的说明。
(三)服务器性能监视器。大部分测试工具没有提供服务器端的性能监控功能,测试工程师需要根据实际的需求编写性能监控脚本来配合工具的使用。
下面结合曾经参与进行过的Linux平台下的自动化测试的研究,面向不同类别的测试用例自动化的需求,将主要从功能测试,如GUI测试、命令行客户端的测试,以及性能测试等几个方面对Linux平台下的测试工作的自动化进行分析和说明。
GZW自动化洲试
对于GUI测试的自动化,通常的测试工具所使用的捕捉/回放技术有两种,一种是通过记录界面的鼠标事件(如点击、移动)和键盘事件来完成录制和回放,另外一种则是录制和回放都是基于控件的识别和 *** 作进行的,每个脚本的执行都是控件对象的属性改变或事件触发。我们从开源社区可以获得如上两种类型的运行于Linux平台之上的典型测试工具,如Knee和LDTP等。
(一)Xnee工具
在Linux *** 作系统的xll环境下,Xnee能够录制、回放和分发用户的动作。Xnee的捕捉/回放技术是记录鼠标事件和键盘事件。进入录制模式时,Xnee记录发送至和来自X server之间的协议数据拷贝,并生成Xneesession文件。在回放模式下,Xnee读取Xnee Session中的事件,模仿整个录制过程(即用户 *** 作过程)完成和x server之间的通讯,被录制的应用软件(Xclient)则接收来自xserver的消息,完成预设的动作。
(二)LDTP测试工具/框架
Linux Desktop Testing Project(LDTP)测试工具/框架能够基于用户在应用界面的选择进行脚本的录制。LDTPI具使用了Gnome环境下的Accessibility库即辅助选项库(at-spi)。使用辅助选项能够获得应用通过AT-SPI协议提供的关于用户界面的信息和界面控件的当前状态或者属性。LDTPI具/框架的体系结构如下:
AT-SPI的基础思想就是为用户界面的可视化元素提供对应的辅助对象,而录制完成的每个脚本的执行都是基于这些辅助对象进行的。对于希望利用LDTPI具进行测试的应用,需要激活辅助选项。
(三)GUI自动化测试工具的应用
在实际的GUI自动化测试中,LDTPI具应用的场景会更广泛一些。LDTPI具可以识别窗口中的对象(如按钮),测试脚本使用LDTP的API接口,每个API接口对UI对象进行 *** 作存在两个最基本的入口,即窗口和对象,窗口通过窗口的类型和名称(即标题)识别,对象通过希望 *** 作的控件的类型和名称(标签或者关联的标签)识别。我们同样可以通过at-pokel具展现激活了辅助选项的应用程序窗口的对象及对象属性。在测试Linux桌面产品和服务器产品的过程中,使用LDTPI具可以测试任何启用辅助选项的Gnome应用,如Mozilla,OpenOffice.org、Evolution邮件客户端,Nautilus文件浏览器等等,此外还可以测试UI界面基于Swing的Java应用,以及KDE4.O上基于QT4.0的应用等等。
而Xneel具所针对的应用程序类型就没有特别的限制,对于一些简单的窗口验证测试和界面的稳定性测试等则比较有效。Xnee相对于基于控件方式捕获和回放的工具而言,不用担心存在控件不能被识别的问题。
从使用的情况来看,各个工具也都因为实现技术而存在一定的缺陷,如两个工具均不能插入验证点,从而不能实现用例级别的结果验证;LDTP对于界面的个别元素捕获不到以及不能对不支持辅助选项的应用进行测试等等;而Xneel具生成的脚本可编辑性差,同时由于录制生成的脚本中的事件和屏幕坐标相关,因此当出现窗口d出位置发生变化等问题时,就需要考虑回放时应该如何来处理这些变化。
作为软件测试人员,理论上要学很多东西,比如网络、硬件、数据库还有你说的Linux等,但其实并不一定都能用到,但是要保证一旦用到就得会,所以Linux知识也是要了解的,说的Shell脚本,那些命令必须必须背过,不管用什么方法,既然学了,就要稍微下点功夫;最后说学Linux有什么用,前几天我们公司做了个程序,服务器用的Linux,测试的话,监控服务器资源什么的都要在Linux上进行,所以要对Linux的相关命令比较熟悉,这是个简单的例子,不怕用不到,就怕用到不会。基准测试是一项测试或一系列测试,用来确定某个计算机硬件运行起来的状况有多好。在许多情况下,“基准测试”实际上等同于“压力测试”。通过测试硬件的极限,然后可以将测得的结果与其他硬件测得的结果作一番比较。大多数基准测试旨在模拟 PC 在实际情形下遇到的那种工作负载。正因为如此,基准测试几乎就是获得定量数据、了解系统性能如何的唯一方法――如果你的数据差强人意,这表明应该升级部分PC部件。
所以,准备好测试你自己的 PC 了吗?下面是可供 Linux 用户使用的一些比较实用的基准测试。
一、一体化基准测试
一体化基准测试工具又叫基准测试套件,恰如其名:它们测试和衡量系统的各个方面,而不是专注于某一个特定的硬件,如果你不想用三四个不同的工具搞乱系统,这很有用。
1、Phoronix 测试套件
Phoronix 测试套件是最知名的一体化 Linux 基准测试解决方案之一。有一些人声称,它有许多固有的问题当然,我们不会说它在各方面完美无缺,但是它对大多数用户来说足够好。另外,外面值得一用的替代套件并不多。
Phoronix 可使用 100 多个不同的测试套件(即一组组单项测试)和 450 多个不同的测试配置文件。你可以选择只安装所需的那部分,所以如果你只关注处理器和普通硬盘基准测试,那么只要安装“Processor_Tests”和“Disk_Tests”。它还支持系统日志和报告。
最棒的是,Phoronix 是自由而开源的。它还提供 Live CD 这种形式,名为 PTS Desktop Live,让你可以直接从 CD、DVD 或 U 盘来运行,所以你可以在需要时使用“干净”的 *** 作系统,测试任何机器的硬件。
2、Stress-ng
你可能从名称中猜得,stress-ng 是真正的压力测试――它极其适合测试系统的极限,但是由于它要求很严苛,我们不建议经常运行它。如果反复接受压力测试,某些部件(尤其是处理器和普通硬盘)会损耗得更快。
将 stress-ng 安装到 Debian 和 Ubuntu 上:
sudo apt-get install stress-ng
将 stress-ng 安装到 Fedora、Red Hat 和 CentOS 上:
sudo yum install stress-ng
一旦安装完毕,stress-ng 可以测试各种各样的部件,包括处理器、内存、输入/输出、 网络、虚拟内存及更多部件。它还很容易配置――针对每项测试,你可以指定不同的参数,比如多少测试实例、多少个处理器核心、测试强度多大、运行多久等。
介绍所有不同的命令和参数不在本文的范围之内,但是 Ubuntu 维基上的这个页面是个不错的起始点。
3、PassMark BurnInTest
PassMark 拥有各种各样的 PC 测试和监控软件,包括大名鼎鼎的 MemTest86 和 PerformanceTest 应用程序,它们只面向Windows 用户。另一方面,BurnInTest 应用程序却有 Linux 版本,它无疑值得尝试一番。
简而言之,它能同时测试计算机的所有主要子系统。但它不是测试纯粹的性能,而是更加专注于稳定性和可靠性。为了获得最佳结果,我们推荐将它与其他一些形式的性能测试手段结合起来。
它提供免费 30 天试用的服务;一旦试用期结束,就要收费(79 美元)。
二、处理器基准测试
比较两个不同的处理器很困难。还记得你知道奔腾 III 几乎总是胜过奔腾 II 的日子吗?有时候,i5 的性能胜过 i7,四核并非总是胜过双核。
正由于如此,处理器可以从基准测试比较得到最大的好处――超过其他任何一个 PC 硬件。如果你决定不使用上述一体化测试,那么可以从下面两款工具中的一款入手。
1、Geekbench
Geekbench 是目前市面上最出色的处理器基准测试之一。它随带 10 项整数工作负载测试和 8 项浮点工作负载测试――其中一些测试在 Hardinfo(下有介绍)中也有,但是其中一些是 Geekbench 特有的。
Windows 版本和 Mac 版本随带用户界面,但 Linux 版本只有命令行可执行文件。基准测试结果上传到网上,让你可以以一种比终端更直观的方式查看分数。
上传后,Geekbench 会在功能有限的“尝试模式”(实际上是无限制的免费试用)下运行,只有 64 位和 OpenCL 基准测试。想要 CUDA 基准测试、独立模式及其他功能,你需要购买 Geekbench 或 Geekbench 专业版。
2、Hardinfo
可以使用原生软件包管理器从大多数发行版获取 Hardinfo,不过我觉得在 Deiban 和 Ubuntu 上运行这个命令来得更容易:
sudo apt-get install hardinfo
或者在 Fedora、Red Hat 和 CentOS 上运行这个命令:
sudo yum install hardinfo
Hardinfo 随带 6 项不同的基准测试,每一种测试提供了一个分数,你可以用分数来准确地与其他系统比较。处理器测试执行整数运算,FPU 测试执行浮点运算。比较结果时,确保比较的是同样的测试。
Hardinfo 还是一种迅速获取系统信息的有用方式。只要浏览侧边栏中的各个页面,即可查看计算机配置的详细信息。
三、GPU 基准测试
想以一种非科学的方式测试系统的图形功能,只要看看你的 PC 能不能处理图形密集型游戏。想获得更准确的结果,只要运行下列这些测试。
1、Unigine
Unigine 有两项基准测试值得一提:Valley 基准测试和 Heaven 基准测试。每一项测试渲染不同的场景(分别是覆以森林的山谷和一系列浮空岛),迫使你的 GPU“超时工作”。
这是大多数 Linux 游戏玩家首选的图形基准测试。
免费基准测试是交互式,完全足以大致了解你的 GPU 有多好,但是如果是商业用途、进行深入的逐帧分析,专业版必不可少。售价 495 美元。
2、GFXBench
GFXBench 之前名为 GLBenchmark,它是面向 Linux 系统的两种主要的图形基准测试中名气较小的。它随带两组测试:高级测试(总体性能)和低级测试(特定功能的性能)。
四、数据硬盘基准测试
说到存储数据的硬盘,速度并非总是最重要。比如说,当硬盘用来存储备份内容,主要的问题是寿命、可靠性和容量。不过若是日常 *** 作,你需要性能出色的高速固态硬盘。
1、Hdparm
Hdparm 是一种命令行实用工具,安装在大多数现代的发行版上,非常易于使用。它不仅可用来测试驱动器的性能,还可以针对每个驱动器来改变设置(比如开启或关闭 DMA)。不过要小心:如果使用不当,Hdparm 会导致驱动器崩溃或损坏!
首先,使用 df 命令列出系统上的所有驱动器。找到想要测试的那个驱动器――如果你没有把握,可以使用上下文,比如总的磁盘空间或挂载位置,然后与下列命令结合使用。以本文为例,我的驱动器是 /dev/sda2。
为了测试缓冲读取性能:
sudo hdparm -t /dev/sda2
/dev/sda2:
Timing buffered disk reads: 180 MB in 3.00 seconds = 59.96 MB/sec`
为了测试缓存读取性能:
sudo hdparm -T /dev/sda2
/dev/sda2:
Timing cached reads: 3364 MB in 2.00 seconds = 1682.75 MB/sec`
无论你使用哪一个,都要多次运行命令,以获得多个读数,然后求平均值,以便更准确地了解性能。确保你没有做可能影响读数的其他任何 *** 作,比如传输文件。
2、Bonnie++
Bonnie++ 是一种自由的实用工具,旨在基准测试文件系统和硬驱性能。它并不直接安装在大多数发行版上,但是应该出现在核心代码库中。可使用下列命令安装到 Debian 和 Ubuntu上:
sudo apt-get install bonnie++
或者使用这个命令安装到Fedora、Red Hat或CentOS上:
sudo yum install bonnie++
一旦安装完毕,运行Bonnie++的最简单方法就是使用下列命令:
bonnie++ -d /tmp -r 2048 -u [username]
这会在 /tmp 目录下运行测试(因而测试 /tmp 所在的驱动器的性能),使用的参数表明系统有 2048MB 内存,测试将以[用户名]的用户权限来运行,本文中该用户是 jleeso。
不确信你的系统上有多少内存?请使用 free –m 命令,在合计栏下查找 Mem。
最后,你会看到逗号分隔的一行,上面是密密麻麻的不同数字。这些就是你的结果。比例:
1.96,1.96,ubuntu,1,1378913658,4G,,786,99,17094,3,15431,3,4662,91,37881,4,548.4,17,16,,,,,142,0,+++++,+++,+++++,+++,+++++,+++,+++++,+++,+++++,+++,16569us,15704ms,2485ms,51815us,491ms,261ms,291us,400us,710us,382us,42us,787us
拷贝它,输入下面这个命令:
echo "[粘贴你的结果]" | bon_csv2html >/tmp/t
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)