苹果手机下载的app出现网络异常403?

手机作为我们如今随身携带的设备,在科技的发展下现在的功能也是越来越强大。随着新技术的更迭,不少厂商为吸引消费者提供了很多新功能,例如无线反向充电,潜望式长焦镜头,多镜头模组,隔空手势、内存扩展等等。很多安卓手机上还一直保留着自带的音乐软件,浏览器,收音机等功能。

但是对于很多用户来说,目前所更新的新功能内有很多功能是基本上不怎么使用的,甚至很多功能是完全不会打开的。现在就跟着小编一起来盘点一下那些手机上最没用的功能吧。

我们都知道手机内存容量和大型游戏应用运行的稳定度,还有后台多任务数量留存数量密切相关,越大的运行内存空间理论上可以运行多任务,并且在玩大型游戏时会更流畅。很多手机的运行内存因为不够大, 而开发出了内存扩展这个功能。但孰知,其实这个功能不仅没什么用,还会影响到手机存储的寿命。

开启内存扩展其实也就是将存储内存的一部分拿来充当运行内存(虚拟内存),我们可以把长时间不用的应用放到存储空间里从而节省真正的内存空间。虽然能稍微提升一点后台留存率和连续打开应用时的速度,但因为存储的速度远低于内存速度,在系统频繁运行或快速切换应用时反而会出现严重延时卡顿,甚至还会影响存储寿命。

如果是奔着能在后台多保留应用而开内存扩展的用户,虽然在开启的时候的确可以多保留一点应用,但是长时间使用的应用也并没有那么多。长时间需要在后台保活的应用正常都是控制在5个以内,这个时候不开内存扩展也是完全足够的。在应用使用完后一般都会直接关闭,这个时候手机后台剩余应用量将会更少。

在开了内存扩展后,还会加大手机的运行压力,增加主板的能耗,甚至会出现烧主板的情况。总体上来说手机的使用寿命会大幅降低,得不偿失。因此内存扩展也被称为很鸡肋、非常没用的一个功能。

“下拉/左滑搜索”这个功能相信大家更加常见,也是最困扰用户的手机问题之一。而苹果用户更是很烦恼,当我们在桌面布局操作时,手指一不小心多滑了一下或者下拉则很有可能就划到手机的“搜索栏”。

虽然每个厂商都表示此搜索栏是为了用户可以更加方便的去搜索相关应用以及信息,但很多用户表示唯一用过的一次就是新手机刚开机时候,想找某个系统App找不到,之后就也在没用过了。因为在熟悉了手机后,相关App都是用户自己布局,知道会放置在哪个文件夹。

特别是在目前“真全面屏”手机的趋势下,用户会更愿意去将更多时间用在对应用的布局上,而不是每次使用手机都会出现这个“搜索栏”影响用户的操作以及视感。当有一些手机厂商推出了可以关闭下拉/左滑的搜索栏时,用户们基本都是接二连三非常快速地关闭,还没推出关闭此功能的手机,用户也表示用起来非常不方便。

自手机有了无线充电的技术之后,各大厂商继续“往奇奇怪怪的方向发展”。如今还有着无线反向充电。无线反向充电指的是手机等原本只能接收无线充电电磁波的设备,现在可以通过无线线圈发出电磁波给其他支持无线充电的设备充电。不过其充电的功率较小只能充当应急使用。

也就说当我们有一部6000mAh的大电池手机和一部4800mAh电池的手机,在两部手机都支持无线反向充电时,后者没电了,那么可以用前者当作一部充电宝来给后者及时补充些许电量。

但是经过多家实测,我们发现目前市面上大多数支持无线反向充电的手机实际转化效率只有2/30%,有一些甚至更低。被充电手机拿苹果来说,被充电的速度非常慢,耗时四个多小时才充了百分之30左右的点。

并且小伙伴们在充手机时也会发现,首先充电这个位置比较奇葩,要斜着或者横着放手机;其次就是充电实在是龟速,并且还不能挪动,相当于被迫戒网瘾。

其实如果单从实用性上来说的话,无线反向充电功能的实用性非常低,过低的转化效率还会造成极大的电力浪费。而且如果在手机使用过程中再给别的手机充电,自身耗电量加快的同时,对于电池的负担压力也过高,发烫发热也特别严重。这直接造成了电池寿命的减少,反向充电对于充电的手机的代价有损失。

其实手机无线反向充电功能或许在某个特定环境下是能够救急的,但在功能上,无线反向充电还没有突破技术的束缚,无论是充电效率还是手机原本电池容量的限制,都注定让这个功能成为“手机最没用的功能”之一。

手机自带视频、音乐、浏览器

在安卓智能手机逐渐稳固市场后,众多手机厂商就会让自己的手机出厂后“拖家带口”,自家的视频、音乐以及系统的浏览器都被手机“带”出来。这些自带的视频、音乐软件,自带的浏览器等,可能会给很多用户一个错觉,既然都有的用,那为什么还要下载其他第三方软件呢?其实,除了苹果的Apple Music有用外,安卓机自带的这些都可以说没什么大用处。

首先来看手机厂商自带的视频、音乐软件。手机会自带视频、音乐软件第一原因是因为相关的厂商可以通过这些App从而增强与用户的沟通互动性,建立自己的生态圈。其次,通过相关的视频以及音乐视频,厂商可以在其中加插许多广告以此来宣传相对应的产品。

