2022软件测试笔试题题库(本站整理)

作者: admin 分类: 面试专题 发布时间: 2022-11-10 23:10

2022软件测试笔试题题库含解题思路/请根据实际情况选择使用

题库范围:功能相关

  • 选择题:

1.软件测试工作应该开始于( B )

A.开发编码之后                       B.需求分析阶段

C.概要设计阶段                       D.详细设计阶段

2.以下关于测试作用的描述,不正确的是( B )

A.测试无法显示软件潜在的缺陷

B.测试能保证软件的缺陷和错误全部找到

C.测试只能证明软件存在错误而不能证明软件没有错误

D.所有的软件测试都应追溯到用户需求

3.在软件需求中,下列选项不属于软件质量属性的是( C )

A.安全性和保密性                     B.存活性

C.可维护性                            D.用户友好性

4.在黑盒测试中,着重检查输入条件组合的方法是( D )

A.等价类划分法                       B.边界值分析法

C.错误推测法                          D.因果图法

5.面向对象方法源于面向对象( D )

A.分析                                B.设计

C.建模语言                           D.编程语言

6. 关于测试用例编写描述有误的是( B )

A.测试用例要覆盖需求

B.测试用例一定要等开发人员实现软件之后再编写

C.除了需求还可以根据具体功能场景适当补充用例

D.编写的测试用例是指导测试的依据

7. 黑盒测试时需要关注内容( A )

A.功能满足需求                     B.接口设计

C.代码实现逻辑                     D.测试输入和输出

8.软件测试目的可以是:( B )

a.发现缺陷                          b.确认软件能够正常运行

c.预防缺陷                          d.直接提高产品的售价

e减少整个产品开发周期时间

A. a,b                              B. a,b,c

C. a,b,c,d                       D. 所有选项

9.以下关于测试原则的描述,正确的是:( B )

A.所有的软件测试不需要追溯到用户需求;

B.完全测试是不可能的;

C.测试可以显示软件潜在的缺陷;

D.程序员不需要避免检查自己的程序。

10.测试报告不包含的内容有:( D )

A.测试时间、人员、产品、版本                B.测试环境配置

C.测试结果统计                               D.测试通过/失败的标准

11.确认系统是否按照预期工作,从而在系统是否满足系统需求方面获取信心。这样的测试目的最可能适用下面的哪个测试阶段:( B )

A.集成测试                                  B.系统测试

C.回归测试                                  D.组件测试

12.识别测试的任务、定义测试的目标以及为实现测试目标和任务的测试活动规格说明。上述行为主要发生在:( A )

A.计划和控制                                B.分析和设计

C.实现和执行                                D.测试结束活动

13.在下列测试类型中,不适合采用手工测试的是:( B )

A.安全测试                                  B.负载测试

C.集成测试                                  D.再测试

14.软件测试中白盒法是通过分析程序的( B )来设计测试用例的。

A.应用范围                                  B.内部逻辑

C.功能                                       D.输入数据

15. CMMI组织过程改善的成熟度等级中的3级是( C )

A.已执行级    B.已管理级     C.已定义级    D.已定量管理级

16.为了提高软件测试的效率,应该( D )

A.随机地选取测试数据                  B.取一切可能的输入数据作为测试数据

C.在完成编码以后制定软件的测试计划   D.选择发现错误可能性最大的数据作为测试用例

17.与设计测试用例无关的文档是( A )

A.项目开发计划                              B.需求规格说明书

C.设计说明书                                 D.源程序

18.测试的关键问题是: ( B )

A.如何组织软件评审                           B.如何选择测试用例

C.如何验证程序的正确性                      D.如何采用综合策略

19.在黑盒测试中,着重检查输入条件组合的方法是( D )。

A.等价类划分法                              B.边界值分析法

C.错误推测法                                 D.因果图法

20.软件生存周期中,准确地确定软件系统必须做什么的阶段是( B )

A.可行性分析和项目开发计划                           B.需求分析

C.概要设计                                                        D.详细设计

21. 以下( C )语句的返回值不是22。

A.Select abs(-22)                              B.Select abs(22)

C.Select ceiling(22.1)                          D.Select floor(22.9)

22.以下不属于项目开发计划主要内容的是( C )

A.实施计划                                                        B.交付期限

C.测试用例                                                        D.人员组织及分工

23. 关于主键,以下( CD )说法是错误的。(多选)

A.主键可以用来确保表中不存在重复的数据行。  B.一个表必须有一个主键。

C.一个表只能有一个主键。                     D.只能对整数型列设置主键。

24.用于描述结构化分析中数据流加工逻辑的是( A )

A.判定树                                                    B.ER图

C.状态图                                                    D.用例图

25.若一个模块中各个处理元素都密切相关于同一功能且必须顺序执行,前一功能元素的输

出就是下一功能元素的输入,则该模块的内聚性类型是( C )

A.时间内聚                                                 B.偶然内聚

