最近也出去面试了几家,有回答上的,也有不了解的,下面做一个最近的面试题总结吧。
也欢迎大家关注我的公众号【软件测试小助手】,一起学习,每天进步一点点,加油!
一、pytest使用过的插件:
pytest-returnfailures:
使用方法:pytest 目标文件 --returns 5 reruns - delay 1
解释:重新运行所有失败的用例,间隔1秒 重跑5次
pytest-repeat插件:pytest 目标文件 -- count 3
解释:count来设置重复运行次数
二、正式环境出现bug,但是测试环境没有复现,你该怎么测试?--参考
1、复现后先将问题记录在禅道上
2、测试环境复现,如果测试环境没有复现,确定是不是账号问题,或者其他影响,查看提交记录,是不是开发自己发版上线了等情况,或者是不是数据库缓存等问题
如果测试环境复现了,提交bug并说明流程,让开发尽快解决
3、确定最终结果后,验证并回归测试
三、说一下你理解的CI/CD-参考
ci的话是持续集成,cd包括持续交付和持续部署
简单来说的话,这3个流程是让持续自动化和持续将贯穿在应用的整个生命周期中的
ci 可以说是代码提交的一个自动化流程,可以实现代码合并到服务器中,解决多个分支,存在冲突和发布麻烦的问题
cd:包括持续交付和持续部署,持续交付的话是集成的后续部分,用做质量验收,也可以理解为测试,目前我们工作中并没有用到将自动化测试持续部署
持续部署的话持续交付的后一步,代码评审后自动部署到生产环境,前提是在自动化测试、构建、部署都完成的情况下
四、jenkins和持续集成什么关系?
基于java开发的持续集成工具,用于监控持续重复的工作,可以用做版本的发布和测试等
五、Docker是干嘛的
docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。简言之,就是可以在Linux上镜像使用的这么一个容器。简单来说就是用来部署服务的容器,提供轻量迅速的配置环境。