记录自己的一次面试 软件测试工程师的面试

10点刚到,先进行笔试,笔试的题目很基础,涉及到linux,涉及到oracle数据库,涉及编程基础,涉及测试理论,但是你读完题目和写完也要是花时间的。我花了40分钟左右的时间才写完。。

Linux基础

1. 查看a.txt文件中bbb字符串
grep ‘bbb‘ a.txt

2. 改变a.txt的所属者为Lisa
chown Lisa:Lisa a.txt
chown Lisa a.txt 【只让改所属者,没让改所属组】

3.查看conrob进程的命令
ps -ef | grep conrob

4.vi命令下,向上移动光标,向下移动光标
上下左右 kjhl【这四个键盘很好记,右手习惯的几个键,h最左右所以向左,l最右边,jk是先下后上】

5.将文件a.txt排序生成b.txt
sort a.txt >b.txt

6. 不保存文件退出命令
末端模式下输入q!【Esc : q!】

7. 查找当前目录以及子目录下文件后缀是xxx的文件
find ./ -name *.xxx

8. 显示日期的命令
date

Oracle基础
【oracle数据库我好久没有遇到了,查询sql根据mysql和sqlserver写的,也不敢太用别名,怕错】

1.给a表创建联合索引 name+bb+cc
create index ind_name on tablea(name,bb,cc)

2.赋予用户alex update delete a表的权限
grant update,delete on tablea to alex

3.查看a表中的所有记录且姓名不在b表中的
select * from tablea where name not in (select distinct name from tableb) 【我想了想加了个distinct在b表中】

4. 查询b表中的唯一的卡号
select cardnum from tableb group by cardnum 【起初不小心加了distinct,然后想想把它给划了】

5. 查询b表中币种是RMB且地区是深圳的贷款总和
select sum(amount) from tableb where city = ‘shenzhen‘ and bizhong=‘RMB‘
【起初没看到只要差RMB,还多此一举,
select bizhong, sum(amount) from where city = ‘shenzhen‘ group by bizhong, 也不知道后来有没有多划掉】

6. 复制b表的结构到新表
create table tablec as select * from tableb where 1=2
【之前没印象,用的mysql格式CREATE TABLE 新表 LIKE 旧表 】

7. 查询b表中姓名和卡号,要求同一个卡号既有人民币消费,又有美金消费
select name, cardnum from tableb group by name, cardnum having count(*) >=2
【我做这样的题目有各种疑问,比如消费金额为0的记录,算不算?虽然解决办法很简单,加上一个where amount> 0 即可,
但是proc测试多了,一眼瞄过,对各个字段就不免想多了,
我10点钟才到,11点半吃饭,又怕做题太长,最终影响人家interviewer的情绪,也让我。。。】

8.用一个select查询表表中姓名和卡号,要求美金中显示2条消费最大的记录,rmb中显示两条最大的记录
select name , cardnum ,rownum from tableb where bizhong = ‘dollor‘ and rownum<=2
order by amount desc
union all
select name , cardnum ,rownum from tableb where bizhong = ‘rmb‘ and rownum<=2
order by amount desc

编程基础
1.java中==和equals的区别
==是表示值和内存地址完全一致
equals判断值是否相等

2.一个java中能有多个类吗?为什么?
一个.java源文件中可以有多个类吗?(内部类除外)有什么条件? 
可以的 
但是只能有一个public类, 而且如果有public类的话,这个文件的名字要和这个类的名字一样。
如果都没有public类,名字可以不和这个类一样。

3.将x/y/z 从大到小输出
int[] a ={x,y,z}
for (int i=0;i<a.length()-1;i++){
for (int j=0;j<a.length()-1;j++){
if (a[j]<a[j+1])
temp =a[j];
a[j]=a[j+1];
a[j+1] = temp;
}}

自己写错了,下面才是正确的。

import org.testng.annotations.Test;

import java.util.Arrays;

public class TestSort {
    int a[] = {1, 2, 3, 4, 5, 6, 7};
    int temp;