并且手机厂商自带的视频、音乐软件会有很多限制,很多歌,很多视频都没有版权,只能视听一些最基本的音频视频,一些大火的视频、新歌,自带的App中也并没有更新。不同的是,网易云音乐、腾讯视频等第三方软件,完美解决了更新慢,没有版权等问题。在这些第三方软件上,可以全方位欣赏、体验到最新的视频音频,用户感受也大大提高。而在第三方应用上充会员,不仅没有了相应手机的广告,更没有了视频中的广告,何乐而不为呢?

其次就是手机自带浏览器。手机内置的浏览器其实是安卓系统内部组件之一,也就是WebView控件,这个控件基于webkit引擎,其实现的作用就是显示web页面。现在很多手机品牌内置浏览器基本上就是在这个组件上进行简单修改调整,然后套层皮就成浏览器。

在手机厂商坚决的认为系统自带的App不能删除这样的大背景下,第三方浏览器有着很大的发展,手机厂商的浏览器就失去了很大的竞争力。另外一方面是受到自媒体或者短视频的冲击,使得用户的注意力转移了。每天所看到的资讯不再是从浏览器获得。

并且目前有相当一部分人使用浏览器不只是为了利用搜索引擎去简单地搜索东西,而是会使用浏览器进行阅读。相比较手机默认浏览器,第三方浏览器App有更为优质的用户体验。这些App会将浏览器作为一款优秀的产品去经营,因此对于用户来讲,这些第三方App更加适合。

网络发展也迅速,用户想要搜索一些信息或者事件时候浏览器不再是首选。整个市场的环境是对浏览器的依赖程度下降,自然对手机自带的浏览器更是有很大影响。另外手机的自带浏览器不仅广告多,而且页面比较杂乱,一般会选择第三方浏览器,页面足够简洁。

当手机内置浏览器不符合自身需求时,很多人自然就会去选择第三方的浏览器,比如爱看标题党的就去UC,电脑上习惯了Chrome浏览器或者夸克浏览器的用户很大可能会将这种习惯延伸到手机端,另外还有部分用户则可能是被其他软件诱导安装的第三方浏览器,比如QQ浏览器等。

主要是由于个人习惯、使用资源以及使用相关手机功能的方便程度,对于手机上很多自带的功能,大部分人都表示,这些功能真的已经过时,在许多方面都跟不上当前时代。

对于一中老年人来说,手机一些自带的功能还有可能会影响到他们的日常习惯,用户想删除,却有很多App功能被告知无法删除,给他们的日常生活带来很多不必要的麻烦,还会占据手机许多内存,因此这也是许多手机厂商最应该做的改变。希望可以通过优化系统,精简内存,让这些自带功能全部隐藏。或者厂商也可以提供一个选择,让用户根据自身习惯选择是否卸载,这样在平衡利益与用户的使用体验上也更加的人性化一些。

自我介绍: 面试官您好 我叫,有三年多的工作经验,第一家是担任测试工程师,主要是对区块链项目app、pc端测试。目前就职于,负责SaaS这边安徽省的项目,主要是对web端不同地灾项目进行测试。

介绍下你负责的公司项目?(参考:)
负责的项目:我们公司主要是做政府项目,我是负责SaaS这边的交付型项目,安徽省这边的项目都是我测试,目前我负责的地灾项目主要是通过结合专业的地质灾害监测设备和数据分析技术,实现地质灾害的监测及预警功 能。通过对监测点的监测数据远程采集,实现了监测数据实时反馈到监控中心,监控中心服务器通过分析数 据,将预警信息发送到相关机构及管理人员处,进行紧急措施保护及通知受威胁对象快速撤离,最大程度的 减少损失生成。我负责全平台的一个测试,模块包括首页、风险预警、短临预警、网格化管理、巡查管理、专业监测、系统管理。

简单来说 to b 是企业客户,to c是个人客户,to G是政府客户

1、页面检查–加模块名
检查页面 1、页面标题 2、查询项 3、列表字段
A-查询 B查询 C查询 组合查询 全名称项查询 分页后查询
3、页面各个按钮功能检查
4、数据检查(某个字段 取值:数据库哪个表,哪个字段)
5、逻辑检查(前后关联数据的变更)
第一轮是全覆盖测试 (第一天到最后一天)
第二轮 按业务区分 一般银行金融类都需要全覆盖测试

页面布局、分页后风格是否统一
1、列表无数据时,分页按钮置灰或者不显示
2、当前页为首页时,上一页按钮置灰
3、当前页为末页时,下一页按钮置灰
4、总页数和当前页数显示正确
5、翻页后,列表数据是否正常展示
6、翻页后查询,列表数据是否正常展示
7、翻页后点击查询,是否跳转到第一页
8、有页数输入框的,输入正确的页数是否正确跳转。输入异常的系统的异常提示

设计如此、代码错误、界面优化、性能问题、安装部署、安全相关

描述下你上家公司的测试流程?(参考:)

首先从质量模型出发,需求评审的时候关注这些:
性能:后端响应速度,单个,多并发。前端:页面渲染时间
兼容:web:浏览器;app端:ios和安卓那些机型
安全:xss攻击;SQL注入;单个接口容许单个IP可以被请求次数;接口秘钥;token
易用性:可辨识度、易学性、易操作性、 用户差错防御性、用户界面舒适性、易访问性、依从性
可维护:模块化、可重用性、易分析性、易修改性、依从性
可移植:适应性、易安装性、易替换性、依从性
可靠性:成熟性、可用性、容错性、易恢复性
1、目前的问题:开发同学没有带动起来,评审的时候开发专注不够
2、用例目前的方式,采用读测试用例的方式,后期测试中应该会出现分歧,交互上面
1、改变测试用例评审的方式
2、先讲一下计划:测试人员、测试几轮、遇到问题的解决方案,例如无法定位的问题给前端
3、主讲异常的测试用例,评审时会对照UI设计稿去测试
6、每个功能点结束的时候,问一下开发同学
排期我一般是从功能、性能、自动化这几个点估的,也是基于质量模型来的。
首先进行需求分解,把功能点拆分好,功能点难度是否大,时间需要多少。功能的估好差不多的时间就可以估性能了,这一部分需要和产品确认好,如果没有性能要求就不需要估这部分时间,自动化的时间我们一般是自己维护自己的项目脚本,假如新增有20个接口,那自己就把新增的接口加到自动化里面去。
1、优先把主要流程测试通过,把大的问题优先提出

为什么需要自动化测试?

自动化测试可以代替大量的手工机械重复性操作,把时间花在更全面的用例设计和新功能的测试上;
用于回归测试,适合敏捷开发过程 ;
代替人工无法完成的关键业务7x24小时持续运行的系统稳定性测试和高并发场景的压力测试等;
bug发现数量不如人工多;
需要具备一定的编程能力。
什么样的项目适合自动化测试?
需求稳定,不会频繁变更
研发和测试周期长,需要频繁执行回归测试
需要在多种平台上重复运行相同测试的场景
某些测试项目通过手工测试无法实现,或者手工成本太高
被测软件的开发较为规范,能够保证系统的可测试行

你是怎么做需求分析的?(参考:)
1、通过分析需求描述中的输入、输出、处理、限制、约束等,给出对应的验证内容(功能测试)
2、通过分析各个功能模块之间的业务顺序,和各个功能模块之间传递的信息和数据,对存在功能交互的功能项,给出对应的验证内容(功能交互测试)
3、考虑到需求的完整性,要充分覆盖软件需求的各种特征,包含隐性需求的验证,注册账号的唯一性验证(界面、易用性、兼容性、安全性、性能压力)

给你一个应用,请简述你会从哪些方面去测试?(参考:功能,性能,安全,可靠,兼容,可维护等)选一个让对方详细说说如何设计
首先问一下有没有产品需求规格说明书,如果没有的话就参考市面上同类型产品,
ui界面方面:比如颜色搭配是否合理(字体颜色和背景颜色);界面所占比例是否合适;直观是否舒适;信息内容是否准确;用户浏览时是否感觉舒适,整体风格等等。
功能方面:各个功能按钮是否可用,表单测试、导航测试、图形测试、内容测试。
性能方面:web端的性能测试应该注意的指标有:用户操作的响应时间、系统的吞吐量(TPS)、系统的硬件资源情况(CPU、硬盘、磁盘)、网络资源占用情况等。
浏览器兼容:IE,火狐,谷歌 可以设计一个兼容矩阵来测试不同厂商不同游览器版本的兼容
安全测试:1、用户名和密码的有效无效性,注意大小写敏感,次数限制,是否可以不登录而浏览某些页面等2、是否有超时限制3、测试用户操作时相关信息是否写入了日志文件、是否可追踪4、测试加密是否正确,加密前后的信息完整性,正确性5、没有经过授权,是否可以在服务器端或者前端放置和编辑脚本的问题
可移植性:从一个环境移到另一个环境
可维护性:软件易于维护
可靠性:保证和验证软件的可靠性要求
易用性:易理解、易操作、页面是否直观、使用起来是否舒适、功能是否实用等
在软件开发的测试阶段,测试的主要目的是通过运行程序来发现程序中存在的缺陷、错误。而在产品交付、验收阶段,测试主要是验证软件产品是否达到用户的要求。

1.输入正确的用户名和密码,点击提交按钮,验证是否能正确登录。

2.输入错误的用户名或者密码, 验证登录会失败,并且提示相应的错误信息。

3.登录成功后能否能跳转到正确的页面

4.用户名和密码,如果太短或者太长,应该怎么处理

5.用户名和密码,中有特殊字符,和其他非英文的情况

6.记住用户名的功能及已输入的用户名和密码是否会自动清除

7.登陆失败后,不能记录密码的功能

8.用户名和密码前后有空格的处理

9.密码是否以星号显示

1.布局是否合理,2个testbox 和一个按钮是否对齐

2.testbox和按钮的长度,高度是否复合要求

1.打开登录页面,需要几秒

2.输入正确的用户名和密码后,登录成功跳转到新页面,不超过5秒

1.登录成功后生成的Cookie,是否是httponly (否则容易被脚本盗取)

2.用户名和密码是否通过加密的方式,发送给Web服务器

3.用户名和密码的验证,应该是用服务器端验证, 而不能单单是在客户端用javascript验证

4.用户名和密码的输入框,应该屏蔽SQL 注入攻击

5.用户名和密码的输入框,应该禁止输入脚本 (防止XSS攻击)

6.错误登陆的次数限制(防止暴力破解)
7. 考虑是否支持多用户在同一机器上登录;
8. 考虑用户在多台机器上登录

1. 是否可以全用键盘操作,是否有快捷键

2.输入用户名,密码后按回车,是否可以登陆

  1. 牵扯到验证码的,还要考虑文字是否扭曲过度导致辨认难度大,考虑颜色(色盲使用者),刷新或换一个按钮是否好用

2.不同的平台是否能正常工作,比如Windows, Mac

你平时设计测试用例的时候用了哪些方法来设计?(参考:等价类,边界值,因果图,判定表,错误推测,正交表)选择一个让对方详细解释下使用场景
怎样的测试用例算是优秀的用例?(参考:正常场景,异常场景)
如何测试一个应用的登录场景?(参考:)

需求分析-测试用例设计-测试计划-执行测试-质量评估

bs即浏览器/服务器架构
cs即客户端/服务器架构

C/S客户端的计算机电脑配置要求较高。 B/S浏览器的计算机电脑配置要求较低。 C/S每一个客户端都必须安装和配置专用的软件(称为胖客户端)。 B/S最大的优点就是不用安装任 专门的软件,只要有一个浏览器就可以(称为瘦客户端)。 C/S每一个客户端都要进行升级和维护。 B/S客户端不必安装及维护。 C/S一般面向相对固定的用户群,它可以对权限进行多层次校验,提供了更安全的存取模式,对信息安全的控制能力很强。 一般高度机密的信息系统应采用C/S结构。 app:手机安装APP应用,手指点击访问 web:电脑安装浏览器,输入地址访问 服务器:web服务器+应用服务器+数据库; 早起的安卓市场上,基本上所有的安卓APP都是原版 比如现在的:微信、手机QQ、钉钉、手机银行APP、等等 原生的很安全,但是很丑,但对于服务器的要求不是很高 服务器:应用服务器+数据库;例:tomcat+mysql 混版的一般都非常好看,但是对于服务器的要求就高; 比如现在的:淘宝、美团、京东、爱奇艺视频 服务器:web服务器+应用服务器+数据库

小程序和H5、app、公众号、有什么区别?

一、小程序和app的不同之处
  app需要适配市场上很多款的主流手机,开发成本大。
  小程序一次开发就可以自动适配所有手机。
  一款完善的双平台app平均的开发周期约3个月;
  小程序平均开发周期约2周内,仅为app的六分之一。
  app需要向十几个应用商店提交审核,且每个应用商店要求的资料都不一样,非常繁琐;小程序只需要提交到公众平台审核。
  app从应用商店里下载。
  小程序通过微信(扫描二维码、搜索)直接获得。
  app安装在手机内存中,就像自己买了辆车放在车库里随时开。
  小程序不需要安装,召之即来用完拜拜。
  app会一直存在手机中占用空间,太多的app可能会导致内存不足。
  小程序因为不需要安装,占用内存空间忽略不计。
  app会隔三差五给用户推送广告,太多未读提示会逼死强迫症。
  小程序不允许主动给用户发送广告,仅能回复模版消息。
  app开发完成后推广还需要大量烧钱,并且需要用户主动下载十几M的程序包,在没有Wi-Fi的情况下推广艰难;
  小程序可以通过二维码、微信搜索等方式直接获得,推广费用几乎零成本,无难度。
  二、小程序和公众号的不同之处
  1、企业号:拥有较强的组织架构,和隐蔽性,适用于制作内部企业CRM系统。
  2、订阅号:以内容为主体,适合经常给用户群发消息的产品。
  3、服务号:以提供服务为主,比较适合做低频次(用的次数较少)使用。
  4、小程序:放弃了传统公众号的关注、群发、分享到朋友圈功能,而在设计规范、产品体验、运营规范、都有自己的一套审核标准,旨在培养产品本身。小程序可以分享小程序码到朋友圈,发给好友和群。
  三、小程序和H5的区别
  H5运行环境是浏览器,主要是浏览器页面。
  微信小程序运行环境是属于计算机程序,配合自己定义的开发语言标准,大幅提升了小程序的流畅度和性能。
  开发一个H5,需要从开发工具、前端框架、模块管理工具、任务管理工具,还有UI库选择、接口调用工具、浏览器兼容性等等,都需要考虑周到。尽管大多数开发者面对这些工具时,都有了自己的配置模板,但成本依然不低吧!
  微信提供了统一的开发工具,并且规范了开发标准,所以,作为一个开发者,你只需要专注写代码就好了。而且,你可以随意调用微信开发里的API,不用担心浏览器的兼容性,不用担心莫名其妙的bug……所以,小程序的开发成本比以往的HTML5 开发的web 成本低很多。
  微信能获取到更多的系统权限,如网络通信状态、数据缓存能力等,这些系统级权限都能与微信小程序无缝衔接,这也就是官方宣称的拥有Native App的流畅性能。
  而HTML5 web应用则相对少了很多,这一点恰巧是HTML5 web应用经常被诟病的地方。
  也因此,HTML5的大多数应用被圈定在业务逻辑简单、功能单一的范围上。
  我们在打开一个HTML5页面的时候,实际上就是打开一个web网页,而网页在浏览的时候,需要在浏览器中进行渲染,这个过程叫做加载,无论加载的时间的长短,都会给用户一种「卡」或者「不灵敏」的感觉。
  小程序是微信内的云端应用,通过WebSocket 双向通信(保证无需刷新即时通信)、本地缓存(图片与UI 本地缓存降低与服务器交互延时)以及微信底层技术优化实现了小程序接近原生APP的体验。所以在使用小程序的时候,同等网络条件下几乎不用等待,可以像操作普通app一样流畅。

等价类和边界值的区别?
有效等价类:对程序的有效输入(比如输入框只能输入数字最多11位 就正常输入数字)
无效等价类:不正确的输入值(输入12位数字)
边界值:指输入和输出等价类中那些恰好处于边界、或超过边界、或在边界以下的状态(边界值就是0,1,5,10,11需要枚举多个元素)
等价类和边界值互相补充,等价类作为边界值的前提,边界值是对等价类的补充

1、Fiddler怎么拦截篡改数据
即在fiddler中执行Inspectors->WebForms,修改请求变量参数后执行Run to Completion,服务器返回新的请求结果 (选择该请求-点击检查-点击表单-修改参数值后点击运行到完成
1)命令行设置修改规则,修改请求:urlreplace 旧请求值 新请求值
其中uuid是请求参数,输入命令后回车即可,新的请求设置成功,除非释放请求,否则请求值不变,释放请求命令urlreplace

①fiddler菜单栏->rules->automatic Breakpoints->选择断点方式**(菜单栏选择规则-选择自动断点-选择断点的方式),这种方式下设定的断点会对之后的所有HTTP请求有效。有两个断点位置:
1)before request。也就是发送请求之前,Fiddler代理中转之前,这时可以修改请求的数据。(
之前的请求)
2)after response。也就是服务器响应之后,但是在Fiddler将响应中转给客户端之前。这时可以修改响应的结果。(响应的结果)**

3、Fiddler怎么模拟弱网测试
菜单栏点击规则-自定义规则-找到上下行的参数去修改你想要的一个参数
菜单栏点击规则-Performances-选择第一个模拟调试器速度
再次点击菜单栏点击规则-Performances-选择第一个模拟调试器速度 就是关闭弱网了

4、如何使用Fiddler抓取手机上的数据包?
1、fiddler服务开启,https证书安装好,运行手机远程连接
3、手机和电脑保持同一个网络
4、手机安装证书到根目录
5、手机开启手动代理,输入ip和端口号,fiddler一般是8888
6、然后手机操作,fiddler这边就可以抓取对应的包了
抓包完之后记得关闭代理,不然手机没网,去无线网络里面直接把手动代理关闭就OK了

关于性能测试工具jmeter?

测试计划、线程组、http请求、监听器、断言、聚合报告。

2、一般提取返回值有哪些方式
正则表达式、json提取。

响应断言、JSON断言(只能针对响应结果是applicaton/json格式的请求进行断言)、BeanShell断言

4、你平时常用的内置函数有哪些
__digest:用于加密、__time:时间函数、__Random:取随机数、__RandomString:取在规定范围内的随机字符串、__V函数用户定义变量、用户参数、__setProperty:设置全局变量、_counter:计数器、__groovy:传递脚本并返回结果

5、jmeter怎么做参数化?

1、你们性能测试是怎么做的,它的流程是怎么样的
首先跟产品那边确定需求,然后对需求进行分解,再进行用例设计,针对场景设计脚本,再执行脚本。最后根据结果出具性能测试报告。

2、如何确定系统能够承载的最大用户数?
通过负载测试,不断增加用户数,随着用户数的增加,各项性能指标也会相应产生变化,当出现了性能拐点,比如,当用户数达到某个数量级时,响应时间突然增长,那么这个拐点处对应的用户数就是系统能承载的最大用户数。(做负载测试时一般用jp@gc,通过阶梯式看性能拐点。)

3、性能测试指标有哪些?
平均事务响应时间,90%的事务响应时间,TPS,CPU、内存和IO使用率

4、你们的并发用户数是怎么确定的?
根据需求来确定,比如用户注册数,如果需求没有说明,首先就是梳理需求,然后需求分解,进行模型构建和用例设计,再根据不同的场景设计脚本,然后根据模型构建的操作流程进行基准测试,得到平均响应时间,再加上用户的思考时间,运用公司线程数=业务量*[单次业务消耗时间/(60*并发的时间)]

5、性能测试遇到过哪些问题,是怎么解决的?
性能指标不达标。首先看是不是网络问题,ping一下IP地址,然后再看是不是服务器性能。
1、查看服务器的CPU、内存 、负载等情况,包括应用服务器和数据库服务器
2、查看数据库健康状态,数据库死锁、连接池不释放
3、查看项目日志(查看无报错现象)
4、查看jvm的gc等情况

6、基准测试、压力测试、负载测试有什么区别?
基准测试:测试某个具体业务是否满足系统设计or用户期望的性能指标。如期望登录接口支持500个用户并发登录,同时响应时间不超过需求指,满足则认为基准测试完成。
负载测试:不断的增加线程数,直到达到一定的瓶颈。
压力测试:通过最大负载数,持续压测的时长,以此验证业务的稳定性。

7、服务器中一般要监控哪些数据,如何监控的,怎么从监控数据中发现问题?
基础监控和应用监控。 基础监控包括机器是否死机,cpu,内存,磁盘使用率等;应用监控包括日志监控、端口监控、进程数监控等。

8、假设系统A调用系统B,我把B的接口都mock了,进行性能测试,这样有什么好处和坏处?
好处是去掉的依赖,可以在B没有好之前测试A,并且B的任何改动/错误/失效不会影响我测试A
坏处是真实性能要比测出来的性能差, 性能指标不准确。 因为Mock的服务再真也不能代替真实服务、

9、如果让你来测试扫码支付,你会考虑哪些场景?
卡的类型(一类户:借记卡、信用卡、各个开户行)
二类户:虚拟账户如微信里的零钱账户、支付宝的余额宝、电子账户
二维码的商户类型(微信、支付宝、汇宜、银联)
支付限额(单笔限额、累计限额、日累计、月累计、支付笔数)
退款(退款入口、退款进度、退款结果)
对账:资金流动(我方扣款数额正确,对方收款数额正确)数额及时效
支付结果展示、交易明细
支付接口安全性、接口的性能
异常情况(卡异常、余额不足)
连续扫码支付,每天的扫码支付次数限制及数额限制
像素低端的手机能否扫码成功
兼容性(不同手机厂商自带相机功能实现不一致)
10、请描述下微信朋友圈发小视频的用例设计?

类似于我们平常说的内测
就是在一项产品正式发布之前,选择特定的人群进行试用,以便及时发现和纠正其中的问题。
灰度测试工具:自研的灰度测试工具、第三方工具

AB测试就是web端或者app端,制作两个不同的版本,然后让相同的人群去访问这些版本,收集这些客户的用户体验和业务数据,最后分析、评估出最优的版本,正式采用

**1、请问你是如何做接口测试的?
根据接口文档设计测试用例,执行测试用例,提交bug,跟踪bug,直到关闭bug,然后出具接口测试报告。

2、接口测试如何设计测试用例?
从四个方面来设计用例,功能、业务逻辑、异常、安全。
功能方面:从用户角度看是否实现业务需求,功能是否正常。
业务逻辑方面:接口实现逻辑,业务逻辑覆盖。
异常:参数异常和数据异常。

3、get通过拼接URL进行传递参数,post通过body传递参数。
4、get请求是可以缓存的,post请求不可以缓存。
5、get请求页面后退时,不产生影响。post请求页面后退时,会重新提交请求。
7、get产生一个tcp数据包,post产生两个tcp数据包。

4、接口调不通,怎么去排查?
首先检查ip是否正确,ping本机的ip,检查网络是否通畅。检查端口号是否正确,检查项目是否启动。

能更早的介入测试,能发现前端发现不了的漏洞,与前端相比更为稳定。

500开头是服务器问题
404有可能是前端写错了接口的名字
400可能是前端传入的参数不正确

8、三次握手、四次挥手?
第一次握手,客户端:发送过去不确定对方能不能收到
第二次握手,服务端:对方发送正常,自己也接收正常。然后又发送给客户端,又不知道客户端是否能收到。
第三次握手,客户端:发送正常,接受正常。都正常之后数据就正常传输了。

第一次挥手:客户端:主动断开,向服务端发送一段报文
第二次挥手:服务端:接收到报文,

9、怎么判断前后端bug?
web端:开发者工具看状态码,状态码是500就是后端问题,如果是400开头的,就看传参有无问题,返回有无问题,如果传参有问题就是前端问题,如果返回有问题就是后端问题,还有一些就是凭经验判断,一般涉及到数据的就是后端,前端页面展示就是前端问题。用fiddler抓包也是一样的判断。
app端:APP端的话也是首先查看状态码,然后查看前端传参,后端返回有无问题。后端的问题呢可以利用adb命令连接手机,adb devices 查看手机连接,然后输入命令nox_adb.exe logcat

10、接口测试的用例和功能测试的用例在设计时有什么区别吗?
介入时间:接口测试在集成测试阶段,功能测试在系统测试阶段,接口测试用例的编写在功能测试之前。
依据文档:接口测试根据接口文档,功能测试依据需求文档。
组成:接口用例核心是:请求方式,地址、参数。 功能:步骤、数据。
预期结果:接口的预期结果是开发提前写好的。功能的预期结果要检查页面信息,也要检查后台和数据库。
11、常见的POST提交数据方式有哪些?
12、依赖于第三方数据的接口如何进行测试?
可以利用一些MOCK工具(如:JSON Server、Easy Mock)来模拟第三方的数据返回,最大限度的降低对第三方数据接口的依赖
13、你平常做接口测试的过程中发现过哪些bug?
常规错误,接口没实现,没按约定返回结果,边界值处理出错等。
输入异常值(空值、特殊字符、超过约定长度等),接口抛错,没做封装处理;
输入错误的参数、多输入、少输入参数,接口可能出现的错误;
安全性问题,如明文传输、返回结果含有敏感信息,没对用户身份信息做校验,没做恶意请求拦截等;
性能问题,如接口并发插入多条相同操作,响应时间过长,接口压测出现瓶颈等;
14、当一个接口出现异常时候,你是如何分析异常的?
1.抓包,用fiddler工具抓包,或者浏览器 上f12,app上的话,那就用fiddler设置代理,去看请求报文和返回报文了
2.查看后端日志,xhell连上服务器,查看日志
15、如何从上一个接口获取相关的响应数据传递到下一个接口?
先从上一个接口中的响应数据获取对应的返回值,然后使用正则表达式or使用JSON解析来提取需要获取的值,然后存储在一个变量中,最后在下一个接口中直接引用该变量即可

你们是怎么准备测试数据的?
2、直接在数据库里面插入数据
3、在数据库进程里面创建所有需要执行的sql语句,执行进程

关于接口测试工具postman?

1、postman中有哪些变量可以设置?
本地变量:主要针对单个url请求设置的变量,作用域只是局限在请求范围内。本地变量放置在前置请求脚本(pre-request-script)中
全局变量:全局变量的作用域是所有请求,界面设置(globals里面设置)/脚本设置(pre-requests script 右侧选择global)
环境变量:测试环境,线上环境,预发布环境。environments里面可以添加,执行接口的时候可以选择不同的环境。
数据变量-参数化:是通过导入外部数据文件(json文件或者CSV文件),来获取变量数据
tests:后置请求结果

2、当前接口的请求数据用到上一个接口的响应数据?
设置tests,进行批量操作
在登录接口获得token,并设置token变量,在下一个接口中请求头中引用token。
3、使用postman怎么做参数化?
1、全局变量,在global里面设置,引用的时候用两个大括号。

4、使用postman如何快速切换环境?
设置多个环境,例如测试环境、预生产环境、生产环境,在send的时候选择不同的环境去执行。
5、常见的postman常用函数?
2.未超时,显示发生请求参数(logParams)
5.返回元素是否与预期值一致(assertEqual)

1、平时常用哪些sql语句,能举一些例子吗?

2、使用sql生产10万条测试数据?

3、说下左连接和右连接区别?
左连接只影响右表,右连接只影响左表

1、你常用的命令是什么?在什么情况下会用到这些命令?

pwd 查看当前工作目录
ll 查看当前目录下内容
ls 查看当前目录下所有隐藏的文件

3、如何实时查看log文件?(参考:tail -f)
4、如何查看进程?(参考:ps -aux)
最常用的方法是ps aux,然后再通过管道使用grep命令过滤查找特定的进程,然后再对特定的进程进行操作。

app查看日志:下载模拟器、把apk安装到模拟器里面,在模拟器的目录打开cmd,输入nox_adb.exe logcat。

注意事项:①如果进行了多次抓取,在再次进行抓取前,要记得把手机根目录下的m1.log文件删除掉。
②如果进行了多次抓取,在再次进行抓取前,要记得把计算机D盘目录下的m
1.log文件删除掉。
web端查看日志:xshell连接服务器,输入IP 账号和密码 连接成功后进入相关项目下的报错日志的目录下(路径可以找开发要)tail-f查看最新10条。tail-n-100指定多少行日志。

1、自动化测试用例的覆盖率多少?你是怎么统计你们的覆盖率的?
第一种:一般来说我们自动化没有去考虑覆盖率,先实现优先级高的用例,保证主要的流程不出问题,优先级一般和低的可以放后面实现。
第二种:我们会跟产品确定,哪些功能需要实现自动化,然后对应的模块的正常场景的功能实现,只要保证每个模块都实现了,那么就算覆盖率是100%。
自动化的目的主要是为了监控和回归,有些肉眼可见的异常情况,自动化实现不了。

2、在你的项目里有没有用到PO模式?什么是PO(Page Object)模式?用PO模式有什么好处?
所谓po模式,就是每个页面当成一个对象,给这些页面写一个类,主要就是完成元素定位和业务操作,测试脚本和这些区别开来,需要什么就去这些页面类去调用即可。
好处就是:页面元素发生变化,你只需要去维护页面的类,测试类基本不用管。

3、你的测试数据是怎么准备的?

4、请问你的定位策略是什么?实际使用哪种定位方式比较多?为什么用这种方式,相比于其他定位方式有什么好处?
xpath,一般来说xpath都能定位到,比较方便快捷。
5、当定位策略都失败的时候,你该怎么做?
80%是你元素定位的不对,那么多定位方法,一个不行换另外一个,直接不能定位,先定位父元素,再循环找子元素。一般来说XPATH都能定位到,无非是可阅读性不强。真的全部失效,请求开发帮你改个元素属性好了。
6、请问如何实现用例失败或者异常时候需要截图?

xpath绝对路径:从html根目录一层一层查找
xpath相对路径:基于匹配制度来查找
一般来说用的是相对路径,因为绝对路径一旦某一层的元素更改了就很麻烦,所以用的是相对路径。

9、三种等待的区别 分别在什么时候用?
强制等待:不管浏览器是否加载完,程序都得等待3秒
隐式等待:隐式等待是设置一个最长等待时间,比如10秒,如果在10秒内的任何一个时间点,比如5秒的时候网页加载完成了,那么它就会在5秒的时候执行下一步,否则一直要等到10秒过去才会执行下一步。当然如果说10秒过去,还是没加载出来,那么在获取某个未加载完成的元素时,也是会抛出一个异常的。
这个方法还有一个缺点,是因为JavaScript一般都是放在body的最后进行加载,而这个时候页面上的元素都已经加载完毕,我们却还在等待全部页面加载结束。
当然它也是有优点的,不同于time.sleep,它的优势在于只需要在最开始的时候设置一次,就会对整个driver的周期起作用。
显式等待:就比隐式等待多了一个轮询频率的参数,比如设置了超时时间为10秒,轮询频率为1秒,那么根据轮询的设置,超时/轮询频率,在这10秒内会轮询去查元素

10、xpath所有的定位方式

11、如何对含有验证码的功能进行自动化测试?
验证码:图文验证码、短信验证码、滑动验证码、识物验证码
1、修改代码,直接绕过去,取消前后端代码对验证码的校验**(上述几种都可采用这个方法)**
2、万能验证码。图文验证码和短信验证码可设定一个万能验证码,其他两种行为验证码返回true
3、sleep.time(等待时间),设置等待时间,测试人员手动完成验证码校验。不是完全的自动化,需要人为干预
4、保存验证码(数据库或者文件)。自动化测试可以从数据库读取验证码进行前端验证码元素send_keys来进行验证码的验证。(图文验证码和手机短信验证码)
5、从内存中读取验证码(cookie或者session)。(图文验证码和短信验证码)
6、绕过验证码。用户登陆之后保存用户的token信息,未到期之前用户再次登可直接使用token登录,这种方式绕过了验证码的校验**(上述几种都可采用这个方法)**
7、采用第三方的api接口对验证码进行识别**(语音验证码,图文验证码)**

你们公司接口自动化怎么做的?原理是什么?分别起到了什么作用?
首先导入需要的一些库,拿到Excel的数据,定义token和session,定义host,调用testcases的方法,方法里面又调用了pa的方法,这个方法里面做了一个循环,找出跟caseid一样的测试用例,如果里面的用例有包含$符号的,还需要跑到下面去进行参数化的替换。调用的是静态方法,返回的caseid,定义变量去接收他,然后是单独的一个邮件发送,判断Excel表格里online字段是否为off,如果为off,这条用例就跳过,如果不是,统一调api的方法。
1、写测试用例,放置在Excel中,读取测试用例
2、配置参数、请求接口、返回响应值
3、对比真实响应值和测试用例的预期响应值生成测试报告并发送邮件
case里面放置测试用例,commons里面放置公用的方法比如发送邮件,操作数据库,读写EXCEL,登录等模块,可供调用,datas里面放置测试数据,使用allure生成测试报告,useryaml文件里面放置一成不变的数据,比如各个环境的URL 账号密码 邮件接收人 数据库连接地址、端口号、账号密码,然后conftest.py去调用。
为什么要对requests重新封装?
接口的请求方式有多种,把他们封装成一个类,方便后面使用。

1、列表(list)和元组(tuple)有什么区别?(参考:列表可变,元组不可变)?如果元组里嵌套了列表,列表是否可变?(不可变是指指向不可变,列表里的值是可变的)
2、如何分割一个列表?(参考:切片)
3、字典和列表的查找速度哪个更快?(参考:字典)为什么?(参考:字典,哈希表,时间复杂度列表O(拇指向下),字典O(1))
4、使用python判断一个字符串是否是回文【回文数就是指整数倒过来和原整数相等】(参考:字符串反转后与原字符串对比,通过一个个下标对比)

1、在你们项目里pytest做了哪些工作?分别是如何实现的?

3、如果有两个列表,每个列表里的元素两两组合,怎么用参数化实现?(参考:使用两个@pytest.mark.parametrize分别处理两个列表)

1、在你们项目里unitest做了哪些工作?分别是如何实现的?

2、如何控制用例执行顺序?

在使用monkey做测试的时候发现过什么问题?怎么复现?

message:"疑似sql注入攻击,本次请求已记录日志,请联系公司法务部门取证! message:疑似XSS脚本攻击,本次请求已记录日志,请联系公司法务部门取证!

提交表单时出现 403 错误


嗨,我有一个在 JS 文件完成验证检查后提交的表单

提交表单的代码是(这调用了一个JS脚本)

在 JS 脚本验证表单后,将执行以下行

这一切都很好,直到我现在移到新的网络主机时,当我提交表单时,我收到以下错误

谁能建议我做错了什么或者新主机不喜欢的东西(旧主机简单虚拟主机新一个 IDAQ)

谢谢我提前提供任何帮助



403 错误的最常见原因是该网站禁止目录浏览。检查您是否可以直接访问“dual_process.php”页面,也许更好的响应可以为您提供该服务器的管理员。


关注本站官方公众号:程序员总部,领取三大福利! 福利一:python和前端辅导 福利二:进程序员交流微信群,专属于程序员的圈子 福利三:领取全套零基础视频教程(python,java,前端,php)
关注公众号回复前端,免费领取,关注公众号回复前端充值+你的账号,免费为您充值1000积分

所属网站分类: 技术文章 >


我要回帖

更多关于 苹果手机网络错误了怎么办 的文章

 

随机推荐