测试面试题来咯!!!

1,测试数据来源哪里?

   1、开发的模拟数据

   2、线上真实数据

   3、测试模拟数据

  4、同类产品的数据库采样

    2,状态通道和预状态通道的区别是?

        1、预状态通道比状态通道安全,防止了SQL注入
    
        2、预状态通道可以实现预编译,效率高、维护性高、可独享高
    

      3,什么是软件测试,软件测试分为哪几个阶段?

      软件测试是在测试中识别软件产品和服务的准确性和质量的过程。显然,它的诞生是为了验证产品是否满足客户的特定先决条件、需求和需求。

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

      4,http和https的区别

      1、https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。

      2、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。

      3、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。

      4、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

      5,软件缺陷的跟踪管理流程。

      1、测试人员提交缺陷

      2、开发人员确认并修复缺陷

      3、测试人员回归缺陷

      4、回归通过,测试人员关闭缺陷

      5、回归不通过,测试人员重新打开缺陷

      6、开发可以提出在后期版本修复缺陷或者拒绝缺陷

      6,响应时间和吞吐量之间的关系是什么

      响应时间越短,单位时间内的吞吐量越大;响应时间越长,单位时间内的吞吐量越小
      
      • 1

      7,开发人员修复缺陷后,如何保证不影响其他功能?

      Bug的修复以及新功能的添加都有可能对版本造成一些影响,为了避免,在新版本发布以后,首先会对新版本做一个基础的流程测试也叫做冒烟测试,如果测试基本流程都顺利通过没有任何问题,那么测试人员可以继续进行详细的测试,否 则就将冒烟测试中出现 的问题以及问题有可能出现的原因反馈给开发人员,由开发人员修正后再次发版,进行测试。这是一个迭代的过程。

      8,如果项目周期很短 测试人力缺乏 你是怎么协调的?

      依据代码review的结果和影响范围,对测试内容进行适当的裁剪。

      借助自动化工具的支持,提高测试案例的执行效率。

      调整组内任务的优先级,进行人力协调,优先投入最紧要的项目。

      必要的情况下加班

      9,你在测试过程中发现了一个 重现率低的bug 你会如何处理?

      如果能必现的话,无论概率多大都需要处理。如果不能必现的,先保留下来看看等用户量大了之后情况怎么样

      10,软件测试的目的

      测试的目的是找出软件产品中的错误,是软件尽可能的符合用户的要求。当然软件测试是不可能找出全部错误的

      11,数据库的中的左连接右连接和全连接内连接的区别?

      left join (左连接):返回包括左表中的所有记录和右表中连接字段相等的记录。

      right join (右连接):返回包括右表中的所有记录和左表中连接字段相等的记录。

      inner join (等值连接或者叫内连接):只返回两个表中连接字段相等的行。

      full join (全外连接):返回左右表中所有的记录和左右表中连接字段相等的记录。

      二,填空题

      1,Load Runner 分为三个模块:(脚本生成器) (场景控制器) (结果分析器)

      2,常见的黑盒测试方法(等价类划分法)(边界值分析法)(错误推测法)(因果图法)(正交实验法)(判断法)

      3,典型的软件测试过程模型有(w)(H)(V)(X)

      4,在测试中的80-20原则是指:(80% 的软件缺陷常常生存在软件 20% 的空间里。)

      5,目前 Unix 操作系统提供的一个常用的文本编译器是(vim)其有(普通模式)(插入模式)(命令模式)三种模式。

      6,软件的六大质量特性包括(功能性)(可靠性)(易用性)(效率性)(软件维护性)(软件可移植性)

      三,简答题

      1,APP闪退的原因可能是:

      缓存垃圾太多,Android系统的特性,如果长时间不清理垃圾文件,会导致越来越卡,甚至闪退。

      运行程序太多,导致内存不足。

      应用版本兼容问题,分辨率兼容问题。

      APP中访问网络的地方,组件能否正常下载并显示。

      APP的SDK与手机系统不兼容。

      系统升级后,新版本不兼容老版本的API,返回对象失败,报空指针。

      软件权限未开放。

      2,如何对app进行弱网测试

      一款APP针对不同网络情况下都需要保证不会崩溃,同时尽可能做到在弱网情况下也能达到功能正常使用,或者使用体验达到最佳。弱网测试可以测试APP的加载时间、可用性、稳定性和健壮性。这时我们就可以借助工具来模拟不同的网络状况,模拟2G、3G或弱网情况进行测试。工具可以选择Fiddler也可以选择Charles也可以选择其他工具。

      3,Push消息的测试可以从以下几个方面进行:

      检查Push消息是否按照指定的业务规则发送。

      检查不接收推送消息时,用户不会再接收到Push消息。

      如果用户设置了免打扰的时间段,检查在免打扰时间段内,用户接收不到Push。在非免打扰时间段内,用户能正常收到Push。

      当Push消息是针对登录用户的时候,需要检 77查收到的Push与用户身份是否相符,没有错误的将其他人的消息推送过来。一般情况下,只对手机上最后一个登录用户进行消息推送。

      测试Push时,在开关机、待机状态下执行推送,消息及其推送跳转的正确性。

      push消息时,会有红点展示,推送消息阅读前后数字的变化是否正确;

      应用在开发、未打开状态、应用启动且在后台运行的情况下是push显示和跳转是否正确。

      多条推送的合集的显示和跳转是否正确。

      4,web测试和app测试的相同点和区别?

      相同点:都离不开测试的基础知识和测试原理。具体包括以下几个方面。

      测试用例,均使用边界值分析法,等价类划分法等。

      多数采用黑盒测试,来验证业务功能是否能得到正确的应用。

      需要检查界面布局,风格,按钮是否美观、简洁,是否统一。

      测试页面载入和翻页的速度、登录时长、内存是否溢出等。

      测试应用系统的稳定性。

      不同点:相对于web测试来说,app测试要考虑手机本身固有的属性,所以app测试还需要注意以下几点。

      中断测试(来电去电,短信,蓝牙,NFC支付,闹钟,数据线插拔,锁屏,断电,关机重启等)

      安装卸载测试(全新安装,新版本覆盖旧版本,卸载旧版本安装新版本,卸载新版本安装旧版本)

      外在因素测试(网络切换,硬件按键,不同分辨率,兼容性,系统,系统版本)

      web测试更多的是考虑自身功能和浏览器兼容。

      5,测试过程中遇到app出现crash或者ANR,你会怎么处理?

      APP出现Crash或ANR,可以从以下几个方面处理:

      可以先把日志过滤出来:adb logcat | findstr xxxxx(过滤日志信息) ;

      然后再搜索其中的关键字,比如:exception、crash,看看是哪些方法或者异常导致了问题;

      初步定位问题原因后,可以交给开发人员去具体查找深层原因并修复。

      6,如何测试一个App的登录场景?

      APP登录场景大体从以下几个方面进行:

      页面基本元素的操作。

      大量字符,特殊字符,边界值,必填项校验。

      注册手机号的特殊性验证,注册邮箱的格式验证。

      密码大小写是否敏感,密码是否加密展示,密码是否有可见按钮功能,密码框能否使用复制粘贴。

      验证码校验:必填项,过期,错误,无网络时获取验证码,多次获取,超过获取次数,输入验证码后,修改手机号。

      登录时与系统的交互:锁屏,蓝牙,home,后退,横竖屏,修改字体字号。

      逆向思维:已注册账号注册,未注册账号忘记密码,未注册账号登录,注册过程中退出再次注册。

      输入法交互,切换输入法,切换输入模式,手写/九宫格。

      登录账号的多样性:多个账号轮流登录,同一个账号多角色登录。

      第三方登录验证:账号授权,信息正确,取消授权。

      登录页面跳转,返回,登录成功及其他页面跳转。

      手机兼容性测试:分辨率兼容,系统兼容,系统版本兼容,App版本兼容。

      网络切换,网络断开,弱网。

      7,你平常会看日志吗, 一般会出现哪些异常(Exception)?

      这个主要是面试官考察你会不会看日志,是不是看得懂Java里面抛出的异常,一般面试中Java Exception(runtimeException )是必会被问到的问题,app崩溃的常见原因应该也是这些了。常见的异常列出四五种,是基本要求。

      常见的几种如下:

      NullPointerException - 空指针引用异常

      ClassCastException - 类型强制转换异常

      IllegalArgumentException - 传递非法参数异常

      ArithmeticException - 算术运算异常

      ArrayStoreException - 向数组中存放与声明类型不兼容对象异常

      IndexOutOfBoundsException - 下标越界异常

      NegativeArraySizeException - 创建一个大小为负数的数组错误异常

      NumberFormatException - 数字格式异常

      SecurityException - 安全异常

      UnsupportedOperationException - 不支持的操作异常

       

       感谢每一个认真阅读我文章的人!!!

      作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

      软件测试面试文档

      我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

       

                视频文档获取方式:
      这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。

      评论
      添加红包

      请填写红包祝福语或标题

      红包个数最小为10个

      红包金额最低5元

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

      抵扣说明:

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

      余额充值