「分享一波初中级测试开发岗面试高频题:Python+测试理论+接口+web
前言
在过三天个月即将进入9月了,然而面对今年的大环境而言,跳槽成功的难度比往年高了很多,很明显的感受就是:对于今年的测试开发朋友跳槽面试,无论一面还是二面,都开始考验一个软件测试的技术功底和基础。对源码解读和核心原理理解也是成了加分项,特别是对 软件测试的一些核心基础知识点掌握的不够或者没有体系方向的朋友面试也成了一个苦恼的事情。
今天在这分享目前国内公司测试开发面试常问的问题包括测试基础、Python和MySQL,liunx,web测试,接口测试,数据结构与算法等。正所谓知己知彼,只有体系知识巩固,面对不断更新的技术才能快速掌握,同时在面试、工作中也更能脱颖而出!
由于篇幅原因,在这答案就不做全部展示了,这些题我已经整理成pdf文档免费分享给那些有需要的朋友,同时整理也花费了蛮多时间,有需要的朋友可以【点击这里,暗号牛客!!】获取以上的学习资料~
300道高频常问软件测试基础面试问题
1 什么是软件测试?
为了发现程序中的错误而执行程序的过程
2 软件测试的目的?
首先,测试并不仅仅是为了要找出错误。通过分析错误产生的原因和错误的分布
特征,可以帮助项目管理者发现当前所采用的软件过程的缺陷,以便改进。同时,这种分
析也能帮助我们设计出有针对性地检测方法,改善测试的有效性。
其次,没有发现错误的测试也是有价值的,完整的测试是评定测试质量的一种方法。
详细而严谨的可靠性增长模型可以证明这一点。
测试的目的是按照用户所需软件的质量,检查开发软件过程出现的 bug, 使得开发人员
及时修改,可以避免在开发结束的时候发现软件存在质量问题,避免公司不必要的损失。
赢得用户对公司产品的认可。
测试的目的是以最少人力、物力和时间找出软件中潜在各种错误和缺陷,通过修正种
错误和缺陷提高软件质量,回避软件发布后由于潜在的软件缺陷和错误造成的隐患带来的
商业风险。
测试的附带收获是,它能够证明软件的功能和性能与需求说明相符合。
实施测试收集到的测试结果数据为可靠性分析提供了依据。
测试不能表明软件中不存在错误,它只能说明软件中存在错误。
3 软件测试的目标
发现尽可能多的错误
测试是一个为了寻找错误而运行程序的过程。
一个好的测试案例是指很可能找到迄今为止尚未发现的错误的用例。
一个成功的测试是指揭示了迄今为止尚未发现的错误的测试。
4 软件测试的原则
1) 应当把“尽早地和不断地进行软件测试”作为软件开发者的座右铭。
2) 测试用例应由测试输入数据和对应的预期输出结果这两部分组成。
3) 程序员应避免检查自己的程序。
4) 在设计测试用例时,应包括合理的输入条件和不合理的输入条件。
5) 软件测试的原则
6) 充分注意测试中的群集现象。
经验表明,测试后程序中残存的错误数目与该程序中已发现的错误数目成正比。
7) 严格执行测试计划,排除测试的随意性。
8) 应当对每一个测试结果做全面检查。
6 测试工程师的职责
测试经理:
1、制定测试计划。
2、确保测试过程正常进行。
测试工程师
1、编写测试用例
2、搭建测试环境
3、执行测试
软件都有多少种分类?
根据功能的不同,电脑软件可以粗略地分成四个层次:
1、最贴近电脑硬件的是一些小巧的软件。它们实现一些最基本的功能,通常“固化”在只
读存储器芯片中,因此称为固件。
2、系统软件包括操作系统和编译器软件等。系统软件和硬件一起提供一个“平台”。它们
管理和优化电脑硬件资源的使用。
3、支持软件。包括图形用户界面、软件开发工具、软件评测工具、数据库管理系统、中间件等。
4、应用软件种类最多,包括办公软件、电子商务软件、通信软件、行业软件,游戏软件等
等。
Liunx高频常问57面试题
1、查看IP 地址?
ifconfig
2、创建和删除一个多级目录?
mkdir -p ./a/b rm -rf ./a
3、在当前用户家目录中查找 haha.txt 文件?
find ~/ -name haha.txt
4、如何查询出 tomcat 的进程并杀掉这个进程,写出 linux 命令?
ps -ef | grep tomcat
kill -9 tomcat_port
5、动态查看日志文件?
tail -f log_file
6、查看系统硬盘空间的命令?
df -aTh
7、查看当前机器 listen 的所有端口?
netstat -tlnp
MySQL高频常问80面试题
1 、表的连接查询方式有哪些,有什么区别?
交叉连接即笛卡儿乘积,是指两个关系中所有元组的任意组合
使用内连接时,如果两个表的相关字段满足连接条件,就从这两个表中提取数据并组合成新的记录 自连接是一种特殊的内连接,它是指相互连接的表在物理上为同一张表,但可以在逻辑上分为两张表
外连接是只限制一张表中的数据必须满足连接条件,而另一张表中的数据可以不满足连接条件的连接方式
2、事务的特性?
1、原子性(Atomicity):事务中的全部操作在数据库中是不可分割的,要么全部完成,要么均不执行。
2、一致性(Consistency):几个并行执行的事务,其执行结果必须与按某一顺序串行执行的结果相一致。
3、隔离性(Isolation):事务的执行不受其他事务的干扰,事务执行的中间结果对其他事务必须是透明的。
4、持久性(Durability):对于任意已提交事务,系统必须保证该事务对数据库的改变不被丢失,即使数据库出现故障
3、Mysql 数据库中怎么实现分页?
select * from table limit (start-1)*limit,limit;
其中 start 是页码,limit 是每页显示的条数。
4、Mysql 数据库的操作?
修改表-修改字段,重命名版:
alter table 表名 change 原名新名类型及约束;
alter table students change birthday birth datetime not null; 修改表-修改字段,不重名版本:
alter table 表名 modify 列名类型和约束; alter table students modify birth date not null 全列插入:insert into 表名 values(...)
insert into students values(0,"郭靖", 1,"内蒙","2017-6"); 部分插入:值的顺序与给出的列顺序对应:
insert into students(name, birthday) values("黄蓉","2017-8"); 修改:update 表名 set 列 1=值 1,列 2=值 2.。。where
update students set gender=0, homwtown="古墓", where id = 5; 备份:mysqldump -uroot -p 数据库名>python.sql,
恢复:mysql -uroot -p 数据库名< python.sql
接口测试高频常问36道面试题
Python高频常问70道面试题
1 什么是局域网和广域网
一、局域网
局域网(Local Area Network),简称 LAN,是指在某一区域内由多台计算机互联成的计算机组。“某一区域”指的是同一办公室、同一建筑物、同一公司和同一学校等,一般是方圆几千米以内。局域网可以实现文件管理、应用软件共享、打印机共享、扫描仪共享、工作组内的日程安排、电子邮件和传真通信服务等功能。
局域网是封闭型的,可以由办公室内的两台计算机组成,也可以由一个公司内的上千台计算机组成。
二、广域网
广域网(Wide Area Network),简称 WAN,是一种跨越大的、地域性的计算机网络的集合。通常跨越省、市,甚至一个国家。广域网包括大大小小不同的子网,子网可以是局域网,也可以是小型的广域网。
2、DNS是什么,它是如何工作的?
域名解析服务。用于将域名解析为IP,或反和将IP解析为域名。客户机可指定DNS服务器来解析,或用本机hosts文件进行解析。Windows下配置DNS服务器在《搭建Windows测试环境》中有。
3、描述TCP/IP协议的层次结构,以及每一层中重要协议。
参考答案:(可以回答五层结构)
TCP/IP | 协议 |
应用层/Application | HTTP、SMTP、FTP |
传输层/Transport | TCP、UDP |
网络层/Network | IP |
链路层/Link | ARP、RARP |
4、请简述 ip 地址,网关,子网掩码的含义.
IP 地址是 TCP/IP 网络中的主机(或称为节 点)的惟一地址。IP 地址是网络层的逻辑地址
缺省网关(Default Gateway)是指缺省的路由器。只有在不同子网之间通信时,才需要配置缺省网关的 IP 地址
子网(Subnet)是在 TCP/IP 网络上,用路由器连接的网段,子网掩码(Subnet Mask)用来确定 IP 地址中的网络地址部分。其格式与 IP 地址相同,也是一组 32 位的二进制数。
selenium相关高频常问70道面试题
由于篇幅原因,在这就不做全部展示了,这些题我已经整理成pdf文档免费分享给那些有需要的朋友,同时整理也花费了蛮多时间,有需要的朋友可以帮忙转发分享下然后私信关键词【 软件测试】即可获取免费领取方式!
全部目录及答案展示,其中数据结构我分开整理了
读者福利
读到这的朋友还可以私信我免费领取一份收集的软件测试基础知识笔记和案例。
【点击这里,暗号牛客!!】获取以上的学习资料~
重要的事说三遍,转发+转发+转发!