1.对手机软件的压力测试通常可以包括(ABC)
A存储压力B响应能力压力
C网络流量压力D并发压力
2.软件验收测试的合格通过准则(ABCD)
A软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求。
B所有测试项没有残余一级、二级和三级错误。
C立项审批表、需求分析文档、设计文档和编码实现一致。
D验收测试工件齐全。
3.考察知识点:黑盒测试方法:等价类、边界值、因果图、错误推测(功能测试或数据驱动测试)
白盒测试:(结构测试或逻辑驱动测试)路径测试、条件判断、循环测试、语句覆盖、判定条件覆盖等
4.有关“测试驱动开发”,下列说法正确的有?(ABCD)
A.TDD的原理是在开发功能代码之前,先编写单元测试用例代码,测试代码确定需要编写什么产品代码
B.TDD的基本思路就是通过测试来推动整个开发得进行,但测试驱动开发并不只是单纯的测试工作,而是把需求分析,设计,质量控制量化的过程。
C.TDD的重要目的不仅仅是测试软件,测试工作保证代码质量仅仅是其中一部分,而且是在开发过程中帮助客户和程序员去除模棱两可的需求。
D.TDD首先考虑使用需求(对象、功能、过程、接口等),主要是编写测试用例框架对功能的过程和接口进行设计,而测试框架可以持续进行验证。
扩展:测试驱动开发是敏捷开发中的一项核心实践和技术,也是一种设计方法论。TDD得原理是在开发功能代码之前,先编写单元测试用例代码,测试代码确定需要编写什么产品代码。TDD虽是敏捷方法的核心实践,但不只适用于XP(ExtremeProgramming),同样可以适用于敏感词开发方法和过程。TDD得基本思路就是通过测试来推动整个开发得进行,但测试驱动开发并不只是单纯的测试工作,而是把需求分析,设计,质量控制量化的过程。TDD的重要目的不仅仅是测试软件,测试工作保证代码质量仅仅是其中一部分,而且是在开发过程中帮助客户和程序员去除模棱两可的需求。TDD首先考虑使用需求(对象、功能、过程、接口等),主要是编写测试用例框架对功能的过程和接口进行设计,而测试框架可以持续进行验证。
优点:在任意一个开发节点都可以拿出一个可以使用,含少量bug并具一定功能的产品。
缺点:增加代码量。测试代码是系统代码的两倍或更多。
5.软件验收测试包括哪些?(ACD)
A正式验收测试B白盒测试
Calpha测试Dbeta测试
6.系统测试的策略有哪些?(ABCD)
A负载测试B易用性测试
C强度测试D安全测试
7.设计系统测试计划需要参考的项目文档有哪些?(ACD)
A软件测试计划B可行性研究报告
C软件需求规范D迭代计划
8.下面关于软件测试,描述正确的是?(ABCD)
A软件测试是使用人工操作或者软件自动运行的方式来检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别的过程。
B软件测试的测试目标是发现一些可以通过测试避免的开发风险。
C软件测试的原则之一是测试应该尽早进行,最好在需求阶段就开始介入。
D软件测试主要工作内容是验证(verification)和确认(validation)
9.集成测试的过程包括有以下哪些?(ABCD)
A构建的确认过程
B系统集成测试测试组提交过程
C测试用例设计过程
DBug的报告过程
10.做好文档测试需要注意的点有哪些?(ABCD)
A仔细阅读,跟随每个步骤,检查每个图形,尝试每个示例
B检查文档的编写是否满足文档编写的目的
C内容是否齐全,正确,完善
D标记是否正确
11.下述有关负载测试,容量测试和强度测试的描述正确的有?(ABCD)
C容量测试:容量测试目的是通过测试预先分析出反映软件系统应用特征的某项指标的极限值(如最大并发用户数、数据库记录数等),系统在其极限值状态下没有出现任何软件故障或还能保持主要功能正常运行。
D容量测试是面向数据的,并且它的目的是显示系统可以处理目标内确定的数据容量。
12.下面描述测试工具的功能正确的有?(ABCD)
AJMeter:基于JAVA的压力测试工具,Badboy用来进行脚本的录制
BJunit:白盒测试工具:针对代码测试
CLoadRunner:负载压力测试
DTestLink:用例管理工具
13.下面哪些属于网游的测试内容?(ABCD)
A客户端性能
B服务器端性能
C从运行完game.exe打开游戏界面后可进行的各种操作、玩法
D界面
14.测试的方法可以分为哪几种?(ABCD)
A个人复查
B抽查和会审
C黑盒测试
D白盒测试
1).输入不在范围内的打折价和不在范围内的原价(提示输入有误)
2).输入在范围内的打折价和不在范围内的原价(提示输入有误)
3).输入不在范围内的打折价和在范围内的原价(提示输入有误)
4).输入在范围的内打折价和原价(原价=打折价,返回折扣1.0)
5).输入在范围的内打折价和原价(原价>打折价,返回正确的折扣信息)
6).输入在范围的内打折价和原价(原价<打折价,返回错误信息)
16.以windows对文件的复制粘帖功能为例,尽可能多地写出测试思路。
参考答案:
1).基本功能测试:文件的复制粘贴功能,首先关键字“文件”,文件有不同的分类(图片、视频、音频、文档等),每个分类又有不同的类型(文档类型:txtdocexeclpdf等),每个文件又有不同的大小,而且文件还有很多权限,是不是隐藏,是不是只是管理员可执行。选择不同分类的不同类型,不同大小的文件做测试资源。比如:文档类型里面txt文件可以分为1.KB的txt文件、1MB的txt文件、1GB的txt文件。。。。下一个关键字复制粘贴复制有多种方式右击选择、Ctrl+C、拖动复制,对应粘贴也有各种方式。然后从哪复制,粘贴到哪,比如可以有本机硬盘、移动硬盘、优盘、内存卡、软盘、光盘、连接手机存储,复制到网络地址等等。复制粘贴后文件是不是可用,文件权限是不是有变化。复制过去容量不够怎么处理?复制过后有重名文件怎么处理?复制过程中取消、关机、拔优盘怎么处理?复制过程能不能执行文件?
2).性能测试:复制粘贴功能性能怎么样?复制文件的速度可不可以接受?同时复制多个文件是不是可以完成复制文件过程中占用CPU资源大不大,耗电量大不大?
3).兼容性测试WindowsXP,Windows7,Windows8,Windows8.1,Windows10等各种windows版本是不是都支持这个功能。
4).交互测试;复制粘贴文件时,使用windows存储的其他功能是否有影响?比如播放本地的音频、视频、等同时复制文件是不是有影响。一边复制,一边粘贴是不是有影响
17.已知Stringconvert(Stringpage)作用是将WEB页转码为方便移动设备查看的页面,为了确保转码的正确性,请设计相应测试策略。
1【基本功能测试】
功能:
输入正确的网址,进行转码,检查内容是否正确;
边界:
输入信息量非常大的网址
输入没有信息的网址
负值:
输入错误的网址,进行转码,系统是否有相应的提示;
输入的web的page为空,是否抛出异常;
2【兼容测试】
使用不同操作系统的移动设备查看转换后的页面,检查内容是否正确;
使用不同分辨率的移动设备查看转换后的页面,检查内容是否正确;
使用不同浏览器查看转换后的页面,检查内容是否正确;
3【性能测试】
4【易用性/用户体验测试】
测试转码后,页面显示是否美观;
18.测试淘宝站内的搜索系统
19.写一个函数,输入一个二叉树,树中每个节点存放了一个整数值,函数返回这棵二叉树中相差最大的两个节点间的差值绝对值。
20.给定一个query和一个text,均由小写字母组成。要求在text中找出以同样的顺序连续出现在query中的最长连续字母序列的长度。例如,query为“acbac”,text为“acaccbabb”,那么text中的“cba”为最长的连续出现在query中的字母序列,因此,返回结果应该为其长度3。请注意程序效率。
#include
#include
#include
#include
#defineLEFTUP0
#defineLEFT1
#defineUP2
usingnamespacestd;
intMax(inta,intb,intc,int*max){//找最大者时a的优先级别最高,c的最低.最大值保存在*max中
intres=0;//res记录来自于哪个单元格
*max=a;
if(b>*max){
*max=b;
res=1;
}
if(c>*max){
*max=c;
res=2;
returnres;
stringLCS(conststring&str1,conststring&str2){
intxlen=str1.size();//横向长度
intylen=str2.size();//纵向长度
if(xlen==0||ylen==0)//str1和str2中只要有一个为空,则返回空
return"";
for(inti=0;i<=xlen;i++)//首行清0
arr[0][i].first=0;
for(intj=0;j<=ylen;j++)//首列清0
arr[j][0].first=0;
for(inti=1;i<=ylen;i++){
chars=str2.at(i-1);
for(intj=1;j<=xlen;j++){
intleftup=arr[i-1][j-1].first;
intleft=arr[i][j-1].first;
intup=arr[i-1][j].first;
if(str1.at(j-1)==s)//C1==C2
leftup++;
intmax;
arr[i][j].second=Max(leftup,left,up,&arr[i][j].first);
//cout< //cout< }/*矩阵构造完毕*/ //回溯找出最长公共子序列 stack inti=ylen,j=xlen; while(i>=0&&j>=0){ if(arr[i][j].second==LEFTUP){ if(arr[i][j].first==arr[i-1][j-1].first+1) st.push(i); --i; --j; elseif(arr[i][j].second==LEFT){ elseif(arr[i][j].second==UP){ stringres=""; while(!st.empty()){ intindex=st.top()-1; res.append(str2.substr(index,1)); st.pop(); intmain(){ stringstr1="GCCCTAGCG"; stringstr2="GCGCAATG"; stringlcs=LCS(str1,str2); cout< return0; 下面给一个Java版本 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 publicstatic int[][]num=newint[s1.length+1][s2.length+1]; for(inti=1;i for(intj=1;j if(s1[i-1].equals(s2[j-1])){ num[i][j]=1+num[i-1][j-1]; else{ num[i][j]=Math.max(num[i-1][j],num[i][j-1]); System.out.println("lenghtofLCS="+num[s1.length][s2.length]); ints1position=s1.length,s2position=s2.length; List while(s1position>0&&s2position>0){ if(s1[s1position-1].equals(s2[s2position-1])){ result.add(s1[s1position-1]); s1position--; s2position--; elseif(num[s1position][s2position-1]>=num[s1position-1][s2position]){