C.顺序内聚                                                 D.功能内聚

26. 下列选项中属于软件功能需求的是( D )

A.内存约束                              B.通信接口

C.审计功能                              D.产生月销售报表

27.程序流程图的优点不包括( B )

A.历史最悠久,使用最广泛                        B.容易表示逐步求精的过程

C.支持程序的三种基本控制结构                D.直观清晰,易于使用

28.确认测试也称为( A )

A.有效性测试                                             B.无效性测试

C.静态测试                                                 D.动态测试

29.黑盒测试技术不包括( B )

A.等价类划分                                             B.路径覆盖

C.边界值分析                                             D.错误推测

30.为了增加软件功能和性能、提高软件运行效率而进行的维护活动称为( C )

A.校正性维护                                             B.适应性维护

C.完善性维护                                             D.预防性维护

31.面向对象分析中,对象模型描述了系统的( A )

A.静态结构                                                 B.动态结构

C.控制结构                                                 D.顺序结构

32.与“程序维护手册”文档有关的人员是( B )

A.管理人员和开发人员                               B.管理人员和维护人员

C.维护人员和用户                                      D.管理人员和用户

33.软件工具“代码生成程序”属于( C )

A.需求追踪工具                                          B.质量保证工具

C.设计工具                                                 D.文档工具

34.下列不属于需求规约的作用是( C )

A.需求规约是软件开发组织和用户之间一份事实上的技术合同书,是产品功能及其

环境的体现

B.需求规约是一一个管理控制点

C.对于产品/系统的设计,需求规约是一个正式的、受控的交付验收点

D.需求规约是创建产品验收计划和用户指南的基础

35.下列选项不属于软件系统/产品的需求分析工作中,面临的“三大挑战”的是( C )

A.问题空间理解                          B.人与人之间的通信

C.客户可能抵触                          D.需求的变化性

36.下列关于软件接口应用应该注意的问题的叙述,不正确的是( B )

A.接口之间没有关联、泛化、实现和依赖,但可以参与泛化、实现和依赖

B.接口可以被其他类目使用,而其本身可以访问其他类目

C.接口描述类的外部可见操作,通常是该类的一一个特定有限行为

D.接口不描述其中操作的实现,也没有属性和状态

37.软件测试主要策略中,具有最低的测试度量的测试策略是( B )

A.路径覆盖                              B.语句覆盖

C.分支覆盖                              D.条件覆盖与条件组合覆盖

38.单元测试关注的是( D )

A.模块的组装                            B.检验是否符合用户所见的文档

C.检验系统中所有的元素之间的协作        D.每个独立的模块

39.软件工程在20世纪80年代以来获得的主要成果有( B )

A.瀑布模型    B.CASE产品    C.过程式语言    D.结构化方法

40.在销售管理系统需求文档中出现下列描述,属于外部接口需求范畴的是( D )

A.系统应能产生月销售报表

B.系统应在5分钟内计算出给定季度的总销售税

C.对要构建的账户接收系统,必须为月财务状况系统提供更新信息

D.任取1秒钟,一个特定应用所消耗的可用计算能力平均不超过50%

41.需求规约的基本性质包括重要性和稳定性程度、可修改的、完整的和( A )

A.一致的    B.可重复的    C.可复用的    D.可测试的

42.在建模过程中,可用以描述加工的工具是( D )

A.数据表    B.加工表   C.数据字典    D.判定表

43.指不同模块之间相互依赖程度的度量是( C )

A.扇出    B.扇入    C.内聚    D.耦合

44.把要解决问题的过程分解为多个步骤或阶段,每一步是对上一步结果的细化,以接近问题的解法,该方法称为( A )

A.逐步求精    B.逐步分解    C.逐步抽象    D.逐步概括

45.关联的多重性是指( D )

A.一个类有多少个方法被另一个类调用

B.一个类的某个方法被另一个类调用的次数

C.两个类所具有的相同的方法和属性的个数比

D.类中对象参与一个关联的数目

46.使用用况图可以为系统建模,描述软件系统行为的( A )

A.功能结构    B.业务过程结构  C.整体结构    D.状态结构

47. 在常见的软件开发模型中,引入风险分析的是( A )

A.螺旋模型    B.喷泉模型    C.演化模型    D.瀑布模型

48.关于调试,下列说法正确的是( C )

A.从一个侧面证明程序员的失败    B.受时间约束的

C.一个推理过程                   D.由独立的测试组完成

49.在教师分房方案中规定对教授、副教授、讲师和助教分别计算分数,做相应的处理,则根据黑盒测试中的等价类划分技术,下列划分正确的是( B )

A.4个有效等价类,4个无效等价类      B.4个有效等价类,1个无效等价类

C.1个有效等价类,1个无效等价类      D.1个有效等价类,4个无效等价类

50.有效性测试的目标是发现软件实现的功能与需求规格说明书不一致的错误,通常采用的测试技术是( A )

