算法篇javascript
1. 排序(冒泡、堆排序、快速排序等)php
2. 二分查找css
3. 判断素数html
4. 单链表反转前端
5. 判断是否为回文数(aabb格式)java
6. 十进制转换成二进制python
7. 判断IP的有效性mysql
8. 合并两个有序数组,生成一个有序的大数组,要求时间复杂度最低android
9. 堆排序web
10. 二叉树排序
11. 图的最短路径
固然除了上面这些基础的算法,有的面试官还会临时给个有规律的数据,让你写出一个算法或给出思路,考验下逻辑思惟能力,固然若是不会也不要气馁,有的面试官会给你提供思路引导你。
10
Linux、mysql篇
如下只是一些例子,可是可能还有更多状况
1) 经常使用命令有哪些,包括平常看log一些命令,查看端口命令,哪一个端口被占用,关闭进程,打压缩包,vim编辑命令,grep,sed,awk属于高级命令能够简单看下。
2) 数据库的增删改查
3) 数据库的关联查询
4) 数据库创建索引的优势,如何搜索数据的
11
Java/Python/shell开发语言篇
这个问题也是被问到的几率很高,主要是看你简历中写了哪些语言,如下问题都是关于Java/shell/python的
1)./ 和sh 执行shell脚本的区别
2)shell脚本中的第一行的做用是什么
3)怎么用shell脚本取出日志中倒数第二列的内容
4)lamda函数是什么
5)Python中的内存管理
6)字典、列表、元祖的区别,在内存中都是如何存储的,想要搜索数据时,各自的时间复杂度是多少
7)python怎么安装包
8)re模块中的match和search的区别
10)sokect编程
11)items,iteritems区别
12)Java中的collection
13)Java中经常使用的一些类库
14)Java中怎么开启线程
12
操做系统篇
通常公司不太会问这么底层的,可是360面试比较喜欢问
1) 进程,线程,协程概念区别
2) 进程同步互斥,进程间通讯概念
3) 进程调度算法,死锁概念
4) 页面置换算法,makefile概念
5) 虚存,实存,共享内存
13
ADB篇
• android四大组件、activity生命周期、ANR、五种布局、Android动画原理
• adb server重启,apk的安装与卸载
• 文件的push、pull,apk的静默安装
• app的启动中止,app包查找
• 截屏、录屏,logcat,dumpsys meminfo、dumpsys cpuinfo
14
Monkey篇
• monkey命令,monkey场景重现
• 提取crash、ANR信息的方法,填加throttle参数,忽略crash和ANR
• monkey执行指定类型的事件
15
自动化篇
自动化框架包括;数据驱动,关键字驱动,数据+关键字混合,分布式,行为驱动(lettuce),具体结合本身的项目展开。
接口自动化
怎么作的接口自动化,工具备哪些,你本身怎么写的
模块接口测试
1) 检查接口返回的数据是否与预期结果一致。
2) 检查接口的容错性,假如传递数据的类型错误时是否能够处理。例如上面的例子是支持整数,传递的是小数或字符串呢?
3) 接口参数的边界值。例如,传递的参数足够大或为负数时,接口是否能够正常处理。
4) 接口的性能,接口处理数据的时间也是测试的一个方法。牵扯到内部就是算法与代码的优化。
5) 接口的安全性,若是是外部接口的话,这点尤其重要。
Web接口
web接口测试又可分为两类:服务器接口测试和外部接口测试。
服务器接口测试:是测试浏览器与服务器的接口。这个很容易理解,咱们知道web开发通常分前端和后端,前端开发人员用html/css/javascript等技术。后端开发人用php/java/python/ruby等各类语言。用户输入的数据是输入到的前端页面上,怎样把这些数据传递的后台的呢?经过http协议的get与post请求来实现先后端的数据传递。这也可认为是接口测试,调用的登陆接口仍是查询接口,传参的是用户密码仍是搜索关键字。
外部接口测试:这个很典型的例子就是第三方登陆,好比你作的新系统免于新用户从新注册的麻烦会提供第三方登陆,那用户在登陆的时候调用的就是第三方登陆的接口,由第三方验证用户名和密码而且返回给当前系统。
对于web接口测试来讲有哪些测试要点:
• 一、请求是否正确,默认请求成功是200,若是请求错误也能返回40四、500等。
• 二、检查返回数据的正确性与格式;json是一种很是建立的格式。
• 三、接口的安全性,通常web都不会暴露在网上任意被调用,须要作一些限制,好比鉴权或认证。
• 四、接口的性能,web接口一样注重性能,这直接影响用户的使用体验。若是我搜索一个关键字半天结果都没返回,果断弃用。(待续)