Title
- 1 、 按测试阶段分类,测试可分为哪几个阶段?
- 2 、 选择题:下列哪项测试不适合手工测试?
- 3、填空题:ADB 的全称
- 4 、 restful 常用四种请求方法
- 5 、 选择题 (多选):移动 app 包含哪几种类型? (重点)
- 6 、 Web 自动化和 APP 自动化的区别?
- 7 、 自动化测试策略有哪些? (很重要)
- 8 、 自动化测试有哪些成本? (重点)
- 9 、 哪些场景不适合自动化测试?
- 10 、工资表,要求一条语句查询 100 天内涨薪的员工名字,涨薪幅度, 涨薪日期,考查 MySQL 多表查询与内连接。(多表查询内连接等,很重要)
- 11 、 一草地,27 头牛 6 天吃完,23 头牛 9 天吃完,21 头牛几 天吃完? (很重要)
- 12 、求水仙花数: (很重要) 153=1³+5³+3³ ,求 100 到 999 内存在多少个这样的数?
- 13 、问答题:appium 原理及优缺点。
- 14 、问答题:Selenium 原理及优缺点。 (重点)
- 15 、Selenium 支持 B/S 架构,因此支持的语言包括:Java 、Python、 C# 、PHP 、Ruby 、Perl 、JavaScript ,不支持的语言:C 语言。
- 16 、编程题:对一个 10 位数整型的升序排列输出,要求选择排列。
- 17 、填空题:谈谈数据驱动对自动化测试的作用?
- 18 、xpath 的合法表达式?xpath 的定位方法? (重点)
- 19 、 HTML 是一种什么语言?
- 20 、QTP 脚本中如何添加注释?
- 21 、 填空题:安卓自带的随机压力测试工具是 ( ),可以依照坐标点来执行录制回放的测试工具。
- 22 、Python 元素定位方法?
- 23 、C 语言常量的正确表示?C 语言常量的定义?
- 24 、填空题:一个变量,没有定义就使用,会提示什么?
- 25 、Tcp/ip 原理?
- 26 、在网页中输入 www.baidu.com后,后台的工作原理是怎样的?
- 27 、 编程题:一个列表前两个数为 2,3 ,如果这两个数字的乘积还是一位数,列表就增加一个元素,如果是两位数就将个位、十位依次 加入列表,如,[2,3,6,1,8,8,6,4],要求编写程序求该列表前 n 项和 如 sum(5)=20
- 28 、一个人上台阶可以 1 次 1 步或 2 步或 3 步,上一个 n 阶的台 阶有多少种走法?
- 29 、输入一个整型数,将其转化为 2 进制,求转化为 2 进制后各个 位数的和?如 9 转化为 2 进制 1001 则和为:sum=1+0+0+1=2
- 30 、编程题:给两个数字,如果这两个数字的乘积还是和,是一位数, 列表就增加一个元素,如果是两位数,就增加两个,然后指针往后移, 一直到多少完?
- 31 、 编程题:输入一个数,如果每一位相加大于 10 ,则相加后的数 继续进行每一位相加,直到相加后小于 10 ,然后输出结果。
- 32 、编程题:输出 100-1000 中,各位数字之和可以被 15 整除的数,10 个/行。
- 33 、编程题:输出 0-300 以内,可以被 7 或 17 整除的所有偶数,5 个/行。
- 34 、填空题:.Net 包含哪些基本类型?
- 38 、Webdriver 的协议?
- 39 、填空题:报文段的包含内容及长度?TCP 报文的格式、长度?
- 40 、冒泡排序的应用? 说明:
- 41 、C语言基础:
1 、 按测试阶段分类,测试可分为哪几个阶段?
我的:
单元测试,集成测试,系统测试,验收测试
~~
参考答案:
软件测试可分为单元测试、集成测试、系统测试和验收测试。
2 、 选择题:下列哪项测试不适合手工测试?
并发测试,压力测试,负载测试 (性能测试??)
3、填空题:ADB 的全称
Android Debug bridge ,ANDROID SDK的工具可以支持PC连接并调试安卓设备。 包含 AM (activity managers) PM (package manager)
adb connect 127.0.0.1:60001
adb device
adb shell
4 、 restful 常用四种请求方法
GET POST PUT DELETE
restful api 是一种url风格, 不用key=value 而是 key/value
5 、 选择题 (多选):移动 app 包含哪几种类型? (重点)
a) Mobile App;b) Native App; c ) Hybrid App; d) Web App 。
BCD
Native app: 原生手机API资源,语言: 安卓JAVA,ios object-C
Web APP: 容器是 手机系统上的web浏览器,跨平台
Hybrid APP: 介于两者之间,只不过是用原生手机系统的API资源开发了一个容器container 来展示html资源。
https://blog.csdn.net/qq_50659936/article/details/126064188?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-126064188-blog-119304770.pc_relevant_default&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-126064188-blog-119304770.pc_relevant_default&utm_relevant_index=1
6 、 Web 自动化和 APP 自动化的区别?
my:
所用的工具和库不同,web用的selenium,app用的appnium
#操作对象不同,一个是用webdriver来操作html,一个是用XXX来操作app~~ *
都是用的webdriver
参考:
相似之处
1、都是U界面自动化,站在用户的角度、从页面上使用功能
2、本质是一样的,只是一个游览器,一个手机终端
3、appium继承了selenium webdriver,并再基础上增加了APP内容,实现原理一致
不同之处
1、元素定位差异,web中的name,tage_name定位不可用,也有自己的一些定位方式
2、启动方式不同
web:只需要启动对应的游览器即可
app:需手动启动appium server,需要告诉appium server要操作什么
3、APP特有一些操作,如触屏
4、app有安装卸载更新检测,每个页面功能更简单
1. 启动差别
app端:apk肯定只有1个在主屏幕显示,其他apk在后台继续运行,但是你无法对他们做操作。
web端:web端就不太一样了,在web端,我们可以通过Python多线程(或多进程)同时开启几个浏览器,让selenium对多个浏览器进行操作
2. 安装检查
app端:这点感觉很像c/s架构软件,因为app是需要安装了才能使用的,所以软件是否安装异常,也是需要检查的一个点。
web端:不需要安装,在浏览器中输入url就可以测试。
3. 页面元素操作
app端:只会显示在手机页面里加载出来的部分
web端:不太一样,如果控件不是下拉产生的异步加载,那么我们是可以对屏幕内不可见的元素做操作的。因为虽然页面上没有加载出来,但是html页面实际上已经有了。如果遇到需要下拉才能加载的页面,可以用js操作滚动条。
4. 元素定位
app端:基本操作和web端差不多,不过部分定位方式不支持,比如css_selector和link_text
web端:基础的就name,id,class_name,css,xpath这几种了。
5. 启动
app端:需要制定desired_caps内容,因为里面包含了设备信息等。
web端:通过启动webdriver不同的浏览器类,获取driver,如webdriver.Chrome(),也可以模拟手机端加载wap页面做wap页面的测试。
6. 关于元素的属性
app端:查找到元素以后,查看元素对象,发现里边基本上只有元素的text属性,也没有相关的方法修改,这个区别还是很大的。
web端:web端简直就是天堂了,比起修改,读取元素属性。比如我要获取input标签的name,我可以用get_attribute方法,也可以自行写js代码改变这些属性。
7. 使用js
app端:似乎是支持了,但是执行任何命令server端都会提示404的错误。
web端:支持非常好,因为本身js就是负责网页交互的,所以会很方便。
8. 关于滑动
app端:关于滑动是会用得很多的,比如页面很长,或者打开通知栏,这种需要在屏幕上滑动的,用到的还比较多。
web端:用到的比较少,之前基本上没有用到过。
————————————————
7 、 自动化测试策略有哪些? (很重要)
测试范围(目标)
测试方法
测试人员
测试环境
风险分析
验收标准
8 、 自动化测试有哪些成本? (重点)
1、调研成本;
2、脚本开发维护成本;
3、自动化用例设计与维护成本;
4、资源投入成本。
9 、 哪些场景不适合自动化测试?
my:
1.版本变化较多 (迭代过快,难以维护)
2