zoukankan      html  css  js  c++  java
  • 有有面试

    一面:

    更技术细节一些。问题顺序忘了,我就把问题列一列吧,答案稍后补上。

    1.java和c++的不同之处,至少三个。

        java不需要自己去管理内存使用,c++在new之后需要自己delete。

        java单继承,c++可以多继承。

        java 运行没有C++快

    java  和 python 的区别

     java运行快,python作为解释执行,运行慢

     java 需要{}大括号定义代码块,python使用缩进

     python 调用方法无需new

    2.测试用例的设计方式,至少三个。

        等价类划分法,边界值分析法,错误推测法,因果图法,判定表驱动法,正交表法,场景图法

    3.测试的方法,至少五个。

        功能测试、安全性测试、兼容性测试、性能测试、压力测试,界面测试,文档测试,易用性测试,冒烟测试,探索性测试

    n的阶乘

    def fact(j):
        if j == 0:
            sum = 1
        else:
            sum = j * fact(j-1)
        return sum
    
    print(fact(3))
    

      

    4.写一个函数,实现将输入的int型逆转。如输入123,输出321。

        

    a = int(input('请输入'))
    print('输入为',a)
    print('输出为',a[::-1])
    

      

    input是获取输入信息,赋值给变量a。print('输入为',a)是出入变量a都值
    a[::-1]是倒序输出a的值。切片[::-1]是将列表或字符倒过来
    a = input('请输入')
    list = []
    for i in a:
        list.append(i)
    list.reverse()  #调用reverse方法,将列表反转
    '''
    join():连接字符串数组。将字符串、元组、列表中的元素以指定的字符(分隔符)
    连接生成一个新的字符串
    '''
    print (''.join(list))   #用 join()函数将list转换成字符串
    

      

    5.写测试用例。假设x的取值有1、2、3,Y的取值有a、b、c,通常来说要测试所有z=x+y的可能,需要3*3=9个case。那么假设x和y的取值各有100个,case数量级会很大。要如何去简化case数量呢?

        使用正交表设计用例

    6.对于网易邮箱的登录框,测试的时候要考虑哪些方面呢?(不是真的写case,是考虑测试方向)

     一、界面测试点:

      1、界面的设计风格是否与UI的设计风格统一;

      2、界面中的文字简洁易懂;

      3、界面中没有错别字;

    二、用户名与密码在输入时,正确错误,输入特殊或者错误字符

    三、安全性测试:

      1、密码是否隐蔽显示;

      3、不能直接输入,就copy,是否数据检验出错;

    四、兼容性测试:

      1.不同浏览器测试
           2.浏览器不同版本测试

    五、其他测试点:

      1、输入框之间考虑tab键是否支持;

      2、登录按钮要考虑回车键是否支持;

      3、取消后的默认位置(一般为空白的用户名输入框);

      4、登录后的跳转页面是否正确(一般为首页);

      5、要考虑多次点击登录和取消按钮的界面反应;

      6、考虑是否支持多用户在同一机器上登录;

      7、考虑一用户在多台机器上登录;

      8、登录页面中的注册等链接是否正确

    7.问实习做的Code Review都关于什么内容。

        通常为c代码的检查,注重基本函数的使用不注意会带来的问题,例如指针未判空,snprintf()的buf开的不够大之类。

    8.写一个建表的sql语句

        create table cs

        (

            id char(10) NULL,

            name char(10) NULL,

            score integer NULL,

            primary key(id)

        );

        然后修改已有表的属性,比如添加新属性,删除旧属性的:

        alter table cs add newOne integer NULL;

        alter table cs drop newOne;

    9.我说,建表改表我都用界面,查询啊更新用的比较多。人家说,好啊,我问你一个查询的~

        然后我又sb了……他问的稍微麻烦了点,然后需要用到一个叫hup还是什么的,然后我就不会了,嗯

    10.说进行项目测试的流程

        a.参与需求分析,pm、开发、qa一起讨论,确定产品细节,生成项目文档;

        b.进行开发。qa期间根据项目文档来写测试case,和开发人员沟通测试时应重点关注的问题;

        c.提测,进行准入测试(冒烟测试)。if (false),打回,返回b;else,ok,进入d;

        d.根据b中的case和重点,进行测试,包括功能的,安全的,兼容性的,性能,压力等等。发现bug,先进行定位,和开发人员进行沟通,记录。

        e.开发人员解决bug,再次提测。bug未解决或衍生出新bug,返回d;bug解决了,进入f;

         f.测试通过,批准上线;

        g.上线后进行回归测试,线上发现问题根据重要优先级记录下来,后期追加修复。

        当然,期间的测试会经历测试机测试、沙盒测试、小流量上线、全面上线的不同阶段。

    11.准入测试的衡量标准是什么

        a.走项目的几个主要流程,看功能是否完成。如果有bug,bug比例是多少

        b.出现的bug中,严重性也有不同。如果是简单的修改就可以的,可以忽略,有严重逻辑问题的就打回。

        不过人家说我说的还是太粗了,想更细一些。可是啊,百度的敏捷开发基本都已经忽略掉准入了,我了解的也不多……

    12.用过什么自动化测试工具么?不论是通信业还是互联网的都好

        说了phpunit,百度自己开发的xss漏洞检测工具等。知道的不多

    13.为什么考虑网易有道?为什么不选择百度?

        我只能说我瞎说了……

    14.列举一些常用的linux命令

        mv cp rm vim等等

    15.怎么cp一个目录?mv有哪两种作用?

        

    要在同时拷贝多个文件,我们只需要将多个文件用空格隔开

    mv命令用来对文件或目录重新命名,或者将文件从一个目录移到另一个目录中

    发现我一面面了一个半小时……累……我问多久能有消息,说一共三面,然后告诉我一会有二面。

    =================================================================

    二面:一个很pp的看起来超小很loli结果是qa老大的mm

    1.又把百度的测试流程说了一遍

    2.举例说了实习时测试的工作

    3.写大浮点数相加的函数

        char * add (char * d1, char * d2)

        就是浩子给出过的那段代码吧。我没看,悔恨不已……写了一半估计看我写太慢了,说了思路,不过我觉得我考虑的还是太麻烦了,不够简洁。

    4.写一个函数,满足以下功能。给定一个2的倍数的整数n(不用考虑n是否错误了,假定n一定正常),比如n=8,那么对于数列1 2 3 4 5 6 7 8,函数调整一次后变为 1 5 2 6 3 7 4 8. 先写一次调整的,然后如果是k次调整呢?

        我写了一次调整的,不过不太好弄成k次。后来想出来了,没写,把思路给mm说了。代码后面补上吧。

    5.使用grep命令。找出a.txt文件中每一行第一个字为数字的内容。

        好吧,我不会,弱弱飘过

    6.显示文件最后100行

        tail -100 fileName

    7.查看本机的负载、性能等

        还是不会

    8.still,为何选择有道而不是百度?

        这个问题实在是太难以回答了。。。。

    9.做测试的话,是怎么个计划?钻研一个细方向?

        测试的一个好处是可以了解整个系统的框架,模块交互,而不是局限于一个小模块的功能。在这个基础上,选择例如性能测试、压力测试作为主要专注领域吧。

    10.做压力测试的话,大概都压到多少?

        我听过俊俊做压力的内容,就扯了一下。大概是1k、4k、8k地尝试。基本保证1k吧。每秒。

    最后就是聊了一下关于工作环境啊,小组氛围啊。两个面试官都表示有道的氛围很好,大家互帮互助乐于交流。我只能表示很向往……虽然我在百度也是这么感觉的……面了将近3个小时,就这样吧

    时间紧任务重,如何保证质量

    项目成员明确需求,需求按照优先级排序

    规划测试时间,每天及时调配资源

    迭代测试,及早介入测试

    保持和开发的顺畅沟通,保证

  • 相关阅读:
    C#深入浅出 修饰符(二)
    HDU 5785 Interesting
    HDU 5783 Divide the Sequence
    HDU 5781 ATM Mechine
    UVA 714 Copying Books
    uva 1471 Defense Lines
    UVA 11134 Fabled Rooks
    UVA 11572 Unique Snowflakes
    UVA 11093 Just Finish it up
    UVA 10954 Add All
  • 原文地址:https://www.cnblogs.com/zhangbao003/p/9546923.html
Copyright © 2011-2022 走看看