陈能技编著陈能技编著 第二章 操作系统基础操作系统相关的知识是所有IT从业者必备的基础知识,也是软件测试人员的必备基础,扎实的操作系统相关知识是软件测试环境搭建、缺陷查找和分析等测试工作的基础。
本章重点介绍VMWare虚拟机的使用、Linux操作系统的安装和高级使用方面的知识。
2.1 操作系统与虚拟机2.1.1 测试人员需要熟悉的操作系统众说周知,软件是运行在操作系统层面之上的,而操作系统又运行于硬件设备(例如CPU、内存、硬盘)之上。
常见的操作系统类型有桌面和服务器操作系统Windows、Linux、Mac OS X等,嵌入式操作系统VxWorks、uClinux、WinCE等,手机操作系统Symbian、UIQ、Windows Mobile、Palm、Android 等。
根据软件运行的环境,测试人员需要熟悉相关的操作系统的安装和使用方法。
一般在进行软件兼容性测试时需要安装多套操作系统运行环境。
2.1.2 虚拟机在软件测试中的应用一台计算机设备可以安装多套操作系统,但是如果在软件测试过程中需要频繁切换操作系统,则会浪费很多时间。
另外,有些时候我们需要验证软件在不同硬件配置条件(例如内存大小)下的运行情况,但是由于不能随时插拔内存条,因此会带来测试的不便。
这时候我们可以引入虚拟机来解决这些问题。
利用虚拟机可以在一台电脑上将硬盘和内存的一部分拿出来虚拟成若干机器,如图2.1所示,每台机器可以运行单独的操作系统而互不干扰,这些虚拟出来的机器可以用于自己独立的硬盘和操作系统,这些虚拟机器上的操作系统之间可以共享一个网络,实现互联互通。
图2.1 虚拟机原理图虚拟机可以采用WMWare。
VMware Workstation 是一种功能强大的台式机虚拟化软件,面向希望优化企业中软件开发、测试和部署的软件开发人员/测试人员及IT专业人员。
它允许用户在单台 PC 机上用完全网络化的、便携式的虚拟机同时运行多个基于 x86 的操作系统(包括Windows、Linux 和NetWare)及他们的应用程序—不需要分区,也不需要重启。
VMware Workstation 的工作原理是:创建完全隔离、安全的虚拟机来封装操作系统及其应用程序。
VMware 虚拟化层将物理硬件资源映射为虚拟机的资源,所以每个虚拟机都有自己独立的CPU、内存、磁盘和 I/O 设备,完全等同于一台标准的 x86 机器。
VMware Workstation 安装在主机操作系统上并通过继承主机的设备支持而提供了广泛的硬件支持。
读者可以访问VMWare的主页获取更多信息以及下载试用版本:/cn/2.1.3 在VMWare中安装虚拟操作系统下面以WMWare Workstation5.5版本为例(以下简称VM),介绍虚拟机的使用方法。
安装完VM之后,通过选择菜单“File->New->Virtual Machine”打开虚拟机操作系统的安装向导,如图2.2所示:陈能技编著图2.2 虚拟机操作系统安装向导下面就按向导的提示一步步选择需要安装的操作系统版本以及各项必要的设置。
向导结束后出现如图2.3所示的界面:图2.3 虚拟操作系统初始配置完毕到这里尚未完成虚拟机操作系统的安装,而是仅仅完成了初始的配置。
在这里还可以进行配置修改,在“Devices”区域可以双击“Memory”进行内存大小的调整(如图2.4):陈能技编著也可以对虚拟机使用的光驱设备进行设置,如图2.5所示:图2.5 调整虚拟机的内存如果即将安装的操作系统文件存放在光盘,可以把光盘放到物理光驱,VM在接下来的安装过程会自动检测到光盘并进行操作系统的安装。
如果没有检测到,或者有多个光驱,也可以通过设置“Usephysical drive”来指定光驱。
如果即将安装的操作系统文件是以iso镜像文件的形式存放在指定的目录,则可以通过设置“UseISO image”来为VM指定操作系统安装盘。
当然,还有另外一种办法是通过安装虚拟光驱软件(例如DAEMON Tools)的方式先对物理光驱进行虚拟,然后在虚拟出来的光驱中装载需要安装的操作系统光盘镜像文件(iso文件),这样VM也能识别出虚拟光驱并进行操作系统的安装。
完成这一系列的配置之后,即可以按“Start this Virtual machine”,或者选择菜单“VM->Power->PowerOn”来启动虚拟机,如图2.6所示。
陈能技编著图2.6 启动VM接下来的步骤就如同在普通的计算机设备上安装操作系统一样,在VM中安装虚拟的操作系统。
在这里就不再赘述了。
经验:在软件测试的日常工作中,经常需要在不同的操作系统平台对同一软件进行测试和兼容性的验证。
测试人员应该在项目前期就准备好这些虚拟机(应该包括常用的操作系统平台),虚拟出各种操作系统并保存好虚拟文件。
这样在需要时可以马上加载相应的虚拟操作系统文件,启动并进行测试。
2.1.4 VMWare的使用技巧安装好虚拟操作系统后,可以把虚拟文件拷贝并保存到某个目录,以备后用。
在需要使用虚拟操作系统时,只要打开虚拟文件即可加载相应的虚拟操作系统,方法是通过选择VM菜单“File->Open”,然后选择后缀为vmx的虚拟机文件,如图2.7所示:陈能技编著图2.7 打开虚拟操作系统文件启动VM之后,可以通过选择菜单“VM->Install Vmware Tools”来安装VM工具包,如图2.8所示。
此工具包的作用是增强虚拟机的图形显示和鼠标操作能力,例如安装之后,可以在虚拟机和主机(运行VM的机器)操作系统之间直接切换,否则需要按“CTRL+ALT”键来切换到主机。
图2.8 安装VM工具包在VM中,如果想通过“CTRL+ALT+Del”组合键来调出“Windows任务管理器”的话,VM将提示如图2.9所示的错误,并提示在VM中需要按“CTRL+ALT+Insert”键来调出“Windows任务管理器”。
图2.9 在VM中按“CTRL+ALT+ Del”组合键技巧:如果想对VM中运行的操作系统进行截屏,可以直接使用VM提供的工具来完成,方法是选择菜单“VM->Capture Screen”。
如果想对在VM中运行的各项操作进行视频录制,可以选择“VM->Capture Movie”来完成。
说明:更多关于VM的操作和使用说明请参考VM的帮助文档。
陈能技编著2.2 Linux安装与配置网站会定期发布全球速度最快的超级计算机500强排名列表。
根据该网站最近发布的排名表单,可以看到其中速度最快的前20台超级计算机所使用的操作系统,有19台使用的是Linux系列的操作系统。
毫无疑问,Linux已经是大多数超级计算机操作系统的不二选择。
(在全球超级计算机500强中,Linux的市场占有率为88.6%)在很多企业的后台服务器上运行的操作系统都是Linux,很多网站也是架构在Linux平台上(所谓“LAMP”中的L就代表的是Linux)。
因此,作为软件测试人员,需要熟练掌握Linux操作系统的基本安装和使用,以便在搭建测试环境和执行各种测试时应付自如。
2.2.1 Linux简介Linux操作系统,是一类Unix计算机操作系统的统称。
Linux操作系统的内核的名字也是“Linux”。
Linux操作系统也是自由软件和开放源代码发展中最著名的例子。
严格来讲,Linux这个词本身只表示Linux内核,但在实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU工程各种工具和软件的操作系统(也被称为GNU/Linux)。
基于这些组件的Linux软件被称为Linux发行版。
一般来讲,一个Linux发行套件包含大量的软件,比如软件开发工具(例如gcc)、数据库(例如PostgreSQL、MySQL)、Web服务器(例如Apache)、X Window、桌面环境(例如GNOME、KDE)、办公套件(例如)、腳本語言(例如Perl、PHP、Python)等等。
Linux內核最初只是由芬兰人Linus Torvalds(图2.10)在赫尔辛基大学上学时处于个人爱好而编写的。
图2.10 Linux创始人Linus TorvaldsLinux内核最初是为英特尔386微处理器设计的,现在Linux内核支持从个人电脑到大型主机甚至包括嵌入式系统在内的各种硬件设备,Linux已经成为了广泛使用和支持的操作系统。
很多人认为,和其他的商用Unix系统以及微软的Windows相比,作为自由软件的Linux具有低构建成本,高安全性,更加可信赖等优势。
陈能技编著2.2.2 Linux下载和安装下面以Red Hat Linux为例,讲解如何在VM上进行安装(Red Hat Linux的安装文件可通过网络下载光盘镜像文件)。
首先新建VM,在VM配置向导中选择“Guest operation system”为“Linux”,“Version”选择“Red Hat Linux”,如图2.11所示:图2.11 安装虚拟Red Hat Linux接下来,确保物理光驱或虚拟光驱中加载了Linux安装盘的第一张盘,或者VM中设置指向了Linux 安装盘的iso镜像文件所在的路径。
然后就可以按照Linux安装程序的指引一步步安装下去。
具体安装过程请参考本书附带光盘中的视频文件:\video\Red Hat Linux 安装.avi。
在这里不再赘述,仅对安装过程中的几个注意点进行描述:1、安装过程中会提示磁盘分区,可以选择“Automatically partition”让Linux安装程序进行自动分区,这是最简单的安装方式,当然也可以自己指定分区方式。
至少两个分区:swap - 交换分区,虚拟内存(2倍物理内存)ext3 / - 根分区(类似于windows的C:\),用于引导,其他分区都挂载在根分区上此外,还可以建以下分区:/home :每个用户的主目录,类似于windows的C:\Documents and Settings\...。
建立分离的/home文件系统可以隔离系统区与非特权用户。
如果有大量的用户要访问系统的话,推荐创建分离的/home文件系统。
/opt :对于大多数UNIX版本,商用软件都安装在/opt目录中。
/usr :/usr目录中包含的是二进制文件,保存所有用户程序,类似于windows的C:\Program Files。
/var :系统日志、事件日志的保存位置,类似于windows的:\windows\system32\config,/var 目录中的/var/log包含系统日志。
/boot :包含引导过程所需的大多数内容,类似于windows中的系统分区。