软件测试工程师面经

1. 自我介绍(包含英语的自我介绍,英语的控制在1min内)

突出自己的技术以及相关的项目经验,细心耐心责任心,执行力,团结力

2. 项目经历

复习项目,突出项目中自己做出的贡献,以及自己的项目总结,用到的技术,学到的东西

3. 你常用的Linux命令有哪些

cd, mkdir rmdir, touch,vi , rm -rf ,ls, cat, less head tail, cp mv, ln(硬链接),ln -s(软链接),find, grep wc(文件的字节和行数统计),du -sh , chmod, chown。。。。。。。。

4. 删除一个目录下除了abc以外的其他文件

ls|grep -v "abc"|xargs rm -rf

rm -rf !(abc)

5. SQL中左、右连接有什么区别?

1>含义不同

左连接:只要左边表中有记录,数据就能检索出来,而右边有的记录必要在左边表中有的记录才能被检索出来。

右连接:右连接是只要右边表中有记录,数据就能检索出来。

2>使用方法不同

右连接与左连接相反,左连接A LEFT JOIN B,连接查询的数据,在A中必须有,在B中可以有可以没有。右连接A INNER JOIN B,在A中也有,在B中也有的数据才能查询出来。

3>运行空值不同

左连接是已左边表中的数据为基准,若左表有数据右表没有数据,则显示左表中的数据右表中的数据显示为空。右联接是左向外联接的反向联接。将返回右表的所有行。如果右表的某行在左表中没有匹配行,则将为左表返回空值。

6. selenium中有哪些定位元素的方法?

find_element_by_id()

find_element_by_name()

find_element_by_class_name()

find_element_by_tag_name()

find_element_by_link_text()

find_element_by_partial_link_text()

find_element_by_xpath()

find_element_by_css_selector()

7. selenium 中打开一个新窗口用什么方法

window.execute_script()

8. selenium中跳转窗口用什么方法

driver.switch_to.window()

9. 测试过程中你遇到过印象最深的一个BUG,是怎么解决的?

1)需求背景

教育行业,web界面。

web端学生绿色通道贷后协议展示内容,合同号取值逻辑变更,需要展示银行生成的合同号。

2)技术方案

资金平台,相关查询接口,放款成功返回合同号并落库。

协议系统,通过系统内部交互,获取资金平台落库的合同号,生成贷后协议文件的时候填充合同号,web端展示。

3)测试结果

测试通过

4)线上问题

上线后web端展示的贷后协议,合同号字段为空。

定位问题产生的原因是,上线流程有问题,协议系统上线2个小时之后资金平台才上线。结果造成期间放款成功的单子,协议系统获取不到合同号,生成的贷后协议文件合同号为空了。

10. 怎么测试一个日期控件

1. 正常操作

1)有默认项还是没有。

2)选择日期后是否正确回显到页面上,并且格式正确

3)通过左右按钮进行年和月的选择,是否正确;

4)通过下拉框直接选择年和月,是否正确;

5)控件选择完日期后,输入框是否选择正确

6)是否可以手工修改输入框

7)点击clear 按钮是否可以正确清空输入框日期;

8)点控件的 close 按钮不修改日期,返回页面。

9)刷新界面后,输入框的日期是否没有变化

2. 手工输入操作

1)输入框可不可以手工输入

2)输入日期的格式正确,不能用其他格式

3)输入字母,文字,特殊字符后,提示失败。

4)提示方式(限制输入:无限制输入然后即时用提示框or label,无限制输入:当焦点离开后用提示框or label,点其他按钮提示)

命令按钮控件的测试

测试方法:

a. 点击按钮正确响应操作。如,单击确定,正确执行操作;单击取消,退出窗口;

b. 对非法的输入或操作给出足够的提示说明,如,输入月工作天数为32时,单击”确定“后系统应提示:天数不能大于31;

c. 对可能造成数据无法恢复的操作必须给出确认信息,给用户放弃选择的机会;

d. 如果有键盘快捷键,使用快捷键后,正常执行功能。

一些特殊操作:

1、快速点击两次按钮,是否只有一次有效

2、点击按钮后,点刷新,是否只有一次有效