    @Test(priority = 1, description = "利用Arrays中的Sort函数排序")
    public void ArraysSort() {
        Arrays.sort(a);
        for (int i = 0; i < a.length; i++) {
            System.out.println(a[i]);
        }
    }

    @Test(priority = 2, description = "冒泡排序")
    public void BuddleSort() {
        for (int i = 0; i < a.length - 1; i++) {
            for (int j = 0; j < a.length - 1 - i; j++) {
                int temp = a[j];
                a[j] = a[j + 1];
                a[j + 1] = temp;
            }
        }

    }
}

  

4. python2.1和python3.1的默认字符编码?
‘ascii‘
‘utf-8‘
猜也能猜到,但我懒得写。python的确不熟

5.python中分割aa_bb_cc,
s1="aa_bb_cc"
s1.split(‘_‘)

6.如何用python将整型1输出为0001

测试的基础
1. 软件测试的意义
2. bug的生命周期
3. 常见的测试方法
4. 你常用的自动化测试工具?
接口用Jmeter和httpClient
UI用 selenium和macaca
5. 一个文本框,输入6的字符,要求输入的年份在199001到204912月,要求前四位是年,后两位是月,请设计测试用例并说明

 

写完给HR打电话,之后直接一面。

面试的问题

1. 讲一个具体的接口,你是怎么测试的,怎么实现自动化的?
针对http接口进行测试,使用Jmeter工具实现。
Jmter工具设计之初是用于做性能测试的,它在实现对各种接口的调用方面已经做的比较成熟,因此,本次直接使用Jmeter工具来完成对Http接口的测试。
一、开发接口测试案例的整体方案:
我们起初会得到一个CR文档,CR文档里列出里客户此次的痛点和痒点,还有PM列出的解决方案。比如要开发什么接口,以达到什么目的。
这种接口是一次性使用,做活动用的,还是日常使用等等的说明。
第一步:CR文档下来之后,我会分析出测试需求,大概知道会怎么实现,对对CR有疑问的地方,做下标记;等到下次全项目开会,提出疑问,确保测试、开发和PM对需求的理解是一致的。会议上也会阐述大概的实现方式,涉及的表,是否用触发器,等等的问题。会议之后可以拿到开发提供的接口说明文档;
第二步:从接口说明文档中整理出接口测试案例,里面要包括详细的入参和出参数据以及明确的格式和检查点
第三步:和开发一起对接口测试案例进行评审。
第四步:结合开发库,准备接口测试案例中的入参数据和出参数据,并整理成csv格式的文件。
第五步:结合接口测试案例文档和csv格式的数据文档,做接口测试案例的自动化案例开发。

对于大一点的公司,用Jmeter编写自动化脚本,真的很low吧。我也觉得很low,但是不得不说完全够用,还极其容易上手。

对数据处理灵活,断言,数据落地,都可以查询和验证。

2. 端到端的测试你们做过吗?

3. 性能测试关注点是什么?

我们通常认为的规定的指标是:

服务器资源使用情况,不管是中间件服务器, 还是DB服务器,从内存,到CPU,不超过70%

从响应的结果来看,错误率不超过1%,甚至要求错误率更低;基本上实践当中,不超过0.1%;

平均响应时间不超过3秒,视查询条件而定,有的要求是不超过2秒;

90%的响应时间不超过3秒。

你们不看TPS吗?TPS知道吗?

也要看啊,我还没讲完呢。 每秒中的处理请求的数量啊~~

TPS是受木桶原理影响,要看每一处的配置的。【后悔没多说点,抬头对上interviewer的眼神,这个话题就完了】

3. 扯闲话部分:

你们公司的开发测试的比例是怎样的?我们是 4:1?

你们公司系统的中间件是什么?

性能测试中,你有进行性能调优吗?

嗯,验证过很多接口,有的定量需求,比如要求某个接口的TPS达到500. 如果第一次性能测试,能达到500,也就够了,没有下文了;但是这个是注册接口,随着时间推移,DB服务器资源CPU到内存都吃的越来越紧,发现TPS下降了,之后越来越低。

