13. APP测试和WEB测试有什么区别?

1. 从技术上来说:

* 测试类型 :WEB测试有功能测试、性能测试、安全性测试、GUI测试。

APP测试除了有WEB测试的类型还增加专项测试,特性测试,适配测试。

* 区别:测试细节和方法 web项目,一般都是b/s架构,基于浏览器的。app则是c/s的,是有客户端的。

2. 系统架构。

* web测试只要更新了服务器端,客户端就会同步更新;

* app下修改了服务端,意味着客户端用户所使用的核心版本都需要进行回归测试一遍。

3. 客户端性能方面

* web页面可能只会关注响应时间,

* app则还需要关心流量、电量、CPU、GPU、Memory(内存,音:咩么瑞)。

4. 兼容方面。

* web是基于浏览器的,所以更倾向于浏览器(IE、chrome、Firefox 音:/faifɔ:ks/)和电脑硬件,电脑系统的方向的兼容;

* app的测试则必须依赖手机或者pad,不仅要看分辨率,屏幕尺寸,重要看设备系统。

专项测试:

* 多网测试:

无线网络、2G、3G、4G等,断网、网速较差及网络之间的切换时页面的显示等

非wifi下,网络流量问题

需要测试弱网下的用户体验

* 中断测试:

如电话、短信、通知、断电等,软件需要处理这些特殊情况。

* 安装测试:

安装时的中断、弱网、

增量包更新。

* 界面测试:

如不同尺寸规格的软件图文在不同屏幕的显示。

自动化测试:

1. 如何做自动化测试(介绍框架和自动化测试的场景)(考试)

框架。

思路:项目中我们主要是接口的自动化/web界面的自动化/app的自动化,用python写的代码,开发工具是pycharm

如果你是做的web界面自动化

web界面的自动化采用了下面的框架:

selenium开源测试库,

用unittest做自动化测试框架,

配合htmlreport输出测试报告,

用xrld模块读写Excel数据,

用nose模块参数化数据

最后用cmd命令/Jenkins调度执行自动化测试脚本。

如果你比较自信:我从头开始搭建的这个数据驱动的自动化测试框架(我们把测试用例写在Excel里,自动参数化执行测试脚本)。

如果你不自信: 我们这个框架是组长搭建的,然后我在里面写了一些基本的测试脚本(复制改下别人的脚本)。

如果你是做的接口自动化,

接口的自动化采用了下面的框架:

python的开源库requests(音:威快SS)发送http/https请求,并用json库把返回的json字符串转换成Python对象(数据处理或者断言)。

用unittest做自动化测试框架,

配合htmlreport输出测试报告,

用xrld模块读写Excel数据,

用nose模块参数化数据,

最后用cmd命令/Jenkins调度执行自动化测试脚本,

如果你是做app自动化,

APP的自动化采用了下面的框架:

appium(音:捱撇姆)移动端的开源测试库

用unittest做自动化测试框架,

配合htmlreport输出测试报告,

用xrld模块读写Excel数据,

用nose模块参数化数据,

最后用cmd命令/Jenkins调度执行自动化测试脚本。

如果你什么都做

利用unittest + htlmreport +nose 等自己搭建了一个通用的框架,

web测试采用selenium开源测试库 ,

接口测试采用requests开源测试库,

APP测试采用appium移动端的开源测试库。

场景:

界面的自动化测试(web/app),一般是在项目有时间的时候编写脚本,挑选一些测试用例中比较重要的用例转换自动测试脚本,每次回归测试的时候调用执行

接口的自动化: 接口的测试脚本可以在接口功能开发完成以后就去执行;

在回归的时候也可以执行接口自动化测试脚本。

2. python有哪些数据类型?(考试)

六大标准类型

Number(数字) : int、float(音:浮漏特)、bool

String(字符串)音:丝俊

List(列表)

Tuple(元组)音:踏博

Set(集合)

Dictionary(字典)音:嘚迟呢威

不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组);

可变数据(3 个): List(列表)、Dictionary(字典)、Set(集合)。

3. python不/可变数据类型有哪些? 列表和元组有什么区别 (考试)

不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组);

可变数据(3 个): List(列表)、Dictionary(字典)、Set(集合)。

列表是可变数据类型,元组不可数据类型,列表以[ ]包裹 元组以()包裹