A.黑盒测试技术    B.用况测试技术    C.回归测试技术  D.性能测试技术

51.有关数据冗余说法错误的是( C )。

A.数据库中,数据存在副本的现象,就是数据冗余

B.通过分类存储,可以有效减少数据冗余,但是会增加数据查找的复杂性

C.在数据库设计阶段,一定要尽最大可能避免数据冗余,最好做到无数据冗余

D.数据冗余通常是由于数据库设计引起的

52. 关于标识列,以下说法正确的是( C )。

A.使用sql 语句插入数据时,可以为标识列指定要插入的值。

B.设定标识时,必须同时指定标识种子和标识递增量。

C.若设定标识时,未指定标识递增量,那么使用sql 语句插入数据时,可以为标

识列指定递增值

D.只能把主键设定为标识列

53. 以下()语句从表TABLE_NAME 中提取前10 条记录。( B )

A.select * from TABLE_NAME where rowcount=10

B.select TOP 10 * from TABLE_NAME

C.select TOP of 10 * from TABLE_NAME

D.select * from TABLE_NAME where rowcount<=10

54. 学生成绩表grade 中有字段score(float),现在要把所有在55 分至60 之间的分数提

高5 分,以下sql 语句正确的是( CD )。(选择两项)

A.Update grade set score=score+5

B.Update grade set score=score+5 where score>=55 or score <=60

C.Update grade set score=score+5 where score between 55 and 60

D.Update grade set score=score+5 where score >=55 and score <=60

55. 查找 student 表中所有电话号码(列名:telephone)的第一位为8 或6,第三位为0 的

电话号码( C )。

A.SELECT telephone FROM student WHERE telephone LIKE ‘[8,6]%0*’

B.SELECT telephone FROM student WHERE telephone LIKE ‘(8,6)*0%’

C.SELECT telephone FROM student WHERE telephone LIKE ‘[8,6]_0%’

D.SELECT telephone FROM student WHERE telephone LIKE ‘[8,6]_0*’

56. 关于聚合函数,以下说法错误的是( B )。

A.Sum 返回表达式中所有数的总合,因此只能用于数字类型的列

B.Avg 返回表达式中所有数的平均值,可以用于数字型和日期型的列

C.Max 和Min 可以用于字符型的列

D.Count 可以用于字符型的列

57. 使用以下( A )不可以进行模糊查询。

A.OR                                         B.Not between

C.Not IN                                     D.Like

58. 关于多表联接查询,以下( B )描述是错误的。

A.外联接查询返回的结果集行数可能大于所有符合联接条件的结果集行数。

B.多表联接查询必须使用到JOIN关键字

C.内联接查询返回的结果是:所有符合联接条件的数据。

D.在where 子句中指定联接条件可以实现内联接查询。

  • 判断题:

1.软件测试的目的是尽可能多的找出软件的缺陷。( √ )

2.只要我们做了充分的测试,就能保证软件没有 BUG。( × )

3. 一般的用例设计方法,都是为了减少测试时的测试用例数,都是为了用尽量少的测试用例去完成测试,去发现更多的问题。( √ )

4.边界是闭区间,则离点在外;边界是开区间,离点在内。( √ ) 

5.当开启一个新版本,开发人员提交版本之后,测试人员需要先进行冒烟测试。( √ )

6.黑盒测试的测试用例是根据程序内部逻辑设计的。( × )

7.在设计测试用例时,应包括合理的输入条件和不合理的输入条件。( √ )

8.在软件开发过程中,若能尽早暴露其中的错误,则为修复和改进错误所花费的代价就会降低。( √ )

9.软件项目在进入需求分析阶段,测试人员应该开始介入其中。( √ )

10.项目立项前测试人员不需要提交任何工件。( √ )

11.测试人员要坚持原则,缺陷未修复完坚决不予通过。( × )

12.回归测试一般是由用户来完成。( × )

三、简答题:(以下只简述解题思路)

1.请简述软件测试流程。

解题思路:

1:参与需求评审

1.1在早期暴露出需求存在的问题,后期如果是需求导致的缺陷修复成本太高

1.2测试人员越早介入大需求中,对需求了解的越透彻,对产品了解的越透彻,对后期的测试有帮助。

2:编写测试计划(5W1H)——正常情况下是由测试组长来编写

3:编写测试用例(TestCase)——项目组中的每个测试人员都需要编写,通过SVN管理测试用例

4:测试用例评审

5:搭建测试环境

6:执行测试,Run Case,提交缺陷,对缺陷跟踪,进行回归测试,这个持续3-5轮左右

7:验收测试

8:系统发布运行

2.如何评价一个软件系统的质量,从哪些维度进行考虑?

解题思路:

软件系统的质量要从以下的6个维度进行考虑

1、功能性:软件所实现的功能满足用户需求的程度,功能性反映了所开发的软件满足用户需求的程度,即用户要求的功能是否都全部实现了。

