计算机系统存储器方面的基础知识:
•业务流程测试用例包括通过测试用例和失败测试用例。
•功能测试用例一般包括业务流程测试用例和功能点测试用例。
•通过测试用例是验证需求能否正确实现,打通流程的一类测试。
•失败测试用例是模拟一些异常业务操作,测试系统是否具备容错性。
计算机系统的存储器按所处的位置可分为内存和外存。
按构成存储器的材料可分为磁存储器、半导体存储器和光存储器。
按存储器的工作方式可分为读写存储器和只读存储器。
按访问方式可分为按地址访问的存储器和按内容访问的存储器。
按寻址方式可分为随机存储器、顺序存储器和直接存储器。
相联存储器是一种按内容访问的存储器。
寻址方式中,操作数在指令中称为立即寻址;
操作数在通用寄存器中称为寄存器寻址;
操作数在主存单元,而其地址在指令中称为直接寻址;
操作数在主存单元,而其地址在寄存器中称为寄存器间接寻址。
计算机中主机与外设间进行数据传输的输入输出控制方法有程序控制方式、中断方式、DMA等。
在程序控制方式下,由CPU执行程序控制数据的输入输出过程。
在中断方式下,外设准备好输入数据或接收数据时向CPU发出中断请求信号,若CPU决定响应该请求,则暂停正在执行的任务,转而执行中断服务程序进行数据的输入输出处理,之后再回去执行原来被中断的任务。
在DMA方式下,CPU只需向DMA控制器下达指令,让DMA控制器来处理数据的传送,数据传送完毕再把信息反馈给CPU,这样就很大程度上减轻了CPU的负担,可以大大节省系统资源。
中央处理器(CPU,Central Processing Unit)是一块超大规模的集成电路,是一台计算机的运算核心和控制核心。主要包括运算器(ALU,Arithmetic and Logic Unit)和控制器(CU,Control Unit)两大部件。此外,还包括若干个寄存器和高速缓冲存储器及实现它们之间联系的数据、控制及状态的总线
通用寄存器可用于传送和暂存数据,也可参与算术逻辑运算,并保存运算结果。
程序计数器又称指令计数器,用来存放正在执行的指令地址或接着要执行的下条指令地址 ;
指令寄存器(IR,Instruction Register),是临时放置从内存里面取得的程序指令的寄存器,用于存放当前从主存储器读出的正在执行的一条指令。
地址寄存器用来保存当前CPU所访问的内存单元的地址。
程序计数器、指令寄存器和指令译码器都是CPU中控制单元的部件,加法器是算术逻辑运算单元的部件
主存属于随机存储器;
数据耦合:指两个模块之间有调用关系,传递的是简单的数据值,相当于高级语言中的值传递。
标记耦合:指两个模块之间传递的是数据结构。
控制耦合:指一个模块调用另一个模块时,传递的是控制变量,被调用模块通过该控制变量的值有选择地执行模块内的某一功能。因此,被调用模块内应具有多个功能,哪个功能起作用受调用模块控制。
公共耦合:指通过—个公共数据环境相互作用的那些模块间的耦合。
耦合类型从低到高为数据耦合一标记耦合一控制耦合一公共耦合。
本题考查计算机系统总线和接口方面的基础知识
广义地讲,任何连接两个以上电子元器件的导线都可以称为总线。
总线复用方式可以减少总线中信号线的数量,以较少的信号线传输更多的信息。
通常可分为4类:
①芯片内总线。用于在集成电路芯片内部各部分的连接。
②元件级总线。用于一块电路板内各元器件的连接。
③内总线,又称系统总线。用于构成计算机各组成部分(CPU、内存和接口等)的连接。
④外总线,又称通信总线。用计算机与外设或计算机与计算机的连接或通信。
连接处理机的处理器、存储器及其他部件的总线属于内总线,按总线上所传送的内容分为数据总线、地址总线和控制总线。
系统总线上传送的信息包括数据信息、地址信息及控制信息,因此,系统总线包含有3种不同功能的总线,即数据总线、地址总线和控制总线。地址总线宽度决定了CPU 可以访问的物理地址空间,即CPU能够使用多大容量的内存。若地址线的宽度为32位,最多可以直接访问232 (4GB)的物理空间。数据总线负责整个系统的数据流量的大小,如果数据总线的宽度为32,则字长为32。
可维护性是所有软件都应具有的基本特点,必须在开发阶段保证软件具有可维护的特点。在系统分析阶段的复审过程中,应该指出软件的可移植性问题以及可能影响软件维护的系统界面;在系统设计阶段的复审期间,应该从容易修改、模块化和功能独立的目的出发,评价软件的结构和过程:在系统实施阶段的复审期间,代码复审应该强调编码风格和内部说明文档这两个影响可维护性的因素。可测试性是可维护性的一个评价指标。
软件风险一般包括不确定性和损失两个特性,其中不确定性是指风险可能发生,也可能不发生;损失是当风险确实发生时,会引起的不希望的后果和损失。救火和危机管理是对不适合但经常采用的软件风险管理策略。已知风险和未知风险是对软件风险进行分类的一种方式。员工和预算是在识别项目风险时需要识别的因素。
敏捷方法中,重构是一种重新组织技术,重新审视需求和设计,重新明确地描述它们以符合新的和现有的需求,可以简化构件的设计而无须改变其功能或行为。
极限编程XP是敏捷方法中最普遍的一种,由价值观、原则、实践和行为四个部分组成,有四个价值观,即沟通、简单性、反馈和勇气,有五大原则,即快速反馈、简单性假设、逐步修改、提倡更改和优质工作。而每一个不同的项目都需要一套不同的策略、约定和方法论则是水晶法的原则
RUP对软件开发过程的描述。RUP应用了角色、活动、制品和工作流4种重要的模型元素,其中角色表述“谁做”,制品表述“做什么”,活动表述“怎么做”,工作流表述“什么时候做”。
RUP中每个阶段产生的制品。
初启阶段结束时产生一个构想文档、一个有关用例模型的调査、一个初始的业务用例、一个早期的风险评估和一个可以显示阶段和迭代的项目计划等制品:
精化阶段结束时产生一个补充需求分析、一个软件架构描述和一个可执行的架构原型等制品;
构建阶段结束时的成果是一个准备交到最终用户手中的产品,包括具有最初运作能力的在适当的平台上集成的软件产品、用户手册和对当前版本的描述;
移交阶段结束时产生移交给用户产品发布版本。
本题考查软件开发模型。
瀑布模型是一种系统的、顺序的软件开发方法,它适用于软件需求确定,开发过程能够以线性化的方式完成那些软件开发项目。瀑布模型适合需求确定的应用;
原型模型适合于需求不确定的情况;
喷泉模型适合于用面向对象技术进行开发。(已用户需求为动力、以对象为驱动,适用于面向对象的开发方法)
螺旋模型结合了瀑布模型和演化模型两类模型,并加入了风险分析,适合于大型复杂软件系统的开发。
软件系统的生存周期中各活动的任务
可行性分析和项目开发计划主要确定软件的开发目标及其可行性,要进行问题定义、可行性分析,制定项目开发计划。
需求分析阶段的任务是准确地确定软件系统必须做什么,确定软件系统必须具备哪些功能。
软件设计是软件工程的技术核心,其任务是确定如何实现软件系统,包括模块分解,确定软件的结构,模块的功能和模块间的接口,以及全局数据结构的设计,设计每个模块的实现细节和局部数据结构。
编码的任务是用某种程序语言为每个模块编写程序。
程序语言基础知识。
函数调用时基本的参数传递方式有传值与传地址两种,在传值方式下是将实参的值传递给形参,因此实参可以是表达式(或常量),也可以是变量(或数组元素),这种信息传递是单方向的,形参不能再将值传回给实参。在传地址方式下,需要将实参的地址传递给形参,因此,实参必须是变量(数组名或数组元素),不能是表达式(或常量)。这种方式下,被调用函数中对形式参数的修改实际上就是对实际参数的修改,因此客观上可以实现数据的双向传递。
编译是将髙级语言源程序翻译成机器语言程序(汇编形式或机器代码形式),反编译是编译的逆过程。反编译通常不能把可执行文件还原成高级语言源代码,只能转换成功能上等价的汇编程序。
编译:高级语言转换成计算机认识的低级语言
编译的主要的目的是将便于人编写、阅读、维护的高级语言所写作的源代码程序,翻译为计算机能解读、运行的低级语言的程序,也就是可执行文件。
反编译:Java的反编译,一般是将class文件转换成java文件。
反编译:通过低级语言进行反向工程,获取其源代码
算法和程序的三种基本控制结构为顺序结构、分支结构和循环结构。
在面向对象技术中,继承是指父类和子类之间共享数据和方法的机制。多态是指不同的对象在收到同一消息可以产生完全不同的结果的现象。绑定是一个把过程调用和响应调用所需要执行的代码加以结合的过程。在一般的程序设计语言中,绑定是指编译时进行的,称为静态绑定,而在运行时进行的绑定称为动态绑定。
动态语言是指程序在运行时可以改变其结构,例如新的函数可以被引进、已有的函数可以被删除等在结构上的变化等。
动态语言的类型检查是在运行时进行的,其优点是方便阅读,不需要写非常多的与类型相关的代码;缺点是不方便调试,命名不规范时会读不懂、不利于理解等。
脚本语言代表一套与系统程序设计语言不同的协定。它们牺牲执行速度和与系统程序设计语言相关的类型长度而提供更高的编程创作能力和软件重用。脚本语言更适合在联系复杂的应用程序中进行胶着(粘合)。为了简化连接组件的工作,脚本语言被设计为无类型的,脚本语言一般是面向字符的,因为字符为许多不同的事物提供了一致的描述。事实上,脚本语言都是动态语言,而动态语言都是解释型语言,不管它们是否是面向对象的语言。
本题考查对Windows XP操作系统应用的掌握程度
因为Windows XP操作系统支持FAT、FAT32或NTFS文件系统,所以利用“磁盘管理”程序可以对磁盘进行初始化、创建卷,并可以选择使用FAT、FAT32或NTFS文件系统格式化卷。
分析如下:文件级安全管理,是通过系统管理员或文件主对文件属性的设置来控制用户对文件的访问。通常可设置以下几种属性:
•只执行:只允许用户执行该文件,主要针对.exe和.com文件。
•隐含:指示该文件为隐含属性文件。
•索引:指示该文件是索引文件。
•修改:指示该文件自上次备份后是否还被修改。
•只读:只允许用户读该文件。
•读/写:允许用户对文件进行读和写。
•共享:指示该文件是可读共享的文件。
•系统:指示该文件是系统文件。
用户对文件的访问,将由用,户访问权、目录访问权限及文件属性三者的权限所确定。或者说是有效权限和文件属性的交集。例如对于只读文件,尽管用户的有效权限是读/写,但都不能对只读文件进行修改、更名和删除。对于一个非共享文件,将禁止在同一时间内由多个用户对它们进行访问。通过上述四级文件保护措施,可有效地保护文件。因此将“C:/Windows/myprogram.exe”文件设置成只读和隐藏属性,以便控制用户对该文件的访问,这一级安全管理称之为文件级安全管理。
计算机系统软件方面的基础知识
计算机系统中的软件可分为系统软件和应用软件两大类,语言处理程序用于将高级语言编写的程序翻译成汇编语言或机器语言,以便在计算机上执行。编译程序、汇编程序和解释程序是常见的语言处理程序,其工作对象或方式不同。汇编程序将汇编语言编写的程序翻译成机器语言程序。编译程序的翻译方式是将高级语言源程序翻译成目标程序(汇编语言或机器语言形式),进行汇编及连接后在计算机上执行。解释程序直接执行高级语言源程序或先翻译成某种中间代码形式再执行,不形成与源程序功能等价的目标 程序。有些语言在编译之前还需要进行预处理,如C/C++语言等。
软件设计要遵循的基本原则包括:抽象、模块化、信息
功能需求根据要求的活动来描述需要的行为:
质量需求描述一些软件解决方案必须拥有的质量特性;
设计约束是已经做出的设计决策或对问题解决方案集的限制的设计决策;
过程约束是对用于构建系统的技术和资源的限制。
详址方式就是如何对指令中的地址字段进行解释,以获得操作数的方法或获得.程序转移地址的方法,操作数的位置可能在指令中、寄存器中、存储器中或I/O端口中。常用的寻址方式有立即寻址、直接寻址、寄存器寻址、寄存器间接寻址等。
若操作数就包含在指令中,则是立即寻址。在形成指令的机器代码时,立即数就跟在指令操作码的后面,取出指令时即可得到操作数。
若操作数存放在内存单元中,指令中直接给出操作数所在存储单元的地址,则是直接寻址。
若操作数存放在某一寄存器中,指令中给出存放操作数的寄存器名,则是寄存器寻址。
若操作数存放在内存单元中,操作数所在存储单元的地址在某个寄存器中,则是寄存器间接寻址。
多层软件体系结构是现在软件系统开发中常用的体系结构,通常包括表示层、控制层、模型层和数据层。其中表示层主要对用户的请求接受,以及数据的返回,为客户端提供应用程序的访问。控制层接收用户的请求并决定调用哪个模型去处理该请求,以及确定选择哪个视图来显示返回的数据。模型层主要负责业务逻辑处理。数据层主要是数据存储和访问。
在JavaEE平台中,通常使用Servlet技术来实现控制层。
模拟攻击试验包括冒充、重演、消息篡改、服务拒绝、内部攻击、外部攻击、陷阱门、木马等内容。
结构化设计主要包括:体系结构设计、数据库设计、接口设计、过程设计。
体系结构设计:定义软件的主要结构元素及其之间的关系。依据系统规格说明、数据流图进行。
数据设计:基于实体联系图确定软件涉及的文件系统的结构及数据库的表结构。
接口设计:描述用户界面、软件和其他硬件设备、其他软件系统及使用人员的外部接口,以及各种构件之间的内部接口。依据数据流图进行。
过程设计:确定软件各个组成部分内的算法及内部数据结构,并选定某种过程的表达形式来描述各种算法。依据加工规格说明并行。在描述加工规格说明时,流程图、决策树、决策表和伪代码都是常用的表达方式
软件工程的基本要素包括方法、工具和过程。
软件开发过程中不同图形的适用场景
N-S盒图、PAD图和程序流程图主要用于表示软件模块的执行过程。而E-R图是在对系统进行数据建模时采用,用于表示实体和实体之间的联系。
UML的典型模型,包括用例图、类图、序列图、活动图等。
类图主要是对系统的词汇建模,或者对简单的协作建模,或者对逻辑数据库模式建模;
用例图对系统的需求建模;
类图中,类和类之间的关系有依赖关系(【箭头及指向】:带箭头的虚线,指向被使用者)、关联关系(【箭头及指向】:单向关联为带普通箭头的实心线,箭头指向被拥有者)、聚集关系(【箭头及指向】:带空心菱形的实心线,菱形指向整体)、组合关系(箭头及指向】:带实心菱形的实线,菱形指向整体)和泛化关系(【箭头指向】:带三角箭头的实线,箭头指向父类).
各种关系的强弱顺序:泛化 = 实现 > 组合 > 聚合 > 关联 > 依赖
数据流图中加工的常用描述方法有结构化语言、判定树和判定表。
软件成熟度模型(CMM)的基本概念
软件过程的特点是无秩序,无章法和无步骤可循的状态为初始级得核心。
建立基本的项目管理和实践来跟踪项目费用、进度和功能特性为可重复级的核心;
使用标准开发过程(或方法论)构建(或集成)系统为己定义级的核心:
管理层寻求更主动地应对系统的开发问题为已管理级的核心;
连续地监督和改进标准化的系统开发过程为优化级的核心。
实体-关系图(ERD),用于数据建模,数据对象描述 ;
数据流图(DFD),用于功能建模,加工规格说明 ;
状态-迁移图(STD),用于行为建模,控制规格说明。
本题考查功能测试用例概念
软件测试信息流的输入包括:软件配置、测试配置、测试工具。
•业务流程测试用例包括通过测试用例和失败测试用例。
•功能测试用例一般包括业务流程测试用例和功能点测试用例。
•通过测试用例是验证需求能否正确实现,打通流程的一类测试。
•失败测试用例是模拟一些异常业务操作,测试系统是否具备容错性。
功能测试用例的主要元素包括测试步骤、测试数据和预期结果。实测结果是案例的执行结果
要设计有效的功能测试用例,应该做到:
•测试用例应该100%地覆盖测试业务需求。
•利用场景法模拟核心业务流程的正确执行。
•利用场景法设计测试用例时,往往是一个业务流程需要多条验证数据。
•利用边界值法设计测试用例,能够验证界面输入值的边界处理是否正确。
测试用例设计方法:
•边界值法既可以用于黑盒测试用例设计,也可以用于白盒测试用例设计。
•基本路径法用于白盒测试用例设计。
•正交试验设计法用于黑盒测试用例设计。
•逻辑覆盖法用于白盒测试用例设计。
白盒测试:主要是检查程序的内部结构、逻辑、循环和路径。
逻辑覆盖:以程序的内部逻辑结构为基础,分为语句覆盖(SC)、判定覆盖(DC)、条件覆盖(CC)、判定-条件覆盖(CDC)、修正条件判定覆盖、条件组合覆盖(MCC)等。
黑盒测试方法包括等价类划分方法、边界值分析方法、错误推测方法、因果图方法、判定表驱动分析方法、正交实验设计方法和功能图分析方法等。
白盒测试方法包括:静态测试和动态测试,其中静态测试包括 代码检查法、静态结构分析法、静态质量度量法;动态测试包括逻辑覆盖法、基本路径测试法、域测试、符号测试、路径覆盖和程序变异。
回归测试:
回归测试应该执行初测时所用的全部测试用例。即使通过多次的回归测试,也很难发现所有缺陷。验收测试可能需要多次回归测试。
软件测试原则如下:
•所有的软件测试都应该追溯到用户需求。
•测试应尽早不断地执行。
•程序员应避免测试自己的程序。
•软件失效是指软件运行时产生的一种不希望或不可接受的外部行为结果。
•软件缺陷包括软件未达到产品说明书标明的功能,软件出现了产品说明书指明不会出现的错误,软件功能超出产品说明书指明范围等。
•测试的目的之一是以评价一个程序或者系统属性为目标的一种活动,测试是对软件质量的度量与评估,以验证软件的质量满足用户的需求,为用户选择与接受软件提供有力的依据。
•测试的目的之二是想以最少的人力、物力和时间找出软件中潜在的各种错误和缺陷,通过修正各种错误和缺陷提高软件质量,回避软件发布后由于潜在的软件缺陷和错误造成的隐患带来的商业风险。
件测试分类概念:
•按产品的生命周期分,软件测试可分为单元测试、集成测试确认测试、系统测试和验收测试。
•集成测试是在模块测试完成的基础上,将所有的程序模块进行组合并验证其是否满足用户需求的过程。
•按测试方法分,软件测试可分为白盒测试和黑盒测试。
•系统测试是将被测软件作为整个基于计算机系统的一个元素,与计算机硬件、外设、某些支持软件、数据和人员等其他系统元素结合在一起进行测试的过程。
软件编码规范评测有这四种: 源程序文档化、数据说明、语句结构、输入和输出。
GB/T16260-2006<软件工程产品质量>规定的软件产品使用质量特性包括有效性、生产率、安全性、满意度。
使用质量从用户角度看待的质量属性:有效性、生产率、安全性、满意度。
可靠性测试的概念:
•软件可靠性的种种局限不是由于软件需求和使用方式发生了变化。
•软件可靠性是指在指定条件下使用时,软件产品维持规定的性能级别的能力
•针对软件可靠性中的容错性子特性应测试软件失效防护能力
•软件可靠性包括成熟性、容错性、易恢复性、可靠性依从性等质量子特性。
可移植性的概念:可移植性包括以下质量子特性:适应性、易安装性、共存性、易替换性和可移植性。
根据W模型的要求,一旦有文档提供,就要及时确定测试条件,以及编写测试用例,这些工作对测试的各级别都有意义。当需求被提交后,就需要确定高级别的测试用例来测试这些需求。当概要设计编写完成后,就需要确定测试条件来查找该阶段的设计缺陷。
如何保证测试质量:
•测试用例依据测试需求而编写,用户需求频繁变化,如果用例不能及时更新,测试质量会受到影响。
•测试管理和测试技术都会影响测试质量,测试流程不规范属于测试管理领域严重问题。
•测试周期是根据测试工作量而确定的,压缩测试周期会造成测试覆盖度不够,影响测试质量。
•背靠背测试方式是指同一功能分别由两组人员在互不交流的情况执行测试工作,是保证测试质量的有效手段。
GB/T16260-2006《软件工程产品质量》规定的软件产品使用质量特性包括有效性、生产率、安全性、满意度。
软件质量模型有功能性、可靠性、易使用性、高效性、可维护性、可移植性等六大质量特性,其中功能性包括适用性、准确性、互操作性、符合性、保密安全性五个子特性。
ISO/IEC软件质量模型由三个层次组成:一层是质量特性、二层是质量子特性,三层是度量指标。功能性是一组功能及其指定的性质的存在有关的一组属性,其子特性包括适应性、准确性、互用性、依从性和安全性;其中可靠性指在指定条件下,软件维持其性能水平有关的能力,其子特性包括成熟性、容错性和易恢复性。
静态质量度量使用质量度量模型分析程序的复杂性,用复杂度参数来度量软件是否易理解、可读等。
静态质量度量模型也是遵循一定标准的,常见模型包括圈复杂度、代码行数、Halstead复杂度等。
软件评价过程的特性包括可重复性、可再现性、公正性和客观性。
《信息安全等级保护管理办法》规定信息系统的安全保护等级分为以下五级:
自主保护级:等级保护对象受到破坏后,会对公民、法人和其他组织的合法权益造成损害,但不损害国家安全、社会秩序和公共利益;
指导保护级:等级保护对象受到破坏后,会对公民、法人和其他组织的合法权益产生严重损害,或者对社会秩序和公共利益造成损害,但不损害国家安全;
监督保护级:等级保护对象受到破坏后,会对公民、法人和其他组织的合法权益产生特别严重损害,或者对社会秩序和公共利益造成严重损害,或者对国家安全造成损害;
强制保护级:等级保护对象受到破坏后,会对社会秩序和公共利益造成特别严重损害,或者对国家安全造成严重损害;
专控保护级:等级保护对象受到破坏后,会对国家安全造成特别严重损害。
可靠性、可用性和可维护性是软件属性。
可靠性是指一个系统对于给定的时间间隔内、在给定条件下无失效运作的概率。可以用MTTF/(1+MTTF)来度量,其中MTTF为平均无故障时间。
可用性是在给定的时间点上,一个系统能够按照规格说明正确运作的概率„可以用MTBF/(1+MTBF)来度量,其中MTBF为平均失效间隔时间。
可维护性是在给定的使用条件下,在规定的时间间隔内,使用规定的过程和资源完成维护活动的概率。可以用1/(1+MTTR)来度量,其中MTTR为平均修复时间。
软件维护:
软件系统在交付给用户之后进入软件维护阶段,软件维护的类型主要包括以下四类:
正确性维护(改正性维护):是指改正在系统开发阶段已发生而系统测试阶段尚未发现的错误。
适应性维护:是指使应用软件适应信息技术变化和管理需求变化而进行的修改。
完善性维护:为扩展功能和改善性能而进行的修改。
预防性维护:改变系统的某些方面,以预防失效的发生。
防火墙可实现对数据包的过滤、保存用户访问网络的记录和服务器代理功能。
采用防火墙的应用系统中,设计的测试点主要应包括:是否支持对HTTP、FTP、SMTP等服务类型的访问控制、是否支持交换和路由两种工作模式、是否考虑到防火墙的冗余设计、是否支持对日志的统计分析功能;对防火墙本身或受保护网段的非法攻击系统,是否提供多种警告方式以及多种级别的告警。
性能:
负载压力测试的性能指标包括客户端交易处理性能指标、服务器资源监控指标、数据库资源监控指标、Web服务器监控指标以及中间件监控指标。
负载压力测试指标:交易执行吞吐量、交易执行响应时间以及每秒点击率是衡量业务执行效率的指标;并发请求数是考核系统能够承受的负载。
客户端交易处理性能指标包括并发用户数、交易处理指标(平均事务响应时间和每秒事务数都是交易处理指标)、Web请求指标和Web页面组件指标。
不同防护策略的作用:安全防护策略主要有安全日志、入侵检测、隔离防护和漏洞扫描等。入侵检测能够主动采集信息,分析网络攻击行为和误操作的实时保护策略。
数据策略中备份与恢复的手段有:数据安全包括存储设备(SAN)、存储优化、存储保护(双机容错)和存储管理(异地容灾)等 。
口令强度和口令控制模式:最小改变口令的时限、最短口令长度、首次登录必须改变口令均可提高口令的安全性。
计算公式:
1.白盒测试用例设计方法:基本路径测试法。确定独立路径条数需要计算圈复杂度V(G),计算方法包括三种:V(G)=区域数
V(G)=判断节点数+1 V(G)=边-节点+2。
备注:判定节点数指if语句数。
2.表达式的后缀表示是指将运算符写在运算对象的后面,表达式种的运算符号按照计算次序书写。
例如:a*(b-(c+d))的后缀为(abcd+ -*)
码制计算:
缺陷探测率=测试人员发现的缺陷数/ (测试人员发现的缺陷数+用户发现的缺陷数)
场景法=基本流+备用流
赋予用户权限命令的简单格式:GRANT 权限 ON 数据库对象 TO 用户 WITH GRANT OPTION
创建视图的语句格式如下:CREATE VIEW 视图名 AS SELECT 查询子句 [WITH CHECK OPTION]
注意:WITH CHECK OPTION 表示对 UPDATE,INSTER,DELETE 操作时保证更新、插入或删除的行满足视图定义中的谓词条件
二叉树遍历:先序遍历即根左右(①访问根结点②先序遍历左子树; ③先序遍历右子树)中序遍历即左根右(①中序遍历左子树; ②访问根结点;③中序遍历右子树。)后序遍历即左右根(①后序遍历左子树;②后序遍历右子树; ③访问根结点。)
插入排序算法将输入数组分为两部分,已排序部分和未排序部分,每次从未排序部分中取出第一个元素,插入到已排序部分的正确位置。当输入数据基本有序时,插入排序所需要进行元素之间比较的次数最少,是最好情况下的运行时间,其复杂度为线性时间O(N)。
归并排序和堆排序在所有情况下的运行时间均为O(nlgn)。
快速排序在最坏情况下的运行时间0(n2),当输入数据序列基本有序时,快速排序处于最坏的情况。
协议:
MIME提供的是多格式邮件服务,PGP是安全邮件协议,POP3为邮件接收协议,SMTP为邮件发送协议。
应用层协议的是简单网络管理协议SNMP,它的传输层协议是UDP。ARP和ICMP都属于网络层协议。X.25是分组交换网上的协议,也归于网络层。
POP3协议是TCP/IP协议簇中用于邮件接收的协议。邮件客户端通过与服务器之间建立TCP连接,采用Client/Server计算模式来传送邮件。
ICMP (Internet control Message Protocol)与IP协议同属于网络层,用于传送有关通信问题的消息;ICMP报文封装在IP数据报中传送,因而不保证可靠的提交。
DHCP客户端可从DHCP服务器获得本机IP地址、DNS服务器的地址、DHCP服务器的地址、默认网关的地址等。
通常PPP支持的两个认证协议是:①口令验证协议(PAP:提供了一种简单的两次握手认证方法);②质询握手认证协议(CHAP:采用三次握手方式周期地验证对方的身份)
操作系统进程通信方面的基础知识:
当某进程时间片到时,操作系统将该进程置于就绪状态,并从就绪状态的进程中选一个进程投入运行;执行V操作意味着要释放一个资源,不会引起进程阻塞;I/O完成意味着某进程等待的事件发生了,将唤醒该进程,故不会引起进程阻塞;执行P操作表示申请一个资源,当无可用资源时,系统将该进程插入阻塞队列。
分布式数据库:
分片透明是指用户或应用程序不需要知道逻辑上访问的表具体是怎么分块存储的。
复制透明是指采用复制技术的分布方法,用户不需要知道数据是复制到哪些节点,如何复制的。
位置透明是指用户无须知道数据存放的物理位置。
逻辑透明,即局部数据模型透明,是指用户或应用程序无须知道局部场地使用的是哪种数据模型。
数据库设计主要分为用户需求分析、概念结构、逻辑结构和物理结构设计四个阶段。其中,在用户需求分析阶段中,数据库设计人员采用一定的辅助工具对应用对象的功能、性能、限制等要求所进行的科学分析,并形成需求说明文档、数据字典和数据流程图。用户需求分析阶段形成的相关文档用以作为概念结构设计的设计依据。
关系数据库的关系基本运算有两类:一类是传统的集合运算,包括并、差、交等;另一类是专门的关系运算,包括选择、投影、连接。
Web服务器配置相关知识。
小于1024的端口通常用做服务器端提供服务的端口,常用的有80端口用做Web服务器端口,21、20端口用做文件传输协议的控制与数据端口,23端口为Telnet服务端侦听端口,25端口为邮件传输SMTP的服务端口。大于1024的高端通常为服务请求客户端采用的端口。
自动化:
动化测试技术包括自动测试执行、输出的比较、测试的录制与回放、测试用例自动生成等,其中,测试用例生成是最需要智力和创造力的活动,而这正是自动化工具最不擅长的事情。