金山云测试面试准备

文章目录

1.linux常用指令

文件目录操作:ls,cd,cp,mv,rm

文本查看和日志排查,比如cat,less,grep,tail -f,awk,sed

进程和资源查看:比如ps, top, kill, df -h, free -h

权限相关:chmod, chown

网络相关:ping, curl, ss

2.测试的流程

需求分析:明确业务逻辑和功能范围

测试计划:安排测试范围和时间

编写测试用例:覆盖正常,异常和边界场景

准备测试环境并执行

问题提交与跟踪,回归测试

测试总结

3.为什么选择测试不是开发

都很重要,只是分工不同,开发把产品做出来,测试是保证产品做得对,做的稳。然后我研究生阶段更多的是参与我们果园项目的测试开发相关工作,自己有这方面的经验和兴趣,所以选择了测试开发工作。

4.怎么理解测试工作

1.测试重点是要去保障软件质量。需要先去理解业务需求,然后设计测试用例,执行,等,去验证系统是否可靠

2.测试的价值在于是否能够尽早发现问题,降低上线风险,提升用户体验

3.测试也要有一定的技术能力,比如前后端的知识,接口交互,数据库,自动化,这样子才能更高效的发现和定位问题

5.测试工作有重复性你怎么想

测试确实是有重复性,比如回归测试,重复验证Bug等等,但是这种重复是有价值的,本质是为了保障产品质量和降低上线风险.

测试也不是完全的机械重复,每次需求变更,影响范围不同,需要重新理解和判断。对于变动不大的尝试写一些自动化脚本替代

6.开发质量太差但是你测试这边ddl只有2天怎么处理

首先风险评估,对高风险的模块进行优先测试,然后如果关键问题依然很多,需要明确说明上线风险。

