#linux常用命令:基础命令:cd 切换目录 ls -l列出文件详细信息 ls -a列出当前目录下的所有文件
# touch 创建文件 mkdir 创建目录 echo echo "内容" > mook hello 创建带有内容的文件 ; cat 查看内容文件 cp 拷贝
# mv 移动或重命名 rm -r 递归删除;rm -f 强制删除 wc 统计文本中行数、字数、字符数
#网络命令:curl 利用URL规则在命令行下工作的文件传输工具 curl www.baidu.com
# netstat:netstat 显示网络状态信息 telnet:用于登录远程主机 telnet 127.0.0.1
# 系统命令:ping:测试网络连通 man:查看帮助 kill:杀死进程 top:动态显示当前耗费资源最多的进程信息
# ps:显示瞬间进程状态 df:查看磁盘大小 df -h:带有单位显示磁盘信息
# OSI 7层模型指的是哪些内容:
# 1、物理层:建立、维护、断开物理连接
# 2、数据链路层:逻辑连接、硬件地址寻址、差错校验
# 3、网络层:逻辑地址寻址、不同网络之间的路径选择、IP
# 4、传输层:传输数据的协议,TCP/UDP
# 5、会话层:建立、管理、终止会话,本地与远程主机的会话
# 6、表示层:数据的标示、安全、压缩、JPEG、ASCII等
# 7、应用层:与最终用户的接口,HTTP/HTTPS/SMTP等
# Http协议中get/post的区别
# 1、功能差异:get:去服务器取东西 post:从客服端上传东西用POST
# 2、数据传输:get把传输数据放在URL所带的参数里面,post放在body里面
# 3、安全性:get没有post安全性高,携带的参数数据会被发现,而post对用户不可见
# tcp 和 UDP的区别
# TCP:面向连接、传输可靠、应用场合:传输大量的数据、速度慢
# UDP:面向非连接:如QQ/微信的消息,离线后再登陆可以收到消息、传输不可靠、少量数据、速度快
# TCP连接三次握手具体过程
# TCP连接都需要三个阶段:连接建立、数据传送和连接释放。三次握手就发生在连接建立阶段。
# socket建立连接的过程
# 1、服务器建立监听,socket,bind,listen
# 2、客服端发送请求,connect,send
# 3、连接确认,accept,response
# 进程和线程的区别
# 进程:独立数据空间,进程间是不共享资源数据,系统调度
# 线程:执行程序的最小单元,进程内线程间共享资源,系统调度
# PS:一个进程可以有多个线程,多个线程可以并发执行
# 进程有哪些状态
# 就绪状态:已获取处理器以外所需资源,等待分配处理器资源
# 运行状态:占用处理器资源运行,此状态进程数<=CPU数
# 阻塞状态:进程等待某种条件,在条件满足之前无法执行
# 进程同步和互斥的区别
# 互斥:
# 1、某一资源同时只允许一个访问者对其进行访问
# 2、具有唯一性和排他性
# 3、互斥无法限制访问者对资源的访问顺序,即访问是无序的
# 同步:
# 1、基于互斥、经其他机制实现访问者对资源的有序访问
# 2、大多数情况下,同步已经实现了互斥,写入资源是互斥的
# 3、少数情况下,可以允许多个访问者同时访问资源
# 进程间通信都包括哪些
# 管道:半双工通信方式,数据单向流动,父子进程间
# 命名管道:半双工通信方式,无亲缘关系进程间通信
# 信号量:是计数器,锁机制,控制多进程多资源访问
# 消息队列:消息链表,存在内核中由消息队列标识符标识
# 信号:比较复杂的通信方式,通知进程某个事件已经发生
# 共享内存:映射一段能被多个进程可访问的内存
# 进程的调度算法都有哪些:
# 先来先服务、短作业优先、时间片轮转调度算法、高响应优先、优先权调度算法、多级队列调度算法
# 死锁产生的原因:
# 1、资源竞争
# 2、进程推进顺序不当
# 必要条件:互斥、不剥夺,请求与保持,环路等待
# 页面置换算法有哪些?
# 最佳置换算法、先进先出置换算法、最近最久未使用置换算法、Clock置换算法(最近未使用算法)
# makefile的作用是什么?
# 1、定义规则,指定哪些文件先编译、后编译、重新编译
# 2、makefile的好处,自动化编译
# 3、makefile 需要make工具解释执行
# 什么是ANR?
'''
ANR:应用无法响应
Activity的最长执行时间是5S
用户可以选择等待或者强行关闭
'''
# 安卓常见的五种布局:
'''
FrameLayout:框架布局
LinearLayout:线性布局
AbsoluteLayout:绝对布局
RelativeLayout:相对布局
TableLayout:表格布局
'''
# 安卓中动画有哪几种类型:
'''
Tween动画,组件移动、缩放、透明度的变化
Frame动画,通过顺序播放来实现,类似电影
'''
# Adb基本命令
'''
app安装:adb -p 手机ip地址(192.168.0.203:5555) install 包APK的位置
app重复安装:adb -p 手机ip地址(192.168.0.203:5555) -r install 包APK的位置
app卸载:adb -p 手机ip地址(192.168.0.203:5555) uninstall 包名(cn.comein)
查看手机是否连接:adb advices adb connect 192.168.0.203:5555
Selendroid是instrumentation的一次封装;
Selendroid四大组件:
Selendroid Client:Webdriver + 移动特性的实现
Selendroid Server:一个Instrumentation APK
AndroidDriver-App:一个WebViewActivity,即浏览器
Selendroid-Standalone:大总管,负责准备环境
Robotium基于Instrumentation进行封装,实现的Android测试框架
封装了Solo类库,提供自动化测试API
由于是基于Instrumentation,测试时需要源码
'''
'''
Appium的理念:不需要APP源码;不局限于语言和框架;接口统一,不需要重复开发;必须是开源的
C/S架构,Appium核心是一个Web服务器
Session:客户端初始化session与服务器交互
Desired Capabilites:初始化时的键值对组合
Appium Server,操作与驱动手机的
Appium Client:支持多语言调用
Appium环境包括哪些:
Android SDK/JDK/Appium/
Pycharm Python环境
库:Selenium/Appium-Python-Client
Appium支持哪些开发语言:Java/javascript/PHP/Python/Ruby/C#/perl/Object C
App初始化时的配置:
platformName:目标设备平台Android/ios
platformVersion:目标设备的平台版本
deviceName:目标设备名称
appPackage:App包名(Android)
appActivity:App Activity名称
automationName:自动化驱动类型Selendroid/Appium
unicodeKeyboard:是否使用Appium输入法
resetKeyboard:恢复默认键盘
'''
'''
单元测试unittest测试框架:
1、TestFixture:SetUp: TestCase: TearDown:
2、TestCase
3、TestSite
4、TestRunner
数据驱动DDT:
黑盒测试-功能测试
数据驱动单元测试:为数据源中每行重复进行一种单元测试
常用情况是使用多个输入值测试API
效果:使用多个数据运行一条用例,使其表现为多条用例
原理:通过Python的 ,装饰每条用例
一些关于自动化测试面试问题
最新推荐文章于 2024-09-29 22:12:29 发布