什么原因造成的?

DB服务器的原因。这个一个nosql数据库,以前这个接口是能达到500TPS的,但是随着微信绑定推出unionid后,需要增加新的字段,新的表;而这种DB对查询条件需要加索引,要不然不支持查询。

表中数据量越来越多,又有很多字段添加了索引,当数据量达到千万级别之后,添加索引消耗DB的资源,也明显感受到占用了时间。 导致接口查询慢,新增也慢。

有别的调优吗?

还有发现,若干个字段,因为没有加索引,导致查询接口TPS不高等问题;

项目中有用hibernate的,有时候定位比较难,因为sql都是hibernate拼接的。

4. 有没有自己创新什么工具,用来提高效率的?

自己回答

5. oracle中分页怎么实现的?

oracle很久没用,打错了,我回答的是跟mysql差不多吧,用limit的?

用limit?

后来发现用rownum

6. selenium在你们的测试过程中也用?还用吗? 有没有什么问题?浏览器兼容性问题能做到吗?

差不多就这么多了,接下来到面试者问问题时间。

总体感觉就是, 自己就像一个AI,面试官问什么,自己回答什么,没有做必要的延伸,没有引入自己的话题。

总体感觉就是面得不好。

我想说我也可以开发自动化测试平台,只是还不太成熟。因为都是一个人做,时间和能力都有限,不知道用什么技术,架构,要增加什么。

原文地址:https://www.cnblogs.com/qianjinyan/p/10335962.html

时间: 2024-10-10 14:00:18

记录自己的一次面试 软件测试工程师的面试的相关文章

中美贸易战,软件测试工程师怎么样面试上好的公司

首先买个关子,如果你是面试官,你希望招一个什么样的人进来? 如果这个问题搞明白了,那么可以说测试岗位的面试,就变得非常轻松了. 按照一般的惯例,面试官都会让你自我介绍,介绍你的项目经验,询问你的技术能力,这些都是常规的问题. 在这篇文章里,我不去说什么固定的范本什么的,我就以我以前面试别人的情景为例,具体说一下面试官的狡猾之处,他们会在什么地方给你设坑,你又该如何应对一个棘手的提问等等. 在这里我不罗列条条框框,我只给您们呈现一个真正的面试官,呈现一个真正的面试过程. 一,上来必然是自我介绍.

软件测试工程师这样面试,拿到offer的几率是80%

面试难还是不难?取决于面试者的底蕴(气场+技能).心态和认知及沟通技巧.面试其实可以理解为一场聊天和谈判,在这过程中有心理.思想上的碰撞和博弈.其实你只需要搞清楚一个逻辑:"面试官为什么会这样问?他希望听到什么答案?"然后针对性的准备和回答就行了,无他. "你的优势是什么?"多年前我觉得这个问题很无聊,现在我经常这么问面试者,因为我真的想知道他的优势是什么,能给公司带来什么.最终能和面试官聊的开心愉快投缘的叫面霸,反之叫面瘫. 面霸是可以练成的.我在这篇文章里尝试从

测试工程师进阶面试题目大合集

很多软件测试工程师在面试的时候都会遇到考官给的各种各样的面试题,这也反应了测试工程师对企业的重要性,面试通常分为以下几个方面,由于篇幅有限,在这里就只给大家分享一些比较常见的问题. 一. 自我介绍 这里我不分享如何自我介绍,比我话术之类,相信大家都比我熟悉套路,这里分享几个细节 1.自我介绍时需要有底气 有些同学明明技术很厉害,但是一面试就紧张,一直低头,不敢直视面试官,更为紧张者都说不出话,这样的表现面试官不会觉得你是紧张,反而是觉得你是没能力的表现,所以要有底气,自信很重要. 2.自我介绍时

面试官看到一定会打我---软件测试工程师面试套路和暗语灵魂解密

