• 面试记录


    B站测试开发面试 2020/5/13

    1、python语法篇

    元组和列表的区别

    列表和元组是Python中最常用的两种数据结构,字典是第三种。 相同点:

    • 都是序列
    • 都可以存储任何数据类型
    • 可以通过索引访问

    (1)语法差异

    使用方括号[]创建列表,而使用括号()创建元组。

    (2)是否可变

    列表是可变的,而元组是不可变的,这标志着两者之间的关键差异。

    我们可以修改列表的值,但是不修改元组的值。

    由于列表是可变的,我们不能将列表用作字典中的key。 但可以使用元组作为字典key。

    (3)大小差异

    Python将低开销的较大的块分配给元组,因为它们是不可变的。 对于列表则分配小内存块。 与列表相比,元组的内存更小。 当你拥有大量元素时,元组比列表快。列表的长度是可变的。

    单例模式

    参考https://www.cnblogs.com/huchong/p/8244279.html

    浅拷贝和深拷贝

     https://i.cnblogs.com/posts/edit;postId=12901110

    有没有写过爬虫

    对requests库的了解程度

    2、自动化篇
    自动化是否能做到100%,那些用例能自动化,哪些不能自动化
    UI自动化断言一般做啥


    3、性能篇
    性能拐点
    App出现Crash的原因
    monkey的原理,除了monkey可以做稳定性测试,还有什么东西可以做稳定性测试


    4、代码篇
    有没有做过代码review
    有没有从代码层面找到过bug出现的原因

    5、sql篇
    mysql 索引

    6、CI/CD
    CI/CD的流程和作用
    构建方式有哪些

    7、测试流程
    介绍一下你们公司的发版流程
    回归测试覆盖率是多少

    8.软件出错的可能原因排查

    1.客户投诉 英语流利说APP 懂你英语课程(或其他APP功能) 请求失败,分析可能的原因以及解决方案
    原因:网络出错。 解决方案:检查手机网络状况
    原因:错误的请求。 解决方案:查看前端是否出现意外的bug导致请求出错。
    原因:服务器忙等。解决方案:使用高并发处理请求。
    原因:客户权限出现问题。解决方案:检查客户是否已登录,或者具有权限。
    原因:服务器后台接口出错。解决方案:查看后台接口运行情况。
    原因:前端处理数据出错。解决方案:查看前端代码逻辑。
    原因:版本升级导致的接口更换。解决方案:查看版本号和先版本号的差异。
    原因:服务器无返回数据。解决方案:检查数据库状态。
    原因:请求超时。解决方案:查看是否出现请求超时的情况。
    原因:服务器掉线。解决方案:重启服务器。
    原因:前端逻辑出错。解决方案:查看服务器逻辑。
    原因:机主强制关闭

    测试开发面试题(2020/5/19)

    1、网络协议
    http和 https的区别
    get和post的区别

    cookie和session

    前三题参考https://i.cnblogs.com/posts/edit;postId=12850891
    三次握手、四次挥手
    TCP和UDP的区别

    后两题参考:https://i.cnblogs.com/posts/edit;postId=12298702

    2、算法
    快排、冒泡排序

    参考:https://www.cnblogs.com/crystal1126/p/12877202.html

    3、python语法篇
    单例模式
    进程和线程的概念,python能实现真正意义上的多线程吗?


    4、其他概念
    堆栈?对象的实例是存在哪里?
    内存泄露
    死锁
    adb命令用过些啥

    5、linux命令
    有没有用过linux命令?

    6、数据库相关

    索引

    有没有设计过表

    7、python中的静态方法和类方法

    英语流利说电话面试

    1、测试计划的内容

      测试计划详细内容参考:https://www.cnblogs.com/finer/p/9170490.html

    数组和ArrayList的区别
    Hashmap和TreeMap的区别
    泛型的概念
    jemter如何引用外部的java文件
    迭代器的概念


    数据库连接的概念,左连接和右连接的区别
    对一个推荐功能设计用例

    websocket和http的区别

    python匿名函数  : 两个列表中的值相加得到另一个列表

    with的作用

    匿名函数:两个列表相加

    list1=[1,2,3,4,5,6]
    list2=[2,3,4,5,6,6,7,8]
    #列表推导式
    list3=[i+j for i,j in zip(list1,list2)]
    for i in list3:
        print(i)
    print("---------------")
    #匿名函数
    a=map(lambda x,y:x+y,list1,list2)
    for i in a:
        print(i)

    一个list列表中,计算三个数相加之和为0,并去除重复的数据。

    def test(list):
        result=[]
        for i in range(len(list)-2):
            j=i+1
            k=len(list)-1
            while(j<k):
                if(list[i]+list[j]+list[k]<0):
                    j+=1
                elif(list[i]+list[j]+list[k]>0):
                    k-=1
                elif(list[i]+list[j]+list[k]==0):
                    result.append((list[i],list[j],list[k]))
                    print("[%s,%s,%s]"%(list[i],list[j],list[k]))
                    k-=1
        return result
    
    a=[-1,0, 1, 2,-1,4]
    a.sort()#排序
    result=test(a)
    print(list(set(result)))#去重
    

    websocket和socket的区别

  • 相关阅读:
    db.Exec和db.Query的区别
    golang两种get请求获取携带参数的方式
    gin实现中间件middleware
    gin操作session
    笔札-有触动的句子
    并发的基本概念
    售货员的难题
    传球游戏之最小总代价
    状压dp入门
    [COCI 2010] OGRADA
  • 原文地址:https://www.cnblogs.com/crystal1126/p/12886382.html
Copyright © 2020-2023  润新知