4. 列表/元组/字典怎么取值? 怎么循环遍历

通过索引(列表/元组)或者键(字典)取值

元素遍历 for a in list:

索引遍历 for i in range(list):

5. 自动化定位元素的方法:

selenium有8种方法定位元素:比如 id name classname tag_name linktext xpath css选择器

我主要习惯用xpath或者css定位

xpath定位:

xpath xml文档的标签路径定位方法;分为相对路径和绝对路径定位;

/表示根目录 //所有目录下寻找 *表示所有;用方括号包裹属性,,多个属性可以用多个方括号,在属性之前加@

//*[@id="kw"][@name="wd"]

//span[@class='bg s_iptwr']/input

css定位:

css选择器(选择标签)定位的一种方法

所有的属性用方括号包裹,多个属性可以用多个方括号包裹 input[id='kw'][name='wd'][class='s_ipt'] (xpath表示属性用@,css用键值对表示)

特殊的属性 id class ;其中 .表示类 用#表示id : input.s_ipt input#kw

css中表示标签之间关系:

祖孙关系 form input ;

父子关系 span>input

兄弟关系 span ~ input

毗邻关系 span + a

定位的时候可以 关系加属性表示标签 form#form input@kw

如何选择按下标选择标签: a:nth-child(1) ,第一个a标签

6. 自动测试适用的场景,

功能成熟(需求变动较小),

产品更新维护周期长,

项目进度不太大,

比较频繁的回归测试,

软件开发比较规范,具有可测试性。

接口测试:

1. OSI模型的层次和代表性的协议,

Open System Interconnect 网络互连模型,

OSI:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层 ,

物理层的协议: HTTP(80) HTTPS(443) 取的是Apache的端口;tomcat 8080 8443 ; mysql 3306 oracle 1521

FTP 20/21, SSH 22, telnet(远程登陆协议)23, SMTP(邮件协议)。

传输层: TCP 和 UDP 协议

2. TCP和UDP协议的区别。

共同点: 都是传输层的协议

不同点:

1. 定义

TCP Transmission Control Protocol 传输控制协议,

UDP User Datagram Protocol 用户数据报协议,

2. TCP建立连接3次握手 释放连接4次挥手 ;UDP直接建立连接 ,

示例:客户端和服务器建立连接三次过程,

客户端发送一个请求给服务端,SYN=1;

服务端收到响应后给客户端响应,SYN=1 ,ACK确认包

客户端再次发送一个ACK的确认包给服务端

3. 特点:

TCP : 面向连接的,可靠的,数据量小。

UDP : 无连接的 ,不可靠,数据量大。

4. 应用场景

UDP: QQ/微信视频 TCP :http协议,

3. HTTP协议的内容。

1. 定义 :HyperText Transfer Protocol 超文本传输协议 ,传输的不仅仅是文本,包括视频 图片 音频 ;

从WWW服务器传输超文本到本地浏览器的传输协议。

2. 组成,

请求报文,

请求head,

请求行 : 请求方法GET,URI(URL是URI的一个形式) 协议版本

请求方法: GET, POST ,DELETE,......

URL的组成: 协议://主机:端口号(80端口默认,可以不写)/绝对路径,

协议:http,https ,

区别:https是在http的基础上结合ssl协议(加密的管道),https更安全,

共同点:都属于传输层,使用TCP协议进行传输,

请求body,

响应报文,

响应的head,

响应状态行 : 协议的版本 状态码 状态描述,

4. GET和POST的区别,

1. 功能的区别 ,

get重点在从服务器上获取资源,post重点在向服务器发送数据。

2. 请求参数,

POST请求参数放在body,get的请求参数放在URL中。

3. 长度 get放在url所以有长度限制, post放在body所以没有长度限制

4. post要比get安全 。

5. http响应状态码以及代表意思

2xx 成功--表示请求已被成功接收、理解、接受,

3xx 重定向--要完成请求必须进行更进一步的操作,

4xx 客户端错误--请求有语法错误或请求无法实现,

5xx 服务器端错误--服务器未能实现合法的请求,

200 OK 客户端请求成功,

401 Unauthorized 请求未经授权,

403 Forbidden 服务器收到请求,但是拒绝提供服务,

404 Not Found 请求资源不存在,

500 Internal Server Error 服务器发生不可预期的错误,