一.前言:自古深情留不住,总是套路得人心! 在我们的生活中,处处充满套路,事事都有潜规则.对于一切以利益为中心的职场来说,更是如此. 我相信每一个职场人都有自己的奋斗目标,谁也不愿意一辈子碌碌无为,但在实际工作中,有很多人都像中了邪似的,不懂得转变努力的方向,总是被吊死在一棵树上.这是为什么呢?是因为他们被套路了,他们成了潜规则的牺牲品.只有被坑过才知道,资产阶级在招聘启事上放出的蜜糖,简直就是我们无产阶级的心灵砒霜. 为了避免你被继续套路,下面为你分享职场招聘中话术圈套,不告诉你,你永远都无法

读:一个女孩从软件测试工程师到主管的成长历程 文章有感

今天我从网上读到了一篇文章,是一个女孩分享了她的成功经历:从一名软件测试工程师成为一名主管的奋斗历程.读了之后颇有感悟,分享上来希望与大家共享,也希望能给大家带来一些希望和激励.她从前是学经济贸易的,由于对测试行业的强烈兴趣,毕业后在北京学校学习软件测试工程专业.工作不到一年的时间里,她已经从测试员升职到测试主管了.对于学习.工作,她积累了许多点点滴滴的经验,所以她将这一年的经历写下来与大家分享. 原文章: 走入测试行业:兴趣.知识   说实话,我做测试工作的时间不是很长,学完软件测试工程师的课

关于【做一名软件测试工程师,需要具备什么】的我的看法

在软测考试前的几天,我在知乎上看到一片很有意思的问答:做一名软件测试工程师,需要具备什么? 在看网友们的回答之后,我也有了自己的想法... 首先整理了一下其中几个我觉得较为好的网友的回答在这里同大家分享: 网友:陈晔,测试业界打杂第一人 一.知己识人所谓知己就是清楚的认识自己,什么才是对自己最重要的.就测试这个职业来讲,我认为自己得到什么,学到什么才是最重要的.很多人看到这里可能觉得是正确,这种大道理谁都知道.但是平时呢大部分往往,嗯,保证产品 质量,保证公司企业的质量.但是有多少测试做的事情是

测试架构师修炼之道: 1 软件测试工程师的职业规划

测试架构师修炼之道: 1 软件测试工程师的职业规划 2016-08-11 1 软件测试的职业发展方向 1.1 管理 表1 管理级别区分 管理级别 职位 工作年限 属下 测试对象 职责 初级软件测试管理者 测试组长 两年 2~5 一般负责产品的一个或多个特性. 1.   测试计划的制订和执行2. 负责产品重点.难点的测试3. 负责带新员工 中级软件测试管理者 测试经理. 测试代表.测试主管 4年左右 10~20 产品 1.   最重要的工作还是运作测试项目,制订并执行测试计划,测试结束后还需要对产

我的IT之路-软件测试工程师

在写这篇文章的时候内心是无比激动,因为这辈子是注定和IT打交道了. 都说大学时光是美好的,但却只有到了大四才知道时间是短暂的,也许和许多人一样,我的大学主要时光是在游戏中度过,1000多把的寒冰算是同学津津乐道的打趣.直到要面临找工作才迫不得寻找出路,说来也巧,学校的那次实习是彻底的改变了我的人生,因为实习的单位就是IT软件测试的.虽然自己是学通信工程的,但对软件测试是真的一头雾水,什么都不懂,怀着玩的心情就屁颠屁颠和同学们一起去实习了.在这几个月的实习时间里我真正意义上学到了电脑技术,当第一次

北京软件测试工程师薪水

时间的确很快,北京德润教育为期两个月的培训,很快就这么结束了,我收获了自己想要结果,开始正式步入软件测试行业.对别人看来我仅仅是一次转行而已,对我自己来说则是一段旅程的真正开始.北京软件测试工程师薪水 从一个对软件测试是什么概念都只是模糊不解状态,到现在已经能开始独立完成测试任务.这也感谢德润老师这两个多月的辛勤付出和自己在这段时间里不舍的坚持,过程很难熬,结果还算美好.选择培训前一直犹豫自己基础不好,恐难以在这么短时间内能学到什么.开始学习期间我尽可能的利用时间弥补自己的不足之处,补习基础知识