3、点击按钮后,右键点后退,是否只有一次有效

4、点击按钮后,按钮会不会改变状态

5、是否设置Enter键/快捷键操作(设置的快捷键与Windows自带的快捷键有没冲突)

11. 贵公司的测试流程是怎样的?

项目开工会--需求文档评审--测试计划--测试设计和测试用例--搭建测试环境--执行测试--提交问题单--输出相关的测试总结和测试报告

12. Bug的流程是怎样的?

提交Bug单--测试经理分给相关的开发--开发修改并自验证通过后走给研发经理审核,研发审核完成后,与开发和测试经理一起串讲问题单,规定回归测试策略,测试经理走会给测试进行回归,测试回归验证通过后,关闭问题单,回归不通过的话,走给开发进行相关修改,修改自验证成功后,走回给测试回归,至到回归通过为止。

13. 你对我们公司了解多少?

提前对该公司做出了解,并收集该职位的相关信息

14. 测试用例由哪些元素组成

ID 标题 模块 预置条件 测试步骤 预期结果 实际结果 是否通过 相关问题单,备注

15. 你平时怎么设计测试用例的?

等价类划分法,边界值法,因果图法,流程图法,错误推测法,场景设计法。

16. SQL中用什么方法去重

distinct

17. SQL中的Union和Union all有什么区别

Union相当于两个结果集的并集操作,不包括重复行,Union
all 对两个结果集进行并集操作,包括重复行,所有的结果全部显示

18. 最常见的几种响应码和意思

500 内部服务器错误

404 请求错误

403 禁止访问

400 错误请求

401 未经授权

200 请求成功

206 部分内容

301 永久重定向

302 临时重定向

502 无效网关

18. 若果测试人员认为是BUG,开发认为不是BUG,你会怎么办?

1、首先明确开发说不是bug的理由。

2、如果是需求变更, 那就找产品经理确认是否是需求变更。

3、如果开发说测试环境问题, 让他说明清楚测试环境问题是什么,按照他说的验证一遍, 如果确实如他所说, 关闭bug,但是不是他说的那样,继续激活bug给开发解决,确保产品质量。

4、如果开发说用户不存在这种使用场景, 但是我们不认可他说的,把这个bug 知会到测试经理,让测试经理去判定。
19. 你未来的职业规划是什么?

还在思考

20.还有什么想问我的吗?

公司的研发团队目前是怎么样的规模?主要的业务方向是什么?如果我入职后,工作职责大概设计哪些方面?

21. 你为什么想要离职

为了未来的职业发展,想在UI测试中更近一步

22. 你怎么做压力测试的?

确定存量的规格,确定需要进行压力测试的业务模型,确定用户的操作数量,各类操作的用户的占比,峰值业务的要求,对实时业务的响应时间的处理,对批量处理过程的时间要求

弄清楚后,要验证单用户运行压力测试场景,多用户运行压力测试场景,查看系统的戏院消耗等调优工作的开始,测试环境必须要与生产环境一致或者高度接近

23. 你会封装自动化测试框架吗

分层+PO模式

基础封装层(wrapper)+对象层(component)+相关方法的AW+二次封装+页面对象层+测试用例+日志处理相关的模块

24. 你是怎么用Pytest进行自动化测试的?

apiobjects:为调用API端点创建包装器的好地方。您可以使用BaseAPIObject和派生类来满足您的需求。

helper:编写您的helper方法

库文件,它可以被不同的组件使用,例如你的fixture在conftest, pageobjects等。

pageobjects:pageobjects设计模式可用于创建不同GUI页面的类。我们在站得住使

用Webium,它是Python的一个页面对象模式实现库。

套件:您可以在这里编写pylint代码验证套件,这将有助于您对代码质量有信心。

测试:可以根据测试的风格对测试目录进行分类。它使管理和研究您的测试变得容易。

25. spring 和springcloud优什么区别

1.作用不同;前者的作用是为了提供一个默认配置,从而简化配置过程;后者的作用是为了给微服务提供一个综合管理框架。2.使用方式不同;前者可以单独使用;springcloud必须在springboot使用的前提下才能使用。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值