精华内容
参与话题
问答
  • 经验分享

    千次阅读 多人点赞 2020-11-05 15:07:32
    正式入职了字节跳动。工号超吉利,尾数是4个6。...生活服务得这么贴心,感觉在这里就只需要好好工作就好了吧,哈哈其实很早就和小伙伴们说要写一篇面试经验的。包括我为什么想要换工作,为了换工作做了什么准备,以及

    正式入职了字节跳动。工号超吉利,尾数是4个6。然后办公环境也很好,这边一栋楼都是办公区域。公司内部配备各种小零食、饮料,还有免费的咖啡。15楼还有健身房。而且公司包三餐来着。下午三点半左右还会有阿姨推着小车给大家送下午茶。听说入职以后很容易长胖来着。不过如果想要保持身材的话,公司二楼还提供专门的健身餐。周二周四还可以预约专业的按摩服务,有效调理颈椎和腰椎。生活服务得这么贴心,感觉在这里就只需要好好工作就好了吧,哈哈其实很早就和小伙伴们说要写一篇面试经验的。包括我为什么想要换工作,为了换工作做了什么准备,以及面试过程的一些分享。但是前段时间因为住院做了个小手术而耽误了。今天刚刚好现在在入职的熟悉时期。晚上的时候趁机把这篇写完,顺便也借机会完成一下我们组的新手村任务。各位有兴趣来字节跳动的朋友们,可以把简历发送给我邮箱,我来帮你内推哟。为什么想去字节跳动实际上,这次的工作变动并不在我计划中。只是在四月份的时候偶然得知字节跳动上海要搬到合川路地铁站附近,我就忽然心动了。为什么呢,因为我家距离合川路地铁站步行只要十分钟。本身宇宙条待遇高名声在外,也就是说,只要我能来这里的话,人生最美满的钱多事少离家近的不可能三角我能拿俩。所以在五月份的时候我就开始悄摸摸地准备面试头条了。为的就是以后可以过上早上八点半起床,然后慢慢悠悠走到公司还不迟到(可能还是很早来的人之一)的生活。当然,这是我为什么想去字节跳动的原因。换算到你们自己的时候,你们也要想一想是因为什么想要换一份工作、想要去某个公司。为了薪资?环境?平台?还是大公司的名头?记住,不管是为了哪一个,都OK的。谈钱不伤感情,目标明确,心智坚定以后,才好围绕着这个目标做一系列的准备。面试的过程中每次面试官问我为什么想来字节跳动,我都是直截了当地说离家近,还说假如这次面不上,准备准备,过段时间再面试好了。反正你们公司就在我家旁边,三年五载的可能都跑不掉,哈哈。因为这种面上OK,面不上也没事的心态,所以感觉面试的时候我的发挥也好一些。本身就是一个互相选择的过程,而且这个过程中,公司方相对来说固定一些,因为他的招人标准不太可能会有太大的变化。拿我经常用来怼人的一个例子来打比方:我常常和别人说,搞技术开发,英语很重要。你需要英语来看最新的技术文档,并且有些翻译并不准确,你可能需要看原文才能理解什么意思。有的人当时就会和我说,哎,可惜我英语不太好。这个时候我会回,没事,你现在英语不好不是你的错,但是如果我一年以后,甚至两年三年以后再来问你英语怎么样,要是你还和我说你英文不好的话,那你就得查一下自己的问题了。你根本就不想着学英语,英语怎么可能会好?类比下来,如果你根本不想去这个公司,那你怎么可能来到这个公司?如果你真的想去一个公司,可能现在这个时候你暂时不满足要求,但是没事,只要咱知道别人是啥要求,咱认真学习,好好准备,一年以后再面试,两年以后再面试,甚至三年、五年以后再来试试,都可以的。人最怕的不是没有达成目标,而是没有一个真正的目标。所以,换工作之前,你要想清楚为什么,并且提前开始准备。我准备了些啥?其实我有好长一段时间没有正规地面试过了。三年前从数云换到GIO的时候,因为简历上的相关技术太过于匹配,所以基本上就和CTO聊了聊就确定过去了;后来再回数云的时候,也就和总监喝了一下咖啡就回来了。也就是大约5年的时间里面,我没有正规地接受过面试。所以在准备投字节跳动之前,我投了几个公司做了一下热身活动。记住,这个时候其实不需要有啥心理包袱。因为本身候选人面试成功的可能性比较低,一个合适的可以面试的人选他们也很乐意看看,而且万一你确实想换工作,但是心仪的公司面不上,而热身活动的公司拿到了offer,你也可以考虑考虑去看下。并且这个时候你没有任何的心理包袱,因为反正你也就是来面试看看的,所以面试时候的发挥可能也会更好点,因此说不定最终拿的offer会比最后想去的那家更好呢?当然这里面不包括我。我第一次面试的时候就被血虐了T-T。参加中间件比赛的时候,我用的netty做的实现。个人感觉对netty还算有所了解的,结果面试官让我直接写出netty的源码结构,包括哪几个主要的类以及名称还有互相之间的关系……工作的项目里面我使用了kafka来做消息队列,来缓冲流量,保护系统,结果直接让我描述kafka的存储结构……比赛的时候我通过各种手段让程序无GC,结果直接就要我说出各种GC算法的原理和应用场景……PolarDB比赛我们自己写了KV,对标的是RocksDB,结果让我描述RocksDB的索引结构……当然,虽然基本上他问的东西我都有所了解,并且清楚应用场景在哪里,但是到了细节里面的时候,就稍微有点蒙圈了。虽然每个细节我确认我稍微看一下就能搞定的,但是架不住面试的时候无法张口就来呀。这个时候,感觉仿佛我变成了年轻时候的杨过,忽然身边出现了一个金轮法王对我说:“杨兄弟,你的武功花样甚多,不过我倚老卖老说一句,博采众家固然甚妙,但也不免驳而不纯。你最擅长的到底是哪一门功夫?要用什么武功去对付郭靖夫妇?”。对呀,我的知识面很广,各种应用框架新技术可能都有所耳闻,但是我最擅长的是哪一个呢?虽然我深深地知道我最擅长的是Scala和Akka、Play、Lagom等,但是架不住没有人会问呀T-T。事已至此,虽然我帅如杨过,但是此时也不得不考虑一下整理一下平生所学,找出强点和弱点,然后在面试的时候有的放矢。所以第一次热身面试之后的一个星期,我基本就在整理我的知识结构了。我大致按照如下结构做了一份思维导图:JVM相关运行时结构GC算法JVM调优编程语言ScalaJava数据结构与算法表、栈、队列树散列优先队列排序高级数据结构并发编程Java内存模型基本工具无锁并发反应式工具微服务微服务设计服务治理中间件分布式缓存消息队列RPC数据库关系型数据库NoSQLNewSQL机器学习算法推荐算法其中JVM、Scala相关、并发编程、消息队列什么的,我都仔细写了一下;Java语言太简单就没弄,数据结构稍微看了一下感觉脑海里面尘封很久的记忆忽然就被唤醒了,所以也没咋做笔记,微服务相关的太熟没弄,推荐算法太难了也没有弄;数据库相关的内容太多了,也没弄。但是大体来说索引结构在这里,拿到xmind之后,你可以按照自己的知识结构体系将其补全或者修改,然后学而时习之,甚至在面试之前也可以稍微看看加深一下记忆。(想要获得我的索引笔记,关注我的公众号,后台回复"知识索引"即可。)这之后我就进行了第二次面试。第二次面试技术相关的问题其实就没啥太大的问题了,主要考验我的是说话技巧相关的事情。我这人有点毛病,想的太多,想要做的事情太多。这些其实没啥大问题,但是我不确定的事情我也喜欢和人说,还不分场合地就和人说了。比如,我面的是中间件团队,但是我终面面试的时候却说我因为之前搞推荐算法对深度学习产生了兴趣,想要今年考个在职研究生学一下深度学习。可其实,这个时候我说这个干嘛呢?脑袋有点抽抽的吗?并且他问了我一个手写代码的题,我想了半天没有想出来。问题是如何去算根号2的值。我的第一反应很快,牛顿迭代法嘛!但是他说让我在纸上把代码写出来的时候,我就一直在想办法回忆牛顿迭代法是个什么鬼,应该怎么用来算根号2。然后一直在纸上推演导数啊什么鬼的……直到他提示我这个不是一个数学问题,二分查找就能算出来的时候,我才心不甘情不愿地开始弄二分查找的写法(内心OS:牛顿迭代法肯定比二分查找好的呀!为什么不给我时间回忆一下牛顿迭代!)。这个时候又暴露了我一个问题,我好久没有手写代码了。没有IDE的时候,我基本上啥都不是……写了半天勉勉强强地弄了个版本出来,估计也不是bug free的。所以,最终这个公司的offer也没拿到。辛苦为我推荐的普架了。这之后我又知道了我出来面试的几个缺点。首先就是要合适地说话,与面试无关的话题不要扯;其次就是我得练习一下手写代码了。字节跳动面试体验字节其实我面试了两个职位。第一个职位的一面感觉挺好的,面试官很亲和,问的问题也蛮到位的,然后留给我的发挥空间也蛮大的,所以顺利过了。二面的时候就有点聊不来了,而且越聊越感觉职位不合适。所以后来朋友帮我重新推了一个职位,就是我现在所在的数据平台部门。一面的面试官又年轻又高大又帅气,而且基本上是针对我的简历问的问题。当然,第一个问题让我讲Akka的时候,我是真的呆了。完全不按套路出牌呀!我从来没有遇到过有人会问我Akka的!!!怎么会有人问我Akka!!!内心一阵狂喜和激动之后,我先收拾了一下心情,慢慢整理了一下自己脑海中一直在跳着举手喊着"讲我讲我"的Akka特性。于是先从线程模型开始讲起,讲了它的M:N实质,Actor模型依赖的消息传递模式,层级结构划分的监督职责,让它垮的失败处理,Akka集群支撑起的横向扩展,等等等等。然后围绕着Akka又问了一些小问题,基本很顺利的过去了。后来又问了一下缓存相关的内容,其中讲了一个缓存雪崩的问题我一时半会儿没有反应过来。问题其实很简单,就是忽然有一堆请求访问同一个key,而这个key在缓存中不存在。如此所有请求就会同时去访问数据库然后又同时去更新缓存。这样的缓存雪崩效应应该如何解决?这个问题听起来其实很熟很熟很熟的,但是当时我脑袋短路了没有想起来。后来想起来原来Akka-Http-Caching(以前的Spray-Caching)就是专门为这种情况服务的。老外给的说法是这种问题叫做惊群效应,讲的是很多请求在第一个请求完成之前,一起访问同一个键(This approach has the advantage of taking care of the thundering herds problem where many requests to a particular cache key (e.g. a resource URI) arrive before the first one could be completed.)。文档上说的This approach指的是缓存的时候,不要缓存一个值,而是一个Future[T]。这样,第一个请求获取值的过程也被缓存下了。后续的请求就会访问到这个Future,然后可以向其注册回调,等待缓存动作完成再完成回调。当然,这个没有答得特别好也没事,后续又问了我一下关于JVM相关的一些东西,最后手写了一个算法题。然后一面顺利地就过了。之后二面的话基本也是围绕我的简历来问的,讲了一下当时做的推荐算法的原理,讲了一下Spark的基本原理,然后最后做了一个算法题,然后也顺利过了(其实还有一些其他问题,但是我忘了问的是什么了……)。当然这个算法题的实现并不是最好的。题目内容是26进制的加法,其实要涉及单个字符的加减和进位的处理的,这样实现下来细节就要处理好多东西,还很有可能出错。所以我取了个巧,我先把字符数字都转化成了整型,然后整型加减得到结果,然后再把结果转化成了26进制字符。虽然结果不是最优的,因为数字大了肯定会溢出的嘛。但是起码还是做出来了,所以二面也顺利过了。三面的时候也是先围绕着我的项目问了一些相关的问题,所以答得蛮平淡的,但是也还行。然后他问了一下我如何做流量控制。问我流量控制哎!!!然后,我又强行按捺下了内心的喜悦,将《反应式设计模式》的第十六章流量控制的内容大致讲了一遍。也许就是给了这样一个我发挥的空间,所以我第三面也很顺利地过了。没多久就是HR面试大致谈了一些技术之外的问题。HR面我就中规中矩了。当时面完感觉就稳了,但是等了好久好久还没有跟我沟通offer的事情,等的我有点难受了……之后HR联系我说,还要给我加面试,说团队老大要面我一下。原本字节面试一般3+1就OK了,然后突如其来地加面试让我感觉有点忐忑,所以后面的面试发挥没有前面好了。其实后来回想一下,我可能是以为前面面试表现不好,不能给我确定offer,才会有后来多的面试的。所以当时心态不好,答的感觉也没有之前果断。后来第五面完了以后,团队老大还是不确定,还要加一面交叉面试,这个时候我就豁出去了。无所谓,面上面不上没关系,反正字节跳动在我家旁边,只要庙不搬,我就进得去。所以最后一面跟隔壁leader聊的时候相对来说还好一些。问题没有问啥特别的,就是仔细问了下我最近做的一个项目,优点在哪里,缺点在哪里,难点在哪里。然后顺着难点来进行扩展,为什么是难点,怎么解决,有哪些方案,这些方案有哪些优缺点。幸好我平时工作还是有思考的,所以最终答的还不错。于是终于到了6月10号左右,HR和我确定要发offer了。经验总结整个面试过程,如果加上之前不合适的职位的话,总共8面,前后跨度一个多月。然后到了今天的时候,最终入职成功。说起来还是有点漫长的。如果再加上前面的两次热身面试,可能跨度就有接近两个月的时间了。说实话我并不是那种别人一看就很喜欢的工程师,因为一直在小公司做个小架构,而且主力编程语言比较偏门,所以适合我的职位范围相对来说很窄。实际上我今天看了一下和我工作相关的两个项目,一个go,一个python,我的scala技能可能在后面相当长一段时间要荒废了……不过没关系,离家近就行,而且跳出舒适区看一下其他风景,我感觉对我来说也是一件好事。最终总结为什么能成功面上字节跳动,首先我的基础实际上还可以的,虽然第二次面试的面试官觉得我基础不好,但是其实很多内容在我深入的时候我就把思路、结构、来龙去脉整的明明白白的,所以就算忘了,回忆起来也能很快塞进体系里重新理解透彻;其次我有自己的拳头产品,面试不问就罢了,一旦问到Scala、Akka、Play、Lagom或者能扯上反应式架构的时候,只要嘉和和品神不在这条街,我就是这条街最靓滴仔!!!最后,我知道我为什么想去这家公司,并且就算不去也没啥大的损失,所以面试的时候可以不卑不亢,心平气和,于是发挥的就也还行。而且,反正公司就在我家旁边,这次没面上没事,过段时间再面呗。这些经验换算到你这边:如果你说你现在基础不好,我会说没关系;但是如果一年、两年、三年以后你还和我说你基础不好,那是不是要自我反思一下呢?如果你说你现在没有拳头产品,我会说没关系;如果一年、两年、三年以后,你还是没有拳头产品,那你看我这篇文章有啥用呢?然后心态的问题可能就需要自己调整了。只要有基础,有拔高,然后心平气和地来面试,我相信你肯定能面试成功的。

    展开全文
  • 1、FUNCTION df_school.sum does not exist. Check the ‘Function Name Parsing and Resolution’ section in the Reference Manual 解决方案:sum() count() avg()这些函数英文和()要挨着写,不能有空格,否则报错...

    1、FUNCTION df_school.sum does not exist. Check the ‘Function Name Parsing and Resolution’ section in the Reference Manual

    解决方案:sum() count() avg()这些函数英文和()要挨着写,不能有空格,否则报错。

    2、MySQL的时间差函数TIMESTAMPDIFF、DATEDIFF的区别

    TIMESTAMPDIFF函数:有参数设置,可以精确到年(YEAR)、天(DAY)、小时(HOUR),分钟(MINUTE)和秒(SECOND),使用起来比datediff函数更加灵活。对于比较的两个时间,时间小的放在前面,时间大的放在后面。

    –计算年龄,当前月日 < 出生年月的月日,则年龄减一
    TIMESTAMPDIFF(YEAR,s_age,NOW()) AS ‘年龄’;

    datediff函数:返回值是相差的天数,不能定位到小时、分钟和秒。

    – 相差2天
    select datediff(‘2018-03-22 09:00:00’, ‘2018-03-20 07:00:00’);

    3、row_number()、rank()、dense_rank()的区别

    row number():同薪不同名,相当于行号,例如3000,2000,2000,1000的排名是1,2,3,4

    rank():同薪同名,有跳级,例如3000,2000,2000,1000的排名是1,2,2,4

    dense_rank():同薪同名,不跳级,例如3000,2000,2000,1000的排名是1,2,2,3

    这三个函数必须与其搭档over()搭配使用,over()常见的参数有两个,分别是:

    partition by():按某字段切分

    order by:与常规order by用法一致

    4、MySQL查询的一般思路

    • 能用单表优先用单表,即便是需要用group by、order by、limit等,效率一般也比多表高。

    • 不能用单表时优先用连接,连接是SQL中非常强大的用法,小表驱动大表+建立合适索引+合理运用连接条件,基本上连接可以解决绝大部分问题。但join级数不宜过多,毕竟是一个接近指数级增长的关联效果。

    • 能不用子查询、笛卡尔积尽量不用,虽然很多情况下MySQL优化器会将其优化成连接方式的执行过程,但效率仍然难以保证。

    • 自定义变量在复杂SQL实现中会很有用。

      自定义函数更一般化和常用的写法应该是分三步:

      1、 定义变量接收返回值
      2、 执行查询条件,并赋值给相应变量
      3、 返回结果

    • 如果MySQL版本允许,某些带聚合功能的查询需求应用窗口函数是一个最优选择。

    展开全文
  • 软件测试员工作经验分享

    千次阅读 2018-05-07 16:45:12
    一、业务分析能力1.分析整体业务流程不了解整个公司的业务,根本就没办法进行测试2.分析被测业务数据了解整个业务里面所需的数据有哪些?哪些是需要用户提供的?哪些是自己提供的?有哪些可以是假数据?...



    一、业务分析能力

    1.分析整体业务流程

    不了解整个公司的业务,根本就没办法进行测试

    2.分析被测业务数据

    了解整个业务里面所需的数据有哪些?哪些是需要用户提供的?哪些是自己提供的?有哪些可以是假数据?有哪些必须是真数据?添加数据的时候可以用哪个库?

    明白了整个软件的数据库架构,才能知道哪一个数据是从哪一个表里头带出来的,它的逻辑是什么,有没有连带关系。

    3.分析被测系统架构

    用什么语言开发的?用的是什么服务器?测试它的话需要用什么样的环境进行测试?整体的测试环境是什么样的?

    如果缺少了,需要进行环境搭建,架构搭建。一般去一家新公司之后,架构是搭建好的,了解它即可,熟悉之前的这些老员工们使用什么样的架构去做的。

    4.分析被测业务模块

    整个软件有哪些模块,比如说首页面、注册页面、登录页面、会员页面、商品详情页面、优惠券页面等等

    明白有多少个模块需要测试,每个模块之间的连带关系,进而怎样进行人员分工

    5.分析测试所需资源

    我需要几台计算机,需要几部手机,手机需要什么样的系统,什么样的型号。

    比如测一个网站的性能的时候,电脑的配置达不到测试并发5000人的标准,要么升级电脑的硬件配置,要么多机联合,多机联合时需要几台电脑,都需要提前筹划。

    6.分析测试完成目标

    我的性能目标是什么样的?我的功能目标是什么样的?我要上线达到的上线标准是什么样的?

    性能目标,比如我要达到并发5000人的时候,CPU占用率不能高于70%,内存占用率不能高于60%,响应时间不能超过5秒

    功能目标,比如整体的业务流程都跑通,所有的分支流程都没有问题,所有的接口都能够互相调用,整体的UI界面没有问题,兼容性没有问题等

    把这些问题都弄清楚,测试的思路会非常的清晰


    二、缺陷洞察能力

    1.一般缺陷的发现能力

    至少你要满足一般缺陷的发现能力,这个是最基本的,如果要连最简单的一般的缺陷都发现不了的话,别说优秀测试工程师了,你说你是测试我都不信

    2.隐性问题的发现能力

    在软件的测试过程当中有一些缺陷藏的比较深,有的是性能方面的问题,有的是功能方面的问题,它需要有一些设定特定的条件的情况下才会出现这样的问题。

    比如说买双鞋必须选择的是什么品牌,必须选择是红颜色,必须选择44号,而且必须选择用特定的支付方式才会出现这样的bug的时候,那么这种就属于特别隐性的bug,对于这样的问题的发现能力一定要比别人更强,要找到一些别人可能发现不了的bug

    3.发现连带问题的能力

    当发现了一个缺陷之后,能够想到通过这个缺陷可能会引发其他哪个地方出现问题,这就叫做连带的问题。而不是说发现这一个bug之后提了这一个就算完了,一定要有一个察觉,可能其他地方也存在这样的问题。

    4.发现问题隐患的能力

    有些软件里边可能有一些操作模块,或者是代码写的接口,表面上没有什么问题,但是它是有隐患的,比如说这个接口写的不稳定,当他传的数据有一些问题的时候,可能它最后返回的结果就是报错就是报404或者报乱码。

    5.尽早发现问题的能力

    如果你只能停留在界面级别的话,那你根本就没有办法达到尽早发现问题的这个能力

    你必须要等到前端人员把每个界面都做好了之后才能进入测试,而我能比你早一个月进入测试了,然后我比你结束测试时间快一个月,而你又比我晚一个月,那么咱俩的薪资一下就拉开了

    6.发现问题根源的能力

    需要知道这个缺陷它到底是由什么原因产生的,是属于什么类型的缺陷,是ui前端人员做的问题,还是后台接口人员做的问题?

    不仅要找到这个bug,还要知道这个bug产生的原因,这样的测试人员是非常棒的,而且很是受人尊敬,提bug的方式也就不一样了


    三、团队协作能力

    1.合理进行人员分工

    合理的进行人员分工是提高效率的重要保证

    2.协助组员解决问题

    比如说测试在赶进度,或者这个软件项目的质量把控是一个团队来把控的,协助组员解决问题就显得尤为关键

    3.配合完成测试任务

    一个团队里边的人员分工,他们的任务都是不一样的,这就是咱们说的配合。你的东西做完了,要轮到我了,我的性能测完了之后该轮到你了,所以整个的一个流程下来之后,大家应该是各司其职,配合得非常紧密的一个过程

    4.配合开发重现缺陷

    我给你提bug,你改我的bug,咱们的目的只有一个,就是让这个软件变得更好,所以在这样的情况下,咱们就一定要配合开发

    5.督促项目整体进度

    既然是一个团队协作的过程,就一定要互相的去督促对方,包括督促开发去改bug,因为开发人员他们有时候工作很忙,他们不知道要先改哪些问题,要后改哪些问题,但是往往有一些缺陷,它影响了测试的这个时间,影响了测试的进度,那么这个时候就需要测试员去督促开发人员,让他尽快的去解决你棘手的问题。这个东西能够提高咱们的测试效率

    6.出现问题勇于承担

    愿意背锅的最后都成为了领导,不愿意背锅的最后依然是员工


    四、专业技术能力

    1.掌握测试基础知识

    基础知识就是根基,根基打好了,你才能够更有效地往后期发展,也就是为了以后的学习做一个铺垫。如果根基都没打好,功能测试不会,就想直接学性能,那性能是做不好的

    2.娴熟运用测试工具

    熟悉工具和熟练使用工具完全是两个概念,熟悉工具基本上等同于不会,遇到过很多简历上写会使用什么什么工具,都没有实际能力。比如loadrunner只会一个简单的录制,增强一下脚本,觉得会用了,那知识会用了1/5,其他4/5 都不会。

    3.了解工具操作原理

    它是怎么样给服务器发送请求的,是用什么样的方式去发送请的,是用什么样的方式去监控的,它的操作原理是什么样的,咱们要把这件事情搞清楚,这样的话能有助于更好的去使用这些东西。包括一些请求的协议,每个协议代表什么意思,它是用来干什么的。

    4.自主完成测试任务

    一定要能够自己完成一个独立的内容,独立的工作,这件事情领导你交给我好了,放心我能给你搞定,要的是这样的人

    5.找出问题出现原因

    找出缺陷的时候,不仅要看它的表面,还要看它的本质

    6.提供问题解决方案

    发现问题不是能力,发现问题并提出解决方案才是真的能力

    7.提供完整测试报告

    测试报告能够说明你表达的清不清楚?领导能不能看懂?还有就是能不能够把你整个测试的过程给它梳理得非常详细,人家能够通过你的报告,能够了解到整个的项目的情况,而不是只了解一个片面的情况

    8.了解相关技术领域

    触类旁通


    五、逻辑思考能力

    1.判断逻辑的正确性

    面试官也经常会给测试人去出一些逻辑题,逻辑题能够分析出来你这个人思维有没有?活跃不活跃?还有他的维度,包括他想的问题的全面性,都能够判断得出来。

    比如说去买一样商品,它的里边逻辑就会经常会出现很多问题,比如说它的会员的级别,什么样的级别去买什么样的商品,它的价格不一样,什么情况下会给优惠券,什么样的情况下不给优惠券?达到多少钱的情况下才能够使用优惠券?如果说这里边的逻辑出现了问题的话,那么整个的业务不用再测了

    2.对可行性逻辑分析

    要去测一个网站的逻辑的时候,一定要先思考这一个业务流程可能会涉及到哪些逻辑,这些逻辑哪些是可行的,有些是正向逻辑,有些是逆向逻辑,都要考虑全面,而不是说只是把正向的逻辑测试全面了,逆向逻辑不考虑。其实往往更容易出错的地方就是逆向逻辑

    3.思维导图梳理思路

    思维导图工具能够起到什么作用,能够让你更有效的进行测试,能够让你的思路更清晰

    4.站在客观角度思考

    去测试的时候,不要仅仅只是站在测试人员的角度上去对整个网站进行测试,还更多的要站在用户的角度,要替用户考虑


    六、问题解决能力

    1.技术上的问题

    把自己的个人能力提升起来,多跟别人虚心请教,多去自己想办法解决问题

    2.工作中的问题

    在任何的企业里边去工作,肯定会遇到一些工作当中的一些不愉快的事情,而不是什么事情都会让你很顺心。所以要去处理工作上的一些不顺心的事情,不要把它带到你的工作上,或者是你的生活上,尽可能的去跟别人沟通,去解决这个工作上遇到的麻烦

    3.同事间的问题

    在工作当中可能会涉及到跟开发人员的沟通,跟产品人员的沟通,跟ui人员的沟通,跟这三方的人员去沟通的时候,就要用不同的沟通方式

    4.领导层的问题

    如果你觉得你的领导不好,或者说你觉得对你的领导一些建议,不要的去跟同事之间去说他坏话或者怎么样的,领导需要的是解决问题的人,而不是制造问题的人


    七、沟通表达能力

    1.和技术人员的沟通

    跟开发人员阐述缺陷时要简洁明了、清晰易懂。当发现严重缺陷时,也不要大惊小怪,要站在开发人员的角度思考如何解决问题。而不是踩在开发头上,炫耀自己发现问题的能力。

    2.和产品人员的沟通

    当对产品提出意见时,要站在用户的角度去说明自己的想法,而不要主观认为不好而要求产品进行修改。

    3.和上级领导的沟通

    跟领导沟通时要有大局观,不能只考虑自己部门的情况。并且与领导沟通时,尽量直奔主题,不要拐弯抹角,当与领导意见不一致时,也不要直接反驳,应该先给予认可,再阐述自己的想法。

    4.在集体会议中沟通

    在集体会议中不要一味的突出自己的个人能力,不要当话痨,也不要默默无闻。适当的提出一些自己的见解,有助于让大家更加重视你的存在。切记不要在多人会议中,去指责别人和推卸问题。各个部门的同事,都要面子~

    5.与下级员工的沟通

    与下级沟通时不要摆高姿态,不要让下级产生畏惧感,应该更多的为下级解决问题。服务好部门的同事,才能更好的产生凝聚力。


    八、宏观把控能力

    1.有效控制测试时间

    测试周期的时间控制,应当采取多种方法去衡量,例如人员能力,人员数量,项目复杂程度,同类项目的测试经验等多方面去衡量。

    2.有效控制测试成本

    测试成本指的是人员成本跟时间成本,不要浪费每个人的时间跟劳动力,要让每个人充分发挥最大的价值。

    3.有效制定测试计划

    测试计划对于一个项目是核心关键,它的存在为了让测试进行中有依据可查。所以测试计划,一定要切合实际情况,要经过思考和衡量最后得出计划安排。

    4.有效控制组员情绪

    组员的情绪可以直接影响测试进度跟测试的质量,当有组员出现思想问题时,应当及时沟通,采取一些必要的措施去解决问题。而不能装看不见。

    5.有效进行风险评估

    任何项目在进行期间都存在许多潜在的风险,例如,人员离职,生病请假,业务变更,需求变更,服务器或其他组件故障等。应当提前做出相应的解决方案,以免到时候手忙脚乱。

    6.有效控制测试方向

    测试的方向是指测试的目标和测试的范围,很多项目的测试是有针对性的,例如性能测试,所以在测试中,一定要随时清楚测试的目标和目的是什么,以免把时间浪费在无关紧要的业务上。


    优秀软件测试工程师必备的八个能力

    链接:https://www.zhihu.com/question/21103928/answer/292795218

    展开全文
  • 本来是没有打算做一个初试经验的,但是鉴于很多小伙伴都问了很多关于408方面的复习经验,虽然我的408分数不高,没有120分大佬那么厉害, 但总体还是有一些经验的(关于规划方面),不至于大家在复习时晕头转向,这里...

    关注学长公众号 计算机考研帮帮帮(cskaoyan666) 获取 复试资料, 面试问题等珍贵资料哦

    B站视频地址

    https://www.bilibili.com/video/BV1UA411e7YR 有更多素材图片 更形象些~ 希望大家多多三连~

    初试经验

    本来是没有打算做一个初试经验的,但是鉴于很多小伙伴都问了很多关于408方面的复习经验,虽然我的408分数不高,没有120分大佬那么厉害, 但总体还是有一些经验的(关于规划方面),不至于大家在复习时晕头转向,这里总结一些经验给大家。

    408 经验

    对于所有的同学,我强烈建议你们最晚408从7月份就可以开始准备了,不要太晚(对于科班来说也是一样的, 408内容多),当你们看到这个经验之后,也是7月多份了,尽快的开始准备了!!

    当然,如果你是三四月份看到这条经验的话,那么你有较充足的时间去把王道的书和教材,多看仔细一些。

    资料准备

    以下是我复习所用全部资料资料和工具

    • 王道单科书 4本

    • 王道真题 + 模拟题

    • 教材 (tb买二手便宜)

      • 现代操作系统 第三版

      • 计算机网络 第七版 谢希仁

      • 计算机组成原理 第二版 唐硕飞

      • 数据结构 用面对对象方法与c++语言描述
        在这里插入图片描述

    • 模拟考试的答题纸, 划线笔 (画知识点)

    时间规划与复习方法

    我一共把408复习分为: 三轮王道单科书复习 + 两遍真题 + 模拟题测试

    三轮王道单科书复习 120天

    我们4科的复习顺序是计算机数据结构,计算机组成原理,操作系统和计算机网络。

    第一轮: 65天

    在看每复习一本王道之前,我们先翻到王道的目录,然后定一下每一天大概看多少页。大概一本王道花15-20天,计算机网络会稍少点时间。这就是你每天所看的章节的范围

    • 第1步先看教材,对应的范围讲到的教材的内容看完 (这是高分学长的一个玄学吧,因为王道它只是一个知识点的精华部分,但是真正考408的时候老师是拿教材出题的,所以你不要以为只看了王道就没关系了,因为它很多题目都是在教材中出现的细知识点,王道上提的很少,所以这就是第1轮复习看教材的原因,这一轮应该决定了你分数的上限
    • 第2步再看王道上面的知识点总结
    • 第3步做王道的选择题(对于大题这里要分科对待,像计算机网络、计算机组成原理、操作系统这一些大题它对于前后的知识都有联系,所以你可以暂时放下,或者只做你会的那部分,但是数据结构的话,对于那些算法题,你可以选作一下, 做单数题或者双数题,或者选几个题,因为它有时候题目会非常多,有五六十个题目,你如果一直做下去的话,耗费时间太长了),进行订正(如果是哪个知识点忘记了,可以在王道的前面对应知识点上,用红色的画线笔把相应的知识点画上,便于你后期再进行,知识点查看的时候,可以更好的注意到红色的地方是我错过的地方),不会的就看王道的解题视频,尽量每个不会题目都要搞懂

    注意: 写选择题的时候用铅笔写订正的时候用红色圈圈或者其它记号来标记错误的题目,做完后用铅笔擦掉,方便第2轮继续重新做。

    第二轮: 50天

    第2轮的话可以脱离教材,或者是不太懂的地方继续看教材书上没讲的清的地方看教材。

    在经过第1轮的复习后,我们对4科的知识框架都有一定的了解,所以这时候大题目我们是可以做的。对于第2轮复习,我们还是像第1轮一样复习每一本书之前先定好每天看多少页,但这个时候我们的速度可以加快,因为我们不需要继续看教材了。

    • 第1步先看王道单科书的知识点
    • 重做选择题和大题 (这里选择题有时间建议全部重做,因为你做的时候会发现有很多题目,之前做错了还是会做错,而且还可能会出现之前没做错的,现在反而做错了这种情况)
    • 订正好,用另外一个颜色的笔来标记错题,把所有的错题都搞清楚,用于方便第3轮作答,第2轮还是用铅笔。

    第三轮: 20天

    第3轮复习的话,我们只需要把全部的错题再做一遍,继续弄弄题目即可(这一步千万要做,因为按照我的经验,不管你前面两轮对错题,是看了视频做的笔记,前面两轮都做错的题目,第3轮还是会做错

    两轮真题复习 30天

    第一轮: 20天

    第1轮主要是真题模拟,抽一个完整的下午的时间,把10年真题完完整整的去模拟一遍,我将强烈建议你买一下考试模拟答题纸来制造一个仿真的环境。

    • 做真题 花一个下午的时间 用答题纸模拟
    • 订正真题, 标记错题, 以便第二次继续做
    • 对于经常错的地方, 从王道上进行巩固

    以上建议 两天一套, 第一天考试+ 订正 第二天找出错点和巩固(错的多的章节 可以连同王道单科书的错题一起在做一遍)

    第二轮:5-10天

    • 选择题可以重新做一遍, 主要关注错题, 做好标记
    • 大题 关注考点, 总结常考的题型。

    一轮模拟题模拟 15天

    和真题整体复习是一样的,尽量也进行模拟,用答题纸和完整的时间进行模拟

    • 模拟考试
    • 当天订正
    • 重做错题

    复习细节

    ​ 最后我想说的是,不要纠结于我上面所设定的时间,因为这也是按照从7月份开始进行复习的一个规划,如果你8月份、9月份再进行复习的话,你要对你的计划有相应的调整,其中后面的时间是相对重要的 ,如果你要改进的话,那么你可以适当的延长408的每天的复习时间,因为408毕竟也有150分,也就是说你真题必须要做两遍,这个是比较关键的地方

    ​ 但也不要因为过于追求进度追求快速而导致前面复习的不扎实,这样的话会给你后面的复习造成非常大的麻烦。对于一些,对于计划不要过于死板,对于学习经验也不要只听一个人的,可以尽力的去搜索一些经验(学长学姐,B站, 知乎),来使自己的复习更有效率,上面的经验只是我的个人经历和看法,大家辩证的去看待即可。

    ​ 最后祝各位考生,初试顺利,考上理想的分数, 励励前行,我们顶峰想见!

    小tip

    • 去图书馆/ 有人学习的地方
    • 找研友相互监督(无竞争关系最好)
    • 和舍友沟通好,搞好关系

    英语二 81分

    阅读:

    • 紧跟唐迟老师的阅读课 真题做三遍, 可以做好唐诗老师阅读课的笔记,做题的时候经常反过来,用具体的技巧的话,可以按照老师讲的就可以了。

      我觉得比较重要的经验、

      • 答案遵从主旨

    完型/新题型/ 英译汉:

    • 真题就够了,多磨几遍真题,技巧的话我当时是没有看,但是你可以看一些相关的技巧

    作文:

    • 总结模板可以在b站上找到一些模板 大作文和小作文

    政治和数学我的经验不多,就不进行分享了

    展开全文
  • Unity3D学习路线与学习经验分享

    万次阅读 多人点赞 2018-10-17 14:15:14
    Unity3D学习路线与学习经验分享//最后一次更新为2019.7.22日,更新了一些废掉的链接 作者:15游02 丁祺 你好,这篇文档是我的导师孙老师(以下简称老孙)指名我 书写给新手、初学者以及技能有些许缺陷的人的一篇...
  • Unity中批处理的原理与使用前言 由于从事工业三维可视化的原因,我们的项目中有大量的模型需要在Unity中打包为assetbundle文件,其实打包assetbundle的过程是很机械的过程,这种重复性很高变动很小的工作我们通常...
  • 在OSX上开发UNITY本地插件的经验分享

    千次阅读 2016-03-26 21:46:09
    相信做过Unity开发的同学都知道Unity本地插件是什么,本篇文章中,博主使用的是C#脚本,Javascript不作讨论。 在大多数情况下,使用托管语言脚本进行开发是能够满足业务需求的,但在一些必须用到遗留代码或供应商只...
  • 基于Unity的游戏开发(上)

    万人学习 2015-03-09 19:53:04
    本课程是Unity游戏开发的入门课程,课程分为上、下两个部分。上篇主要讲述游戏的基本概念、Unity的开发环境、游戏资源的创建和使用等基础内容。
  • 深入浅出Unity3D——第一篇

    万人学习 2015-02-05 09:58:48
    Unity3D基础知识、游戏算法一网打尽。
  • 首先去官网下载对应版本的UnityHub 地址: https://unity.cn/releases 安装完UnityHub,运行会提示登录Unity账号,可以用微信登录,点击右上角的这个按钮 选择微信登录 然后用手机扫码即可 登录成功后,会提示...
  • Unity Hub许可证激活问题

    万次阅读 多人点赞 2019-06-14 21:16:06
    去官网下了个Unity2019.1.02f,然后打开的时候又要我下一个Unity Hub2.0.0,很迷,不知道这个是干嘛的,了解了一下才知道,原来这个就是个管理Unity版本的软件,也就是我们可以在自己电脑上安装多个Unity版本,然后...
  • [Unity3d]unity与html通信

    万次阅读 2013-12-01 00:33:12
    更多教程请访问: ... 谈谈今天的学习收获,发现了一个好东西,unity与html能够相互通信,意味着我之前学的web开发还能在unity中用得上,哈哈,太happy了!下面简单谈谈通过Unity3D调用HTML网页的脚本...Unity3D浏览...
  • 使用UnityHub下载任意版本Unity

    千次阅读 热门讨论 2020-03-05 14:35:35
    unityHub上只能下载官方指定的版本,很多其他版本不能下载,下面介绍的是在unityHub下载任意版本的方法 举例: 2019.2.11f1版本的unity----> unityhub://2019.2.11f1/5f859a4cfee5 格式 unityhub://version/...
  • Android与Unity交互研究

    万次阅读 多人点赞 2015-07-03 00:27:25
    unity与android交互的由来 unity简单介绍 unity与android交互介绍 unity调用android的方法 android调用untiy的方法unity与android交互的由来本人在项目开发过程中,遇到这样一个需求,把unity的场
  • Unity内存优化经验分享

    万人学习 2015-10-19 14:10:18
    该课程主要是针对游戏开发过程中,包体的压缩,材质的压缩,效率的优化等一些技术点的讲解,以及编码过程中如何优化内存等。
  • Unity3D移动端实战经验分享

    万人学习 2015-01-08 17:03:41
    主要是围绕资源加载效率的优化,文本文件加载,比如xml序列化读取,protobuf文件序列化,以及消息事件封装及应用,shader的优化及运用,移动端实时阴影的绘制。
  • Unity3d】200个插件免费分享(所有资源已上传)

    万次阅读 多人点赞 2012-10-27 00:25:37
    接触U3D有段时间了,积累了点插件、资源、学习网站、论坛等,现在整理下,跟广大同仁们分享下! 所有资源已经上传完毕,约5G。 200个插件免费分享 【下载链接】  链接:https://pan.baidu.com/s/1smQzbDb 密码...
  • Unity打包IOS版本须知流程(移动)

    万次阅读 2018-05-17 13:47:46
    欢迎加入Unity业内qq交流群:956187480 qq扫描二维码加群 本博客原地址:https://blog.csdn.net/Superficialtise/article/details/79699813 Unity是个开放性的平台,打包时也可以选择多种打包类型,几乎包含了...
  • unity开发android游戏(一)搭建Unity安卓开发环境

    万次阅读 多人点赞 2014-03-23 16:14:38
    1,下载安装Java的JDK:http://www.oracle.com/technetwork/java/javase/downloads/index.html (JDK中,包含JRE)如果是64位的系统,推荐安装64位的java。2,下载安装Android Studio:Google已经逐步转向Android ...
  • 每周更新unity3d视频教程,从入门到就业,官方unity3d培训,上千门实时更新课程,供学员在线观看学习,unity3d游戏开发,可以让学员随时随地学习! 免费网上学习unity3d自学教程,国内名师机构专业授课,O基础快速学习,1小时...
  • Unity官网地址变更为https://unity.cn/

    万次阅读 2019-07-02 17:44:42
    注意:Unity官网地址变更为 https://unity.cn/
  • Unity安装官方中文版教程 本文提供全流程,中文翻译。 助力快速完成 Unity 中文汉化的安装 为新手节省宝贵的时间,避免采坑! 安装过程非常简单,这里 Chinar 只说最简单的安装方式 下载官方语言文件 zh-cn.po ...
  • 基于Unity的游戏开发(下)

    万人学习 2015-03-13 08:17:06
    本课程是Unity游戏开发的入门课程,课程分为上、下两个部分。下部分主要介绍JavaScript脚本程序开发、动画、粒子、网络和GUI系统
  • unity下载官网

    万次阅读 多人点赞 2019-11-08 16:13:05
    https://unity.cn/releases
  • Unity】NGUI下载与导入

    万次阅读 多人点赞 2018-09-10 21:07:27
    Unity3D插件NGUI的下载和导入。
  • UNITY中常用矩阵

    千次阅读 2017-08-17 14:44:03
    含义 UNITY_MATRIX_MVP 当前模型视图投影矩阵 UNITY_MATRIX_MV 当前模型视图矩阵 UNITY_MATRIX_V 当前视图矩阵 UNITY_MATRIX_P 目前的投影矩阵 UNITY_MATRIX_VP 当前视图*投影矩阵 UNITY_MATRIX_T_MV 移...
  • 1.Downloading and Installing Unity 下载和安装unity You can download and install the Unity Editor from the Unity Website; unity3d.com/download. 你可以在这个网站 unity3d.com/download....
  • Unity面试题(包含答案)

    万次阅读 多人点赞 2018-09-13 09:48:19
    这个是我刚刚整理出的Unity面试题,为了帮助大家面试,同时帮助大家更好地复习Unity知识点,如果大家发现有什么错误,(包括错别字和知识点),或者发现哪里描述的不清晰,请在下面留言,我会重新更新,希望大家共同...
  • Unity Hub和Unity项目的关系

    万次阅读 2019-11-14 14:19:39
    在之前的一些版本中,下载Unity引擎是直接下载相应的Unity版本就可以运行项目了,但是现在Unity引入了Unity Hub来管理,所以之前的版本就不讨论了,我们现在说一下如何用Unity Hub运行Unity项目以及他们之间的关系。...
  • Unity最新官方下载地址 - Unity Download

    万次阅读 2019-08-22 09:23:39
    不知道啥情况,unity中文官网这段时间都访问不了,这导致很多想要下载unity的小伙伴找不到想要的unity版本的下载链接,下面给大家贴上能正常下载unity各个版本的链接,包括Beta测试版: Unity:...

空空如也

1 2 3 4 5 ... 20
收藏数 641,084
精华内容 256,433
关键字:

经验分享