503 Server Unavailable 服务器当前不能处理客户端的请求,一段时间后可能恢复正常。

6. 项目中哪些地方会调用接口,接口名称是什么?

一般接口: 系统内部的接口(接口的详细测试), 系统外部的接口(重在联调)。

接口名称: 登录 注册 忘记密码 收藏 购物车 取消购物车 删除商品 商品详情.... + 接口

一般有优先级,测试重点接口

接口测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。

7. fiddler,postman 抓包的原理:

让fiddler 和 postman 成为代理服务器, 将网络设置执行代理 -- 中介服务。

8. 接口测试流程:如何做接口测试 ,

需求评审(测试对象的分析) --测试需求(测试点,测试设计) -- postman的工具将测试用例转换成测试脚本 --- postman执行测试 --- 缺陷处理 ---- 回归。

测试对象: 接口文档(接口文档的内容),(一定要接口文档?接口文档不规范)查找app前端或者后台的日志,把接口的请求参数打印出来;然后写好测试用例,找开发和架构师进行评审和确定。

测试点:接口测试点设计原则(重点),

1. 业务逻辑,

2. 参数名称的检查,

3. 参数值的检查,

4. 接口返回码的覆盖,

5. 异常处理。

9.接口(API)文档的内容:

接口名称 ,

接口请求地址,

请求参数的名字, 是否必填, 数据类型, 数据值以及数据值的意义或者范围 --- 上报数据。

返回参数的数据格式(json xml)返回参数的名字, 数据类型, 数据值,

接口返回的状态码(接口返回的状态码是开发自定义的状态码如:1代表成功,-1代表失败等),

接口请求的方法(get, post,delete),

10. 接口测试的原理:

1. 通过测试程序(工具 fiddler ,postman, jmeter, loadrunner, python代码)模拟客户端向服务器发送请求报文,

2. 服务器接受请求处理后把应答报文发送给客户端,

3. 客户端接收应答报文并解析 (响应response(音:威丝棒次)解析过程,postman可以实现),

4. 程序判断是否符合预期结果的过程(断言),

5. 即request音:瑞快丝特(请求)→response音:威丝棒次(响应)过程,

工具模拟发送http请求,然后验证服务器返回结果是否正确符合业务逻辑...

11. 接口测试的场景:

1. 接口开发完成以后就可以进行接口测试;,

2. 回归测试的时候可以用自动化脚本运行接口测试脚本。

12.性能测试:,

1. 性能测试指标值: ,

软件指标:,

事务 transaction音:团咋可省:衡量性能测试的对象,

并发用户数/并发线程数:跟服务器有交互的用户数,

注册用户数 , 活跃用户数/僵尸用户 ,在线用户数 ,并发用户数,

响应时间:Response(音:威丝棒次) Time (音:太嗯),发出请求到接受到请求的总时间,根据测试对象去分(呈现时间 + 接口的时间(发送到应用服务器时间+数据库时间))。

用户体验的角度:2/5/8原则,

吞吐量/事务总数 : 一定时间之内事务的处理总量,

TPS :transaction per second 每秒处理的事务数 事务总量/事务总的完成时间,

点击率 Hit Rate : 一次点击所发出的请求数/时间,

物理指标:,

cpu占用 内存占用 磁盘读写I/O比例 网络带宽大小。

2. 性能测试的目的 。

评估(满足性能测试需求,没有一个明确的性能需求文档;一般是在需求文档的性能需求) ,

调优 解决性能测试中发现的瓶颈和问题,

稳定 验证系统是否稳定运行。