2、可靠性:也即软件除了满足用户需求之外,另外要求软件在发生故障时能继续运行程度。

3、易用性:它反映了软件与用户友善性,即用户在使用本软件的时候,是否方便。

4、效率:在指定的条件下,用软件实现某种功能,所需的计算机资源(包括时间)的有效程度,在完成功能的时,有没有资源浪费。

5、可维修性:可维修性反映了在用户需求或者软件环境发生改变时,对软件系统进行相应修改的容易程度。

6、可移植性:从一个计算机系统或者环境转移到另一个计算机系统或者环境的容易程度。

3.请简述冒烟测试的概念。

3.你认为什么样的测试用例是最好的测试用例?

解题思路:

1.测试用例一定要能覆盖到需求,不遗漏。

2.测试用例的操作步骤和输入数据要很详细,比如让一个新来的测试人员能按照这测试用例一步步进行操作进行测试执行动作。

3.测试用例有可维护性和扩展性要好,在后续的版本中可以借鉴。

4.接口怎样验证入参正确?

解题思路:数据库内验证

5.简述可行性研究报告包含的主要内容。

解题思路:

技术可行性:对要开发项目的功能、性能、限制条件进行分析,确定在现有的资源条件下,技术风险有多大,项目是否能实现。包括:开发的风险;资源的有效性;技术;开发人员在评估技术可行性时,一旦估计错误,将会出现灾难性后果。

经济可行性:包括成本――效果分析、公司经营长期策略、开发所需的成本和资源、潜在的市场前景。

社会可行性包括:合同、责任、侵权、用户组织的管理模式及规范,其他一些技术人员常常不了解的陷阱等。

6.简述因果图方法生成测试用例的基本步骤。

解题思路:

1.把系统规格划分解成可以测试的规格片段

2.分析分解后待测的系统规格,找出哪些是原因(条件),哪些是结果

3.画出因果图

4.将因果图转换成判定表

5.简化判定表(为方便对比,多余的可保留)

6.根据判定表生成测试用例

7.你写过测试用例吗?如写过,请列出用例设计格式包含的几大要素。

解题思路:

1.用例编号

2.用例项目

3.用例标题

4.用例属性(可忽略)

5.重要级别

6.预置条件

7.输入数据

8.操作步骤

9.预期结果

8.请简述判定表、因果图、正交试验法的区别。

解题思路:

判定表、正交试验法可以处理输入与输出关系的场景;

因果图除了可以处理输入输出关系,也可以应对输入与输入关系的场景

9.请分阶段描述软件测试的生命周期。

解题思路:

软件测试的需求分析

软件测试计划编写

软件测试用例设计

搭建测试环境

执行测试用例,提交缺陷,对缺陷进行跟踪

测试验收阶段

10.请描述软件项目上线前后的发布流程。

解题思路:

系统测试结束后,测试人员提交系统测试报告,报告中给出测试结果:通过后,产品人员经过验收合格后,运维人员先从公司里源代码管理器负责打包编译发版本到预生成环境,测试人员和相关的产品人员再在预生产环境运行进行相关的测试业务检查,如果通过的话,再从预生产环境发布正式的生成环境。

11.测试用例设计方法有哪些,请列举。你最常用的是哪几种?

解题思路:

等价类划分、边界值、判定表、因果图、正交试验法、场景法、错误猜测法

12.请描述DML和DDL的区别。

解题思路:

DML:Data Manipulation Language 数据操纵语句

常用的语句关键字主要包括 insert、delete、udpate 和select 等。(增添改查)

DDL:Data Definition Languages 数据定义语言,用来维护数据库对象,对数据库内部的对象进行创建、删除、修改的操作语言。

常用的语句关键字主要包括 create、drop、alter等

13.如果执行#chmod 764 file.txt,那么该文件的权限什么?

解题思路:

给file的属主分配读、写、执行(7)的权限,给file的所在组分配读、可读可写(6)的权限,给其他用户分配可读(4)的权限

14.请写下你所了解的LINUX操作命令。

解题思路:

1)线上查询及帮助命令(2个)

man help

2)文件和目录操作命令(13个)

ls tree pwd mkdir rmdir cd touch cp mv rm ln find rename

3)查看文件及内容处理命令(22个)

cat tac more less head tail cut split paste sort uniq wc iconv

dos2unix file diff vimdiff chattr lsattr rev grep egrep

4)文件压缩及解压缩命令(4个)

tar unzip gzip zip

5)信息显示命令(12个)

uname hostname dmesg uptime file stat du df top free date cal

6)搜索文件命令(4个)

which find whereis locate

7)用户管理命令(10个)

useradd usermod userdel groupadd passwd chage id su

visudo sudo

8)基础网络操作命令(10个)

telnet ssh scp wget ping route ifconfig ifup ifdown netstat

9.深入网络操作命令(6个)

