其他分享
首页 > 其他分享> > 阿里测试小组折腾1年!费尽心血!整理出来的软件测试工程师笔试题!

阿里测试小组折腾1年!费尽心血!整理出来的软件测试工程师笔试题!

作者:互联网

一、计算机知识

 

1、在Linux系统中,一个文件的访问权限是755,其含义是什么?

参考答案:

       755表示该文件所有者对该文件具有读、写、执行权限,该文件所有者所在组用户及其他用户对该文件具有读和执行权限。

 

2、Linux中,如何从root用户切换到普通用户?

参考答案:su

su user1  切换到user1,但切换后的当前目录还是root访问的目录

su – user1 切换到user1,并且当前目录切换到user1的根目录下(/home/user1/)

 

3、简述一下C/S模式和B/S模式的区别?

参考答案:

C/S 是客户端/服务器 架构
B/S 是浏览器/服务器 架构

 

C/S模式有以下特点:

 

B/S模式有以下特点:

 

4、Windows操作系统中PATH环境变量的作用是什么?

参考答案:

       PATH是Windows操作系统环境变量,PATH作用是用户在命令行窗口执行一个命令,则在PATH变量设置的目录下依次寻找该命令或对应的执行文件,若找到,则执行,若没有找到,则命令行窗口返回无效命令。

 

5、TCP和UDP有什么区别?

参考答案:
TCP:

有连接,所以握手过程会消耗资源,过程为可靠连接,不会丢失数据,适合大数据量交换。

 

UDP:

非可靠连接,会丢包,没有校验,速度快,无须握手过程。

 

 
TCP
UDP
是否连接
面向连接
面向非连接
传输可靠性
可靠的
不可靠的
应用场合
传输大量数据
少量数据
速度

 

6、DNS是什么?它是如何工作的?

参考答案:

域名解析服务。用于将域名解析为IP,或反和将IP解析为域名。

客户机可指定DNS服务器来解析,或用本机hosts文件进行解析。

 

7、说出4种及以上常用的操作系统及其主要的应用范围(微软操作系统除外)

参考答案:

Linux(Red Hat、SUSE、Debian、Trubo Linux):主要用于搭建各类服务器

MAC OS:苹果机的操作系统,用于图像处理

Unix(AIX):IBM服务器的专用操作系统

Solaris(FreeBSD、NetBSD):Sun操作系统

 

8、面向对象程序设计有哪些特点?

参考答案:

面向对象程序设计以需求当中的数据作为中心,来进行设计,具有良好的代码重用性。

 

9、一条软件缺陷记录都包含哪些内容?

参考答案:

 

10、一套完整的测试应该由哪些阶段组成?

参考答案:

测试计划、测试设计与开发、测试实施、测试评审与测试结论

 

 

二、测试知识

 

 

1、您以往所从事的软件测试工作中,是否使用了一些工具来进行软件缺陷(Bug)的管理?如果有,请结合该工具描述软件缺陷(Bug)跟踪管理的流程。

参考答案:

 

2、请试着比较一下黑盒测试、白盒测试、单元测试、集成测试、系统测试、验收测试的区别与联系。

参考答案:

 

3、你所熟悉的测试用例设计方法有哪些?分别以具体的例子说明在实际测试中的应用。

参考答案:

 

4、画出软件测试的V模型图。

参考答案:

图片

 

5、软件的安全性应从哪几个方面去测试?

参考答案:

 

6、描述软件产生内存泄露的原因以及检查方式。(可以结合一种开发语言进行描述)

参考答案:

内存泄露的原因,主要是由于开发过程当中申请了计算机资源(例如对象、内存等),但是使用资源完成以后没有及时释放资源导致的。例如在C语言当中使用了malloc申请了内存,但是未使用free来释放内存。

 

7、简述软件自动化测试工具的原理。

参考答案:

测试工具的优势在于可部分地替代人工的测试过程,通过测试工具来模拟人的手工操作,这个过程中会记录操作的对象和操作的顺序,然后在回放时按照录制的顺序操作这些对象。

能重复不断地执行,能精确判断数值和字符对象。自动化测试工具把测试用例用自动的方式执行,例如,自动地产生数据,自动地打开应用程序,自动地查找控件, 自动地输入数据,自动地操作控件,自动地收集测试结果,自动地与预期结果进行比较等。

三、数据库

为管理业务培训信息,建立3个表:

S(S#,SN,SD,SA)   S#,SN,SD,SA分别代表学号,学员姓名,所属单位,学员年龄

C(C#,CN)   C#,CN分别代表课程编号,课程名称

SC(S#,C#,G)   S#,C#,G分别代表学号,所选的课程编号,学习成绩

 

(1) 使用标准SQL嵌套语句查询选修课程名称为’税收基础’的学员学号和姓名?

select s# ,sn from s where S# in(select S# from c,sc where c.c#=sc.c# and cn=’税收基础’)

 

(2) 使用标准SQL嵌套语句查询选修课程编号为’C2’的学员姓名和所属单位?

select sn,sd from s,sc where s.s#=sc.s# and sc.c#=’c2’

 

(3) 使用标准SQL嵌套语句查询不选修课程编号为’C5’的学员姓名和所属单位?

select sn,sd from s where s# not in(select s# from sc where c#=’c5’)

 

(4) 查询选修了课程的学员人数

select 学员人数=count(distinct s#) from sc

 

(5) 查询选修课程超过5门的学员学号和所属单位?

select sn,sd from s where s# in(select s# from sc group by s# having count(distinct c#)>5)

 

四、编程题

编程输出1/1+1/3+1/5+……+1/99的和。

参考答案(Java):

public class Sum {
    public static void main(String[] args) {
        float sum = 0.0f;

        for (float i = 1.0f; i <= 99.0f; i = i + 2) {
            sum = (1 / i) + sum;
        }

        System.out.println(sum);
    }
}

如果您觉得文章还不错,请 点赞、分享、在看、收藏 一下,因为这将是我持续输出更多优质文章的最强动力!

在这里推荐一个我自己创建的软件测试交流群,QQ:642830685,群中会不定期的分享软件测试资源,测试面试题以及测试行业资讯,大家可以在群中积极交流技术,还有大佬为你答疑解惑。

 

标签:费尽心血,等价,参考答案,测试用例,测试,整理出来,bug,输入,软件测试
来源: https://blog.csdn.net/weixin_54696666/article/details/116765823