7.代码题:统计文本文件单词出现的次数
python 复制代码
with open("a.txt", "r", encoding="utf-8) as f:
	content = f.read();
words = content.split()
result = {}
for i in words:
	if i in result:
		result[i] += 1
	else:
		result[i] = 1

for k, v in result.items():
	print(k, v)
8.mysql删除数据的几个方法

delete删除,可以带where条件

truncate是清空整张表,速度更快,而且会重置自增ID

9.怎么查询进程,查询指定进程,如何判断进程是否已经启动

ps- ef 或者ps aux查询启动进程,前者体现父子进程关系,后者体现资源占用

ps -rf | grep 进程名 查看指定进程

查看进程师傅启动:Ps查看进程是否存在,ss查看端口占用,tail - f xxx.log看启动日志

10.性能测试用的什么测试方法?

性能测试的话有负载测试,压力测试,并发测试和稳定性测试

负载测试是验证系统在预期负载下的表现,压力测试是不断加压,找到系统的瓶颈。

稳定性测试是,系统在长期运行状态下的表现

11.查看某个端口号具体命令

ss -tunlp | grep 8080

12.软件测试按照阶段如何划分

单元测试,集成测试,系统测试,验收测试

13...你常用的Linux命令,不要基础命令 问了文件的替换,文件内容的删除,文件的相关操作

文件替换sed -i '操作' 文件名

14.提交bug包括哪些元素

标题,所属模块,前置条件,复现步骤,实际结果,预期结果,环境信息,严重程度,优先级

15.cookie和session的区别是什么?

cookie存在客户端,session存在服务端。cookie一般是存放的sessionid,登录把这个传给服务端服务端就知道用户是谁

16.怎么看待python的,为什么

上手快,语法简洁,可读性强

生态完善,web开发,爬虫,人工智能,自动化测试都有成熟的库

适合快速验证想法,提高开发效率

17.垃圾回收机制

python的垃圾回收主要包括引用计数和垃圾回收器两部分,引用计数用于及时回收没有引用的对象,但是无法解决循环引用问题。循环引用会采用标记清楚和分代回收来解决,释放不需要的内存

18.用过python的哪些库

用过Numpy,pandas这些是做视觉自带的一些计算库,pytorch做模型的训练和推理,matplotlib绘制图像,requests发送网络请求,pymsql链接数据库,flask做后端

19.算法题:有效的括号
java 复制代码
class Solution {
    public boolean isValid(String s) {
        Stack<Character> stack = new Stack<>();
        HashMap<Character, Character> map = new HashMap<>();
        map.put('(', ')');
        map.put('[', ']');
        map.put('{', '}');
        for (int i = 0; i < s.length(); i++) {
            if (map.containsKey(s.charAt(i))) {
                stack.push(s.charAt(i));
            } else {
                if (!stack.isEmpty() && map.get(stack.peek()) == s.charAt(i)) {
                    stack.pop();
                } else {
                    return false;
                }
            }
        }
        return stack.isEmpty();
    }
}
20.给你一个水杯如何测试,面试如何回答

功能上:正常装水,倒水,杯盖开关是否顺畅,密封是否漏水。性能上,是否耐高温,低温,保温时长。易用性:手持是否方便,重量是否合适,安全性:是否材质符合无毒。

21.冒泡排序和快速排序

冒泡:时间复杂度n2,空间复杂度1,稳定

快速:时间复杂度nlongn,空间复杂度logn,不稳定

22.电梯的测试用例设计

功能:点击按钮有效,电梯准确停靠指定楼层,开关门正常,上下正常

安全:放家功能正常,紧急呼救正常,报警机制正常,灯光显示正常

性能:额定载重稳定运行,开关门速度无卡顿

易用性:按钮清晰简洁,通风正常,噪声符合标准

异常:多次按按钮,多人同时按,误按楼层取消正常

界面提示:超重提示清晰

23.黑盒白盒测试的区别,优缺点和应用场景

黑盒测试是从用户视角出发,不看代码,只根据需求验证功能是否正确,优点是简单易上手,缺点是无法覆盖代码分支,用于功能测试回归测试。白盒基于代码结构测试,关注内部逻辑和分支覆盖,缺点是对技术要求搞,成本大,用于单元测试

24.什么是python装饰器

python装饰器指的是不修改原函数的代码和调用方式,动态为函数添加心功能,实现前后☞增强,类似于JAVA中的AOP

25.什么是闭包?

是python中嵌套函数的应用,满足三个条件,外层函数定义局部变量,内层函数引用这个变量,外层函数返回内层函数。及时外层函数执行结束,内层函数也能记得住这个变量

26.介绍下http

是应用层的超文本传输协议,属于请求响应模型,是无状态,无连接。分为请求行,请求头和请求体,请求行记录请求方式,url,请求头告诉服务器我是谁,有cookie,域名,想要什么格式返回,请求体是客户端携带的数据。

27.linux文件指定行插入内容

sed -i 'Ni 插入的内容' 文件名

// N表示第N行

28.pytest项目遇到什么难点,当时如何解决的?

接口依赖问题,有些接口你要测,必须登录,刚开始的话,都是手动处理,复制token.比较麻烦。后续的话,登录后,从响应结果提取,保存到yaml文件中,其他接口要读取文件的时候,先提取,然后请求,避免了代码冗余,以及硬编码。

29.详细介绍下你的pytest接口自动化项目的整个流程

启动Pytest自动扫描包含test开头的文件夹,对于先要指定的接口,放在冒烟用例文件夹,比如登录的用例先执行,然后提取倒token,为后续做准备,然后遍历文件夹下的yaml文件,对每个yaml文件生成测试用例,并通过反射加入倒TestAllCase类中,这里如果是流程用例的话,就遍历执行。最后集成allure报告,显示最后的结果。

30.restfulapi是啥

一套标准化的接口设计规范,资源为核心,通过url定位资源,http标准状态码实现增删改查,让接口更加规范

31.POM和KDT设计模式的区别

POM:页面元素+操作封装成对象

KDT:把常用的操作封装成关键字,比如输入点击这些,数据放在excel文件

相关推荐
花无缺0002 小时前
Java开发踩坑:一次线上性能优化案例
java·开发语言·人工智能·面试
小王不爱笑1322 小时前
Mybatis面试题目
spring·面试·mybatis
小涛不学习2 小时前
JVM 深度解析(面试 + 实战版)
jvm·面试·职场和发展
程序员小远2 小时前
单元测试知识详解
自动化测试·软件测试·python·测试工具·职场和发展·单元测试·测试用例
小涛不学习2 小时前
JVM 面试核心知识全解析(从原理到实战)
jvm·面试·职场和发展
程序员爱钓鱼2 小时前
Go图像处理基础: image包深度指南
后端·面试·go
空空kkk2 小时前
JVM面试知识点总结
java·jvm·面试
代码雕刻家3 小时前
2.5.第十六届蓝桥杯大赛软件赛省赛Java 大学 B 组(上)
职场和发展·蓝桥杯
闻哥3 小时前
MySQL三大日志深度解析:redo log、undo log、binlog 原理与实战
android·java·jvm·数据库·mysql·adb·面试