移动app测试的多样性_app移动端接口性能测试相关推荐

  1. 移动app测试的多样性_移动App测试一些崩溃原因及触发崩溃的场景

    移动 App 测试一些崩溃原因及触发崩溃的场景 移动 App 测试与传统台式机测试相比有一定的复杂性.这些复杂性可以被分类为: 环境:大量的设备,各种移动 OSs ,适应频繁 OSs 变化. 设备:触 ...

  2. 移动app测试的多样性_web测试与移动App测试的常见测试要点

    手机APP项目测试点(内容)总结 对于手机项目(应用软件),主要是进行系统测试. 而针对手机应用软件的系统测试,我们通常从如下几个角度开展测试工作: 功能模块测试 交叉事件测试 性能测试 安全测试 容 ...

  3. 移动app测试的多样性_做移动APP功能测试,这些因素你得都考虑到~

    对于刚入行的测试新手来说,无论是做手动测试还是自动化测试,前期都避免不了学习前人经验,从而尽可能减少自己的漏测问题.作为一个过来人,今天,我就将自己的移动APP功能测试分享给大家,希望对新手有一定帮助 ...

  4. 移动app测试的多样性_移动可用性测试(四):远程测试

    实际工作中,虽然远程测试用得更少,但它确实能解决一些现场测试无法解决的问题.比如在当地无法找到目标用户时,远程测试相对出差是更为廉价可行的做法.或者当需要大量的样本时(现场测试因为时间空间的限制,只能 ...

  5. 移动app测试的多样性_快速搞定APP移动端自动化测试

    1. 何为数据驱动 什么是参数化?什么又是数据驱动?经常有人会搞不明白他们的关系,浅谈一下个人的理解,先来看两个测试中最常见的场景: 登录:不同的用户名,不同的密码,不同的组合都需要做登录场景的测试, ...

  6. 接口设计文档_app端接口用例设计方法和测试方法(一)

    前言 接口测试作为测试的重要一环,重点关注的是数据层面的输入输出,今天小编介绍一种常用的接口测试用例设计方法和测试方法,希望对大家有所帮助,由于内容较多,分三次给大家讲解,今天先介绍"请求层 ...

  7. 软件测试知识点和面试题--app测试篇

    软件测试知识点和面试题--接口测试篇 软件测试知识点和面试题--性能测试篇 软件测试知识点和面试题--手工测试篇(功能测试) APP发布流程 内部发布平台蒲公英.Testlink等发布步骤1.开发打包 ...

  8. 软件测试的基本理论-移动端app测试-6

    软件测试的基本理论-移动端app测试-6 一.移动app测试 1. 移动app测试概述 2.移动app测试要点 3, UI测试要点 1,界面布局 2,图形测试 3,内容测试 4, 功能测试 1,切换测 ...

  9. 互联网寒潮,特送来 “App测试面试题“ 暖汤一份

    专人专事,各自其责才能把控质量:如果做不到质量内建就踏踏实实专人专事. 正文开始 相关系列优选文章: 干了这么久的APP测试,能回答上APP测试面试问题吗? 一 web测试和app测试的相同点和区别? ...

最新文章

  1. 文档自动摘要及案例实现
  2. VS2015下使用websocketpp和asio构建websock服务器
  3. 全球及中国绿色建筑产业规模现状与未来走势分析报告2022版
  4. 阶跃函数和冲击函数相关性质及傅立叶变换求取方法
  5. Android中Activity和task,活动亲和力,启动模式,活动状态以及生命周期,激活钝化
  6. linux下面使用飞书个人版预览doc
  7. 游戏服务器出现问题怎么维护权益,游戏服务器出问题怎么解决
  8. B端产品设计——批量导入
  9. 区分IE6,IE7,firefox三种浏览器的CSS HACK
  10. 关于hive中的reduce个数的设置。
  11. [考试反思]0813NOIP模拟测试20
  12. android返回按钮实现,Android实现返回键操作思路
  13. 智慧≥智能+应用 2016智能交通展的科达不等式
  14. 2022华为机试真题 C++ 实现【最大股票收益】
  15. 2022年编程语言排名,官方数据来了,让人大开眼界
  16. 百度地图、高德地图的数据下载
  17. android倒计时动画特效,Android实现答题倒计时效果
  18. forcast iframe 及 四款播放器
  19. 如何用WGDI进行共线性分析(一点五)
  20. 端对端加密通讯协议Signal protocol 学习(转)

热门文章

  1. 每日英语:Delayed Development: 20-Somethings Blame The Brain
  2. Lisp 的单行注释和多行注释
  3. MS CRM 2011插件调试工具
  4. HDU 1495 非常可乐
  5. 最新图解 FileZilla Server + FlashFXP 快速傻瓜式搭建FTP服务
  6. 科大讯飞智慧医疗再出重磅,“智医助理”机器人顺利通过临床执业医师综合笔试...
  7. WPF的Clipboard.SetText()有问题
  8. 女司机撞上劳斯莱斯不用赔,多亏她车牌上的一个字救了她
  9. Apache Kylin权威指南1.3 Apache Kylin的工作原理
  10. CentOS7 网络安装流程