lsof route mail mutt nslookup dig

10)有关磁盘文件系统的命令(8个)

mount umount df du fsck dd dumpe2fs dump

11)关机和查看系统信息的命令(3个)

shutdown halt init

12)系统管理相关命令(8个)

uptime top free vmstat mpstat iostat sar chkconfig

13)系统安全相关命令(10个)

chmod chown chgrp chage passwd su sudo umask chattr

lsattr

14)查看系统用户登陆信息的命令(7个)

whoami who w last lastlog users finger

15)查看硬件信息相关命令(8个)

ifconfig free fdisk ethtool mii-tool dmidecode dmesg lspci

16)其它(19个)

echo printf rpm yum watch alias unalias date clear history

eject time nohup nc xargs exec export unset type

17)系统性能监视高级命令(12个)

内存:top free vmstat mpstat iostat sar

CPU:top vmstat mpstat iostat sar

I/O:vmstat mpstat iostat sar

进程:ipcs ipcrm lsof strace lstrace

负载:uptime

18)关机/重启/注销命令(7)

关机重启:

shutdown init halt poweroff reboot

注销退出:

logout exit ctl+d(快捷键)

19)进程管理:(16 个)

bg:后台运行 fg:挂起程序 jobs:显示后台程序 kill,killall,pkill:杀掉进程

crontab:设置定时 ps:查看进程 pstree:显示进程状态树

top:显示进程 nice:改变优先权 nohup:用户退出系统之后继续工作

pgrep:查找匹配条件的进程 strace:跟踪一个进程的系统调用

ltrace:跟踪进程调用库函数的情 vmstat:报告虚拟内存统计信息

20)非常危险的系统命令(5 个)

mv rm fdisk parted dd

21)linux系统三剑客(3 个)

grep sed awk

15.请描述MYSQL和SQLServer的区别。

