为了更好的学习软件测试,需要具备一定的基础知识。下面我们就开始来学习吧
为什么需要计算机 ?
- 对于现在的我们来说,每天要处理的信息量是巨大的,所以如果还是人工的来对这些数据进行处理,那么效率是很低的。计算机的出现就可以帮助我们的来提高处理数据的速度。
计算机是什么 ?
计算机就是一台可以自动高效完成计算的电子设备,我们俗称叫 电脑( PC ) 。计算机系统包括硬件(hardware)和软件(software)两部分组成。
- 硬件系统:组成计算机系统的各种物理设备的总称。
- 软件系统:在计算机上运行的所有软件(操作系统软件+应用软件组成)的总称。
基本特点:
- 计算机可以完成数学和逻辑运算
- 计算机可以对数据进行记忆和存储
- 计算机可以在程序指令下自动高效的进行计算
硬件系统概述
我们就可以认为是组成计算机的那些物理设备( 看得见 摸得着 )都是硬件 。冯·诺依曼体系结构是现代计算机的基础,现在大多计算机仍是冯·诺依曼计算机的组 织结构,只是作了一些改进而已,并没有从根本上突破冯体系结构的束缚。冯·诺依曼 也因此被人们称为“计算机之父”。冯·诺依曼体系结构指出计算机由下面几个部分组成
- 输入设备:给计算机提供数据。例如:键盘 鼠标....
- 输出设备:将计算机处理后的数据展示出来。例如:屏幕 音响....
- 计算器+控制器: *处理器( cpu )
- 存储器:分为内存和外存,对数据进行管理
计算机的大脑。它从内存中获取指令,然 后执行这些指令。 运算器和控制器就组成了CPU。 运算器又可以称为算术/逻辑单元,控制器又可以称为控制单元:
- 控制单元:用于控制和协调其他组件的动作。
- 算术/逻辑单元:用于完成数值运算(+、-、*、/)和逻辑运算(比较)。
每台计算机都有一个内部时钟,该时钟以固定速度发射电子脉冲。时钟速度越快,在给 定的时间段内执行的指令就越多。速度的计量单位是赫兹(Hz),1Hz相当于每秒1个脉冲。随着CPU速度不断提高,目前以千兆赫(GHz)来表述。最初一个CPU只有一个核(core)。核是处理器中实现指令读取和执行的部分。一个多核 CPU是一个具有两个或者更多独立核的组件。可提高CPU的处理能力。
存储器(Memory)是计算机存储程序和数据的记忆单元集合,可读/写其中的数据 。分类:
- 内存储器:信息交流的中心,例如:内存
- 外存储器:长期存放大量的程序和数据,例如:硬盘,决定了能保存多少数据。
内存
- 内存(也叫 Random-Access Memory,RAM):由一个有序的字节序列组成,用于存储程序及程序需要的数据。内存决定了能同时运行多少个程序
- 一个程序和它的数据在被CPU执行前必须移到计算机的内存 中。
- 每个字节都有一个唯一的地址。采用一维线性寻址方式,确定字节的位置,以便于存储和获取数据。
- 一个计算机具有的RAM越多,它的运行速度越快,但是此规律是有限制的。
- 内存与CPU一样,也构建在表面嵌有数百万晶体管的硅半导 体芯片上。但内存芯片更简单、更低速、更便宜。
内存在这里起了两个作用:
- 保存从硬盘读取的数据,提供给CPU使用
- 保存CPU的一些临时执行结果,以便CPU下次使用或保存到硬盘
外存储器
内存中的信息在断电时会丢失。那我们可以考虑将程序和数据永久的保存在存储设备上。当计算机确实需要这些数据时,再移入内存,因为从内存中读取比从存储设备读取要快得多。每台计算机至少有一个硬盘驱动器。硬盘(hard disk) 用于永久的保存数据和程序。
现在外存储器设备主要有以下三种:
- 磁盘驱动器
- 光盘驱动器(CD和DVD)
- USB闪存驱动器、
输入和输出设备
- 常见的输入设备:键盘(keyboard)和鼠标(mouse)
- 常见的输出设备:显示器(monitor)和打印机(printer)
计算机软件
计算机的软件系统是计算机系统中不可缺少的组成部分。 软件是指程序、程序运行所需要的数据以及开发、使用和维护这些程序所需要的文档的集合。 软件=程序+数据+文档。数据:是客观事物经过感知或认识后的再现。现实世界中,信息主要以数值、文字、语音、图形和图像等形式表示 。在计算机中,数据以二进制形式存储和传输 数据必须经过数字化编码,才能在计算机中存储、传送和处理。
计算机软件软件按功能用途分
系统软件:是指控制计算机的运行、管理计算机的各种资源、并为应用软件提供支持和服务的一 类软件。
- 操作系统: 是系统软件中最重要的一种,是系统软件的核心。 操作系统是用户和计算机之间的接口,它提供了软件的开发环境和运行环境。 常用的操作系统有:DOS、Windows、Unix、Linux等。
- 语言处理程序: 它的作用是把我们所写的源程序转换成计算机能识别并执行的程序。
- 数据库管理系统 :有效地实现数据信息的存储、更新、查询、检索等,有组织的动态的存贮大量数据。 人们可以方便,高效的使用数据。
- 网络管理系统 :通过某种方式对网络状态进行调整,使网络能正常、高效地运行, 使各种资源得到更加有效的利用,及时报告和处理网络出现的故障。
应用软件的定义: 应用软件是为了解决各种实际问题而设计的计算机程序, 通常由计算机用户或专门的软件公司开发。 是计算机的第二层扩充。应用软件包括很多很多,常见的有办公软件 杀毒软件 聊天软件 开发软件 影音娱乐等等。
硬件,操作系统,应用软件之间的关系如下图所示:软件按架构分类
- 单机软件 例如:蜘蛛扑克、扫雷等。
- 分布式软件 例如:C/S 软件(Client/Server,客户端/服务器) 丶B/S 软件(Browser/Server,浏览器/服务器)
软件还可以安装是否开源,是否商业,是否收费等等分类
计算机数据存储
现代计算机都是通电进行工作,当电流通过硬件时产生电压,高电位1,低电位0,底层就只有二种状态,刚好和二进制当中的0和1对应。计算机底层使用的就是二进制,想和计算机直接沟通,就要使用二进制。世界上的所有数据都必须能够通过某种方式转换为二进制,然后才能存入计算机。 进制也就是进位制,是人们规定的一种进位方法。 生活中的数制,十进制、二十四进制、六十进制。等等
- 二进制:基数就是 0 1 ,逢二进 1
- 八进制:基数就是 0-7 ,逢八进 1
- 十进制:基数就是 0-9 ,逢十进 1
- 十六进制:基本数就是 0-9 A B C D E F, 逢十六进 1
计算机中的数制,计算机中为了标识不同的进制,需要在数值前面加上不同的后缀。不同进制之间可以按照一定的规则进行随意转换。
字符编码
计算机中储存的信息都是用二进制数表示的,而我们在屏幕上看到的数字、英文、标点符号、汉字等字符是二进制 数转换之后的结果。按照某种规则,将字符存储到计算机中,称为编码 。反之,将存储在计算机中的二进制数按照 某种规则解析显示出来,称为解码 。比如说,按照A规则存储,同样按照A规则解析,那么就能显示正确的文本f符 号。反之,按照A规则存储,再按照B规则解析,就会导致乱码现象。 字符编码 Character Encoding : 就是一套自然语言的字符与二进制数之间的对应规则。
字符集
字符集 Charset 也叫编码表。是一个系统支持的所有字符的集合,包括各国家文字、标点符号、图形符 号、数字等。 计算机要准确的存储和识别各种字符集符号,需要进行字符编码,一套字符集必然至少有一套字符编码。常见字符集有ASCII字符集、GBK字符集、Unicode字符集等。
可见,当指定了编码,它所对应的字符集自然就指定了,所以编码才是我们最终要关心的。当前最常见的处理中文的编码标准是 UTF8,代表国际编码。ascii码表
它是第一张全世界通用的“单字节”编码表,在它里面人为规定了256个字符的对应关系
在 ascii 码表当中没有包括汉字,如果直接使用 ascii 码来处理中文的时候就会产生乱码的问题。后来慢慢的基于 ascii 码表又出现了很多其它的编码标准。 当前最常见的处理中文的编码标准是 UTF8,代表国际编码。计算机中常见的存储单位
一个0或者一个1存储为一个比特(bit)或者称之为b,是计算机中存储信息的最小单位。计算机中处理信息的最小单位是字节(byte) 或者称之为B。每个字节由8个bit构成。 计算机的存储能力是以字节和多字节来衡量的。如下:
字符串的存储:文字在计算机中称为字符串。使用国际编码规则先将字符变成整数,然后变成二进制
常用浏览器
浏览器是网页显示、运行的平台。常用的浏览器有 IE、火狐(Firefox)、谷歌(Chrome)、Safari和Opera等,平时称为五大浏览器。只有上面的浏览器有自己的核心技术,其它浏览器都是换皮肤得来的,所以称之为五大浏览器。
浏览器内核(渲染引擎): 负责读取网页内容,整理讯息,计算网页的显示方式并显示页面。目前国内一般浏览器都会采用 Webkit/Blink 内核,如 360、UC、QQ、搜狗等。注意:测试时如没有强制要求,只需测试IE、谷歌、火狐即可。
常见的图片类型
- jpg: 颜色信息比较丰富的一种图片格式
- png: 可以支持透明的一种图片格式,节省空间,加快网站加载速度。
- gif: 支持动图,占用体积小,色彩表现力不如前两者
- psd: 分层的图片【 常见于PSD设计稿 】
网站的访问过程
互联网的常见名词解释:
- URL:在WWW上,每一信息资源都有统一的且在网上唯一的地址,该地址就叫URL(Uniform Resource Locator,统一资源定位符),它是WWW的统一资源定位标志,就是指网络地址。URL格式: 协议://主机地址/路径
- 协议:网络协议的简称,网络协议是通信计算机双方必须共同遵从的一组约定。HTTP协议:超文本传输协议,规定了浏览器和服务器之间通信的规则
- 域名:(Domain Name)又称网域,是由一串用点分隔的名字组成的Internet上某一台计算机或计算机组的名称,用于在数据传输时对计算机的定位标识。域名的好处是方便记忆。例如:www.baidu.com 就是域名
- IP地址 :是指互联网协议地址,互联网上所有的设备都有一个独一无二的IP地址。 所有的域名有一个相对应的IP地址,并且可以把URL中域名替换成IP地址
- DNS:(Domain Name System,域名系统),用于把域名转换为对应的IP地址。域名解析就是由域名到IP地址的转换过程。域名的解析工作由DNS服务器完成。
- hosts:是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应 的IP地址建立一个关联,当用户在浏览器中输入一个网址时,系统会首先自动从hosts文件中寻找对应的IP地址,一旦找到,系统会立即打开对应网页 。如果没有找到,则系统会再将网址提交DNS域名解析服务器进行IP地址的解析。hosts文件在不同操作系统(甚至不同Windows版本)的位置都不大一样 。Windows XP/7/8/10系统hosts文件路径: C:\Windows\System32\drivers\etc
- 客户端(Client):又称为用户端,是指与服务器相对应,为客户提供服务的程序。比如:用户使用的浏览器、桌面应用程序、APP等。用于发送请求,来索要资源文件的计算机就是客户端计算机
服务器端(Server):是指网络中能对其它机器提供某些服务的计算机系统。用于接收请求,并提供对应的资源文件计算机就是服务端计算机:
请求(Request)- 客户端向服务器索取数据或提交数据的一种行为
HTTP请求:客户端向服务器端发送基于HTTP协议的请求 。在发送HTTP请求时,可以选择不同的请求方式,最常见的请求方式有:GET、POST
GET请求方式特点:
- 浏览器发送请求时,携带的【请求参数数量】不能超过4K
- 浏览器发送请求时,浏览器地址栏上将【请求参数信息】展示出来
- 浏览器发送请求时,请求参数信息保存在Http请求协议包中【请求头】
- 浏览器在接收到服务器返回的资源文件内容后,必须将资源文件内容保存在浏览器的缓存
POST请求方式特点:
- 浏览器发送请求时,可以携带任意数量的【请求参数】为了满足文件上传而产生。
- 浏览器发送请求时,浏览器地址栏上会隐藏请求参数信息
- 浏览器发送请求时,请求参数信息会保存在Http请求协议包中【请求体】
- 浏览器将接收到服务器返回资源文件内容不会保存在浏览器的内存中【阅后即焚】
响应(Response)
服务器对客户端对请求做出的反应,返回客户端所需要的数据就是响应。HTTP响应组成:响应行、响应头、响应体
- 200:这个是最常见的http状态码,表示服务器已经成功接受请求,并将返回客户端所请求的最终结果
- 404:请求失败,客户端请求的资源没有找到或者是不存在
- 500:服务器端出现错误,导致无法完成客户端当前的请求
网站的访问过程
- 在浏览器中输入 URL
- 需要通过解析,去找到相应的IP
- 查找IP 首先会从本地的 hosts 文件开始,如果找不到则去 DNS服务器查找
- 如果DNS帮我们找到了目标的IP ,我们先发送一个测试的请求,通过之后再发送正式请求
- 服务器接收到正式的请求之后,它还需要进行验证。如果验证通过,则去帮我们找到当次请求想要的文件
- 服务器开始处理我们的想要的文件,在这个过程中有可能会用到数据库中的数据
- 当服务器将文件处理毕之后再通过 http 协议还给浏览器,此时浏览器就用自已的渲染引擎来进行渲染展示
网站访问流程图
DOS操作系统
软件,即一系列按照特定顺序组织的计算机数据和指令的集合。有系统软件和应用软件之分。 java语言的初学者,学习一些DOS命令,会非常有帮助。DOS是一个早期的操作系统,现在已经被Windows系统取代,对于我们开发人员,目前需要在DOS中完成一些事情,因此就需要掌握一些必要的命令。
进入DOS操作窗口:
按下Windows+R键盘,打开运行窗口
输入cmd回车,进入到DOS的操作窗口。
在DOS命令窗口中才可以输入并执行DOS命令。在最初的windows计算机中没有图形界面的,只有DOS命令窗口。也就是说通过执行DOS命令窗口可以完全完成文件的新建、编辑、保存、删除等一系列操作。
接下来我们来看几个常见的 dos 命令吧:
- dir 命令:查看当前目录下所有的子文件或子目录。
- cd 命令:切换路径,使用方法是:cd+目录路径,需要注意的是路径包括相对路径和绝对路径,对于 windows 来说从硬盘的根路径下开始的路径都是绝对路径,例如:C:\Program Files、C:\Program Files\Java 等,所有的相对路径都是从当前所在目录作为起点开始查找的路径。另 外 cd ..切换到上级目录,cd \切换到根目录。一个·代表当前路径,一般使用在环境变量配置。
- 切换盘符:直接输入 c:,或者 d:,然后回车即可。切换盘符不需要 cd 命令。
- del 命令:删除文件或目录,例如:del *.class,删除当前目录下所有的.class 文件。
- ipconfig 命令:ipconfig 查看 IP 地址等信息,查看更详细的信息使用 ipconfig /all。这个详细信息中包括网卡 的物理地址,例如:70-8B-CD-A7-BA-25这个物理地址具有全球唯一性。物理地址通常叫做MAC地址。
- ping 命令:查看两台计算机是否可以正常通信,例如:ping 192.168.1.100,正常情况下发送数据包和接收数据包数量相同并且没有延迟的时候表示通信正常,ping 192.168.1.100 -t 表示一直发送数据包和接收数据包,ping www.baidu.com 可以查看电脑是否可以正常上网。语法格式:ping IP地址或者ping 域名。IP地址是计算机在同一个网络当中的唯一标识。域名底层最终还是会被解析成IP地址的形式。
- mkdir 命令:创建目录,例如:mkdir abc 表示在“当前目录”下新建 abc 目录。
- cls 命令:清屏。
- exit 命令:exit 退出 DOS 命令窗口,在一个DOS命令窗口中如果有一个命令一直在执行,想强行终止怎么办?ctrl + c 组合键
路径在windows系统上分类
- 相对路径:相对路径一定是相对于当前所在“位置”而言的,从当前所在的位置作为起点。
- 绝对路径:在windows操作系统中凡是路径起点是盘符的都是绝对路径,例如:C:\Users\Administrator
- win7: 任意位置点击右键-->标记-->选中要复制的内容-->点击右键-->此时就到剪贴板里面了
- win10:左键直接选中,然后右键单击一下就到剪贴板里面了。
常用文本编辑快捷键
使用快捷键可以大大提高开发效率,从现在起我们应该尽可能使用快捷键来代替鼠标,接 下来,我给大家列举一下通用的文本编辑快捷键。当然,如果大家想熟练掌握,还是需要后期 不断的使用,请看下面列表: