自动化测试面试常问问题总结

一.cook和session区别

答:

1、cookie数据存放在客户的浏览器上,session数据存放在服务器上;

2、cookie不是很安全,别人可以分析存放在本地的cookie并进行cookie欺骗;考虑到安全应当使用session

3、session会在一定时间内保存在服务器上,当访问量增加时,会比较占用服务器的性能;考虑到减轻服务器性能方面,应当使用cookie

4、单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie;

5、将登录信息等重要信息存放在cookie,其他信息如果需要保留,可以放在cookie中;

sessionStorage  localStorage  和cookie之间的区别

共同点:都是保存在浏览器端,且同源的

区别:

  1、cookie数据自始至终在同源的http请求中携带,即cookie在浏览器和服务器间来回传递,而sessionStorage和localStorage不会自动把数据发给服务器,仅在本地保存。cookie数据还有路径的概念,可以限制cookie只属于某个路径下。

2、存储大小限制也不同,cookie数据不能超过4K,同时每次http请求都会携带cookie,所以cookie只适合保存很小的数据,如会话标识,sessionStorage和localStorage虽然也有存储大小的限制,但比cookie大得多,可以达到5M或者更大。

3、数据有效期不同,sessionStorage仅在当前浏览器窗口关闭前有效,自然也就不可能持久保持

  localStorage始终有效,窗口或浏览器关闭也一直保存,因此用作持久数据;cookie只在设置的cookie过期时间之前一直有效,即使窗口或浏览器关闭

4、作用域不同,sessionStorage不在不同的浏览器窗口中共享,即使是同一个页面;localStorage在所有同源窗口中都是共享的,cookie也是在所有同源窗口中都是共享的

5、WEB Storage支持事件通知机制,可以将数据更新的通知发送给监听者

6、WEB Storage的api接口使用更方便

二.如何保证UI自动化每次启动都是可以运行的
三.HCP/IP三次握手

1.第一次握手,发送SYN报文,传达信息:“你好,我想建立连接”;

   第二次握手,回传SYN+ACK报文,传达信息:“好的,可以建立链接”;

   第三次握手,回传ACK报文,传到信息:“好的,我知道了,那我们连接”。然后就建立连接了。

2.在发送报文之前各方都要确认可以进行连接。之所以采取三次握手机制,不过是为了信息传输的可靠性,如果其中某个握手失败,这个过程将会重复,来确保其可靠性。

3.如果采取两次握手,相当于第二次握手结束便建立连接,如果发送SYN的一方不想连接了,也不会有反馈,另一方却一直在等待,浪费了时间。当然可以采取4次甚至N次握手,但是有必要吗?建立连接的时间太长,效果也会大打折扣。所以3次只是折中方案,保证了可靠性,又节俭了建立连接的时间。


四.简述pageobject

一.)原理

将页面元素定位和对元素的操作行为封装成一个page类,实现对页面对象和测试用例的分离。

一条测试用例可能需要多个步骤操作元素,将每个步骤单独的封装成一个方法,在执行测试用例的时候调用封装好的操作。

类的属性:元素定位

类的行为:元素的操作

测试用例:调用所需页面中对象的行为组成测试用例。

二.)好处

1.当某一个页面的元素发生变化,只需要修改该页面对象中的代码即可,不需要重复不断的修改测试用例。

2.提高代码重用性,结构更加清晰,维护代码更容易。

3.测试用例发生变化时,只需要修改少数页面对象即可。

 

  • 0
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一些 Azure Repo 面试常问问题及其可能的答案: 1. 什么是 Azure Repo? Azure Repo 是 Azure DevOps 中的一个代码托管服务,可以用来存储和管理代码库。 2. Azure Repo 有哪些主要功能? Azure Repo 的主要功能包括代码托管、版本控制、分支管理、Pull Request、自动化构建和持续集成等。 3. 什么是版本控制?Azure Repo 支持哪些版本控制系统? 版本控制是一种管理代码变更的方式,它可以记录代码的修改历史,并允许多个人同时协作开发。Azure Repo 支持两种主要的版本控制系统:Git 和 Team Foundation Version Control (TFVC)。 4. 如何在 Azure Repo 中创建一个新的代码库? 可以通过 Azure DevOps 中的“New Project”按钮来创建一个新的项目,然后在项目中创建一个新的 Git 或 TFVC 代码库。 5. 如何在 Azure Repo 中创建一个新的分支? 可以在 Azure Repo 中的“Branches”选项卡中创建一个新的分支,也可以在本地 Git 中使用命令行或其他 Git 工具来创建一个新的分支,然后将其推送到 Azure Repo 中。 6. 如何在 Azure Repo 中进行 Pull Request? 可以在 Azure Repo 中的“Pull Requests”选项卡中创建一个新的 Pull Request,然后选择要合并的源分支和目标分支,以及任何必要的审查者或自动化测试。 7. Azure Repo 如何支持自动化构建和持续集成? Azure Repo 可以与 Azure DevOps 中的其他服务集成,例如 Azure Pipelines,以实现自动化构建和持续集成。可以使用 Azure Pipelines 来自动构建、测试和部署代码,以减少人为错误并提高生产力。 以上是一些可能会在 Azure Repo 面试中被问到的问题及其答案。当然,面试可能会有针对性地问一些更具体的问题,建议在面试前对 Azure Repo 的基本概念和使用进行深入了解。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值