解题思路:

  • mysql支持enum,和set类型,sql server不支持
  • mysql不支持nchar,nvarchar,ntext类型
  • mysql的递增语句是AUTO_INCREMENT,而sql server是identity(1,1)
  • sql server默认导出表创建语句的默认值表示是((0)),而在mysql里面是不允许带两括号的
  • mysql需要为表指定存储类型
  • sql server识别符是[],[type]表示他区别于关键字,但是mysql却是 `,也就是按键1左边的那个符号
  • sql server支持getdate()方法获取当前时间日期,但是mysql里面可以分日期类型和时间类型,获取当前日期是cur_date(),当前完整时间是 now()函数

16.请描述接口测试的优势。

解题思路:

接口测试由于绕开了前端,直接通过请求调用的方式进行测试,有如下优势:

1、更早的测试介入,只要接口开发完成,就可以测试

2、更多的场景覆盖,因为绕开了前端的控制,使得测试场景更自由

3、 接口测试从项目的角度,工作量是低于UI测试的,投资回报较高

4、 接口测试对于自动化的支撑度更好,有好的接口测试过程,就有可能支持好的接口自动化过程另外,接口测试可以扩充对于其他类型测试的支持。比如性能测试,比如安全测试。  如果接口测试不做的话,这两种测试也不好做

17.请描述get与post的区别。

解题思路:

get:从指定的资源请求数据。

post:向指定的资源提交要被处理的数据。

可见性:get请求,在数据在URL中对所有人都是可见的,post数据不会显示在URL中。

安全性:与post请求相比,get数据安全性较差,因为所发送的数据是URL中的一部分,在发送密码或者其他敏感信息的时候,不要使用get。

对数据长度的限制:get是长度限制的,比如当发送数据的时候,get方法向url添加参数,url的长度是受限制的(url的长度是2048个字符)。

18.Linux中杀tomcat进程的命令是什么。

解题思路:kill -9

19.请描述B/S和C/S架构的区别。

解题思路:

C/S架构优缺点:

优点:

  • C/S架构的界面和操作可以很丰富。
  • 安全性能可以很容易保证,实现多层认证也不难。
  • 由于只有一层交互,因此响应速度较快。

缺点:

  • 适用面窄,通常用于局域网中。
  • 用户群固定。由于程序需要安装才可使用,因此不适合面向一些不可知的用户。
  • 维护成本高,发生一次升级,则所有客户端的程序都需要改变

B/S架构优缺点:

优点:

  • 客户端无需安装,有Web浏览器即可。
  • BS架构可以直接放在广域网上,通过一定的权限控制实现多客户访问的目的,交互性较强。
  • BS架构无需升级多个客户端,升级服务器即可。

缺点:

  • 在跨浏览器上,BS架构不尽如人意。
  • 表现要达到CS程序的程度需要花费不少精力。
  • 在速度和安全性上需要花费巨大的设计成本,这是BS架构的最大问题。
  • 客户端服务器端的交互是请求-响应模式,通常需要刷新页面,这并不是客户乐意看到的。

20.Http协议状态码有哪几种类型?写出302,  404,500,503表示什么含义?

解题思路:

302:(临时移动)服务器目前从不同位置的网页响应请求,但请求者应继续使用原有位置来进行以后的请求

404:(未找到)服务器找不到请求的网页

500:(服务器内部错误) 服务器遇到错误,无法完成请求

503:(服务不可用)服务器目前无法使用(由于超载或停机维护)。通常,这只是暂时状态

21.Http协议请求方式有哪些?

解题思路:

1.get

2.post

3.head

4.put

5.delete

22.请描述Cookie和Session的区别?

解题思路:

1. Session是另外一种记录客户状态的机制(客户端与服务器的一对一关系),不同的是cookie保存在客户端浏览器中,而session保存在服务器上。客户端在访问服务器时,服务器把客户端信息以某种形式保存在服务器上

2. Cookie机制是通过检验客户身上的“通行证”来检查客户身份,Session是通过检查服务器上的“客户明细表”来确认客户身份

3. Session机制决定了当前客户只会获取到自己的Session,而不会获取到别人的Session。各客户的Session也彼此独立,互不可见。session的使用比cookie方便,但是过多的session储存在服务器中,会对服务器造成压力

23.简述黑盒测试、白盒测试、灰盒测试的差异。

解题思路:

1.黑盒测试:又称功能性测试或行为测试

2.白盒测试:软件测试工程师可以访问程序员的代码,通过了解程序内部逻辑结构、对所有逻辑路径进行测试

3.灰盒测试:介于白盒测试与黑盒测试之间的一种测试,灰盒测试多用于集成测试阶段,不仅关注输出、输入的正确性,同时也关注程序内部的情况

24.Web测试和App测试有什么区别?

解题思路:

Web测试与APP测试在流程和功能测试上测试没有区别。

Web是B/S架构,APP是C/S架构,Web测试需要操作系统和浏览器兼容性测试,APP测试需要考虑系统安装、卸载、升级、自动更新、APP对于各种机型的适配性测试(借助于云测试技术),各种干扰性测试(比如中断,来电、短信、关机、重启)、弱网络测试(移动数据,Wifi)以及电量测试、流量测试。

25.简述测试阶段中单元测试、集成测试、系统测试、验收测试的概念及区别?

解题思路:

1.单元测试:在底层进行的测试称为单元测试或者模块测试

2.集成测试:又称组装测试,是在单元测试的基础上,将所有程序模块进行有序的、递增的测试

3.系统测试:是将整个软件系统看成一个整体进行测试

4.验证测试:检验软件是否符合用户需求的测试

26.软件测试中的测试类型有哪些?

解题思路:

1.按照是否覆盖源代码:黑盒测试、白盒测试、灰盒测试

2.按照测试阶段划分:单元测试、集成测试、系统测试、验收测试

3.按照是否运营:静态测试、动态测试

4.按照是否自动化:手工测试、自动化测试

5.其余:冒烟测试、回归测试、随机测试等

27.软件开发模型有哪些?

解题思路:

1.瀑布模型

2.敏捷开发模型

28.简单说明什么是敏捷开发模型,并说明工作流程?

解题思路:

1.敏捷开发模型:站会模式,节奏较快,小步快跑的模式向前推进项目

29.请简述你为什么想做测试。

解题思路:不定向思考

个人职业规划、听说、他人建议等

30.请简述你所理解的测试与开发的区别。

解题思路:不定向思考

测试:验证功能

开发:实现功能

四、场景题:

1.请描述Excel导出功能测试点。

解题思路:

1.文件输出时应该有适当的文件扩展名

2.导出Excel文件的文件名应该按照标准,例如:如果文件名使用时间命名,它应该在导出文件的时候妥善换成实际时间

3.当Excel文件包含日期列时需要检查导出的日期格式

4.检查数字格式的数值或货币值,格式应该和页面显示的相同

5.导出的文件应该有适当的列名称

6.默认页面排序应体现在导出文件中

7.Excel文件数据应正确格式化包括页眉和页脚文本、日期、页码等所有页面的值

8.检查数据在页面上显示的文件与导出Excel文件是是否一样

9.检查使用分页时的导出功能

10.检查导出按钮图标是否根据导出的文件类型正确显示,如:导出的是.xls文件,则显示Excel文件对应的图标

11.检查大文件的导出功能

12.检查页面包含特殊字符的导出功能,检查这些特殊字符是否正确地导出到Excel文件

2.请简述图像上传功能测试点。

解题思路:

1.检查图片上传路径

2.检查图像上传和修改功能

3.检查各种扩展图像文件的上传(例如JPEG、PNG、BMP等).

4.检查文件名中含有空格或其他可用特殊字符的图片的上传

5.检查重复名称图片上传

6.图片尺寸大于最大允许值,上传时应该显示适当的错误消息.

7.检查上传的图片文件类型外的其它文件时(例如txt、doc、pdf、exe等等),应该显示适当的错误消息

8.检查如果上传的图片满足指定的高度和宽度(如果有定义的话)则可以成功上传,否则不能上传

9.上传大尺寸图片时应显示上传进度条

10.检查上传过程中的取消按钮是否有效

11.检查文件选择对话框中的文件列表是否只显示支持文件类型

12.检查上传多个图像的功能

13.上传后检查图像质量,图像质量不应该改变

14.检查用户是否能够使用/查看上传的图像

3.请简述发送电子邮件功能测试点。

解题思路:

预期条件:1.测试用例不包含撰写或验证电子邮件

2.在执行邮件相关测试之前务必使用假电子邮件地址

用例思考:

1.所有电子邮件模板应该使用CSS标准

2.要验证电子邮件地址后再发送电子邮件

3.特殊字符在邮件正文模板应妥善处理

4.特定语言的字符(例如:俄文、中文或德文字符)应在电子邮件主体模板中妥善处理

5.电子邮件主题不能空

6.占位符字段中使用电子邮件模板应该替换为实际的值如{姓} {名}应该替换为所有收件人正确的名字和姓氏

7.如果报告有动态值包含在电子邮件的正文中,报告数据应正确计算

8.电子邮件发送者的名字不能为空

9.应该在不同的电子邮件客户端(如:Outlook,Gmail,Hotmail,Yahoo 邮件等)检查电子邮件

10.检查发送电子邮件功能使用TO、CC和BCC字段

11.检查纯文本邮件

12.检查HTML格式的电子邮件

13.查看邮件页眉和页脚相应的公司LOGO,隐私政策和其他链接

14.检查带附件的电子邮件发送

15.检查给一个、多个或者联系人组发送电子邮件

16.检查回复电子邮件地址是否正确

17.检查发送大量的电子邮件

4.已知某教务系统的描述是,用户输入用户ID号及口令信息后,系统进行身份验证;系

  统根据合法用户的功能请求进行分类处理。具体功能如下:

  (1)查询成绩:查询成绩以及从名次表中得到名次信息。

  (2)学籍管理:根据学生总成绩排出名次信息。

  (3)成绩处理:处理单科成绩并输入成绩表中。

  请画出该系统的数据流图,并指出其所包含的加工。

  解题思路:

加工:

  • 身份验证
  • 查询成绩
  • 学籍管理
  • 成绩处理
  • 请求分类

5.请尝试使用等价类划分用例设计方法,列出以下场景的有效及无效等价类(5分)

已知,用户注册页面需求:

用户名:长度为 3-19、以字母开头

姓名:非空

密码:非空

确认密码:值和密码值相同

出生月份:年(四位数字);月(1-12);日(1-31)

解题思路:

 有效等价类无效等价类
用户名长度3-19(A1)长度<3(B1) 长度>19(B2)
 以字母开头(A2)非字母开头(B3)
姓名非空(A3)为空(B4)
密码非空(A4)为空(B5)
确认密码值和密码相同(A5)值和密码不同(B6)
出生年份(年)年-四位(A6) 年-数字(A7) 年-合理范围(A8)不是四位(B7) 年数中有字母或其他非数字符号(B8) 年数不在不合理范围(B9)
出生年份(月)1-12(A9)月数<1(B10) 月数>12(B11) 月数中有字母或其他非数字符号(B12)
出生年份(日)1-31(A10)日数<1(B13) 日数>31(B14) 日数中有字母或其他非数字符号(B15)

A1~A10:方便描述有效等价类

B1~B15:方便描述无效等价类(一条无效等价类计为一条用例)

6.想到电商购物车,你能想到哪些功能测试点。

解题思路:

界面测试:

  • 打开页面后,页面的布局是否合理,显示是否完整;

功能测试:

  • 所有页面链接功能正常,可以点击到正确页面;
  • 从商品信息页面添加的商品能显示在购物车中;
  • 购物车页面打开的同时,在其他页面添加了商品,购物车页面刷新后,新的商品能显示;
  • 若未登录,点击购物车,则提示用户输入用户名和密码,或者提示其他的非注册用户购物方式;
  • 商品未勾选的状态下,结算按钮是灰色无法点击的;
  • 勾选商品后,已选商品的总价会显示,结算按钮变高亮可点击工作;
  • 勾选商品,点击结算按钮后,进入确认订单信息页面;
  • 购物车页面中,可以对添加的商品信息做信息的修改,并自动保存成功;
  • 购物车有商品降价或者库存告急的,是否有对应提示,缺货商品能否添加购物车;
  • 购物车能添加的商品种类是有数量上限的;
  • 不要的商品,可以删除;
  • (其他特有的功能不做赘述-,只讨论常见通用功能)

性能测试:

  • 打开购物车页面要多久;

可用性测试:

  • 快捷键功能知否支持

兼容测试:

  • 不同浏览器上的测试功能是否正常;
  • app上测试

7.面对订单页面,你能想到哪些功能测试点。

解题思路:

订单详情信息

1、订单信息:

  • 订单状态(待付款、已付款、待发货、已发货。。。。。)
  • 订单单号,是订单信息中的主key,代表了该订单的唯一性

订单生成规则:

第一种:年月日时分秒+6位随机码

第二种:以日期时间+自增流水号,被查到该电商网站看到的销售数量

…..其他的类型订单生成方式。

  • 创建时间
  • 付款时间
  • 发货时间
  • 结束时间/关闭时间
  • 订单关闭倒计时时间
  • 签收
  • 完成

2、商品信息

  • 店铺名称
  • 商品名称
  • 商品规格
  • 商品价格
  • 购买数量
  • 商品状态

3、收货人信息

  • 收货人姓名
  • 地址
  • 联系方式
  • 是否自提

4、金额信息

  • 运费
  • 优惠信息
  • 总金额
  • 实际支付金额
  • 支付方式

5、物流信息

  • 物流状态
  • 物流单号
  • 物流公司
  • 物流过程流水信息

6、操作栏

  • 拨打电话
  • 操作按钮
  • 客服栏

8.针对支付环节,你能想到哪些功能测试点。

解题思路:

支付功能的测试:

简单总结一下测试的思路:

一、 从金额上:包括正常金额的支付

  • 最小值的支付
  • 最大值的支付
  • 错误金额的输入(包括超限的金额、格式错误的金额等等)

二、 从流程上:正常完成支付的流程

  • 支付中断后继续支付的流程
  • 支付中断后结束支付的流程
  • 支付中断结束支付后再次支付的流程
  • 单订单支付的流程
  • 多订单合并支付的流程等等;

三、从使用的设备上:PC端的支付

  • 笔记本电脑的支付
  • 平板电脑的支付
  • 手机端的支付等;

四、从支付接口上:POSE终端机支付

  • 银行卡网银支付
  • 支付宝支付
  • 微信支付
  • 手机支付等;

五、从网速上:在wifi情况支付

  • 在4G/3G/2G流量下支付
  • 在支付过程中从wifi切换到4G/3G/2G流量下支付

六、从产品容错性上: 支付失败后如何补单或者退单、如何退款等;

七、从后台的账务处理上:

  • 成功订单的账务处理
  • 失败订单的账务处理
  • 退款订单的账务处理 差错账处理

八、修改支付金额支付

  • 通过抓包工具测试能否修改订单金额跳转到支付

9.一个登录页面怎么测试?

解题思路:

登录页面:

功能测试:

1、输入正确的用户名和密码,点击提交按钮,验证是否能正确登录

2、输入错误的用户名或者密码,验证登录会失败,并且提示错误的响应信息

3、登录成功后能否跳转到正确的页面

4、用户名和密码,如果太短或者太长,系统应该怎么处理

5、用户名和密码,中有特殊字符,和其他非英文的情况

6、记住用户名的功能

7、登录失败后,不能记录密码的功能

8、用户名和密码前后有空格的处理

9、密码是否以星号显示

界面测试:

1、布局是否合理,2个textbox和一个按钮是否对齐

2、textbox按钮的长度,高度是否符合要求

3、界面是否好看

4、图片、颜色、字体、超链接,是否都显示正确

性能测试:

1、打开登录页面,需要几秒

2、输入正确的用户名和密码,登录成功后,跳转至新页面,需要几秒(按照2-5-8的原则)

3、能支持多少个用户同时登录

安全性测试:

1、用户名和密码是否通过加密的方式传输

2、用户名和密码的验证,应该是用服务器端验证,而不是单单在客户端通过javascript验证

3、用户名和密码的输入框,应该屏蔽Sql注入攻击

4、用户名和密码的输入框,应该禁止输入脚本(防止Xss攻击)

5、错误登录次数的限制(防止暴力破解)

可用性测试:

1、输入用户和密码后,直接按回车键(Enter键)是否可以直接登录

2、是否支付Tab键的顺序

兼容性测试:

1、主流的浏览器下能否显示正常,并且功能正常(IE系列、Firefox、chrome,Safari等)

2、不同的工作平台是否能正常工作(Windows机器,Mac)

3、移动设备上是否正常工作(比如安卓、Iphone)

4、不同的分辨率

5、不同的浏览器大小(浏览器最大化,和非最大化)

10.针对下面2张表,写出对应的SQL语句。

题目1:查询不属于CS系的学生的学号,姓名,按照学号顺序排列显示。

解题思路:

Select Sno,Sname

From Student

Where Sdept !='cs'

题目2:查询出每个学生的信息及其对应课程的编号和成绩。

解题思路:

Select S.*,C.Cno,C.Grade

from Student S,SC C

where S.Sno=C.Sno

更多面试题,请参考:【面试专题】软件测试面试大纲及面试题

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!

发表回复