发动态

没有新消息

更多内容

娜提雅维达
#泛微软件面试经验#【PHP工程师面试问题及答案解析】 首先是简单的自我介绍,然后根据简历问了一些技术和项目细节,接着问一些常规php的基础知识问题,数据库优化、MySQL等。 附上面试问题及我的回答: 问:session可以在cokaie关闭后正常使用吗? 答:可以,因为Session储存于服务器端(默认以文件方式存储Session),根据客户端提供的Session ID来取得变量的值,Session ID可以使用客户端的Cookie或者Http1.1协议的Query_String(就是访问的URL的“?”后面的部分)来传送给服务器,然后服务器读取Session的目录。

2026阅读

7赞

评论

0 条评论

暂无评论,快来写下您的评论

推荐阅读

软件测试面试题 Cookie和Session是什么意思,有什么区别? Session是由应用服务器维持的一个服务器端的存储空间,用户在连接服务器时,会由服务器生成一个唯一的SessionID,用该SessionID为标识符来存取服务器端的Session存储空间。而SessionID这一数据则是保存到客户端,用Cookie保存的,用户提交页面时,会将这一SessionID提交到服务器端,来存取Session数据,这一过程,是不用开发人员干预的。所以一旦客户端禁用Cookie,那么Session也会失效。 服务器也可以通过URL重写的方式来传递SessionID的值,因此不是完全依赖Cookie。如果客户端Cookie禁用,则服务器可以自动通过重写URL的方式来保存Session的值,并且这个过程对程序员透明。 可以试一下,即使不会写Cookie,使用request.getCookies();取出的Cookie数组的长度也是1,而这个Cookie的名字就是JSESSIONID,还有一个很长的二进制的字符串,是SessionID的值。 Cookie是客户端的存储空间,由浏览器来维持。

138阅读
6赞
0评论

Cookie的作用是什么?和Session有什么区别? Cookie和Session都是用来跟踪浏览器用户身份的会话方式,但是两者的应用场景不太一样。 Cookie一般通过客户端用来保存用户信息 Session的主要作用就是通过服务端记录用户的状态

422阅读
20赞
1评论

#人民网面试经验#【php工程师面试+笔试总结】 我参加的是人民网的php工程师的岗位,分为笔试和面试两个部分,给大家分享一下流程: 第一步是笔试:到公司之后需要先填写个人资料,填写完之后发一份笔试题,内容都是与php工程师相关的问题,具体我记录了几个:数据库优化、数据库增删改查sql语句、算法问题、数组问题等。 第二步是面试:和其他公司面试一样,首先要做个自我介绍,大概用了3到5分钟的时间,随后面试官问了几个问题: 1、是否用过PHP框架? 2、ThinkPHP框架的使用方法是什么? 3、怎样实现一个PHP框架? 4、Mysql分组怎么查找? 5、之前是否有接触过RBAC? 6、shell脚本怎么使用? 7、cookie和session的区别是什么? 8、个人优势和个人优缺点是什么? 9、对个人未来发展的规划是什么?

1801阅读
0赞
0评论

#求职日记#cookie:存储在客户端,容易造成欺骗,只支持字符串数据,存活时间设置较长。 session:存储在服务器,比cookies更安全,存储任一类型,存活时间相对较短。 token:是多用户处理认证的最佳方式,无状态,可扩展,可跨程序调用,安全。

165阅读
3赞
0评论

#布谷鸟科技面试经验#【PHP笔试+面试问题及回答】 一共分为笔试+面试两轮,笔试和面试的题目分别如下: 笔试:目录遍历、冒泡排序、正则、数据库表设计和优化、储存过程、触发器,如何理解类的静态变量? 面试问题:从请求到响应过程的具体过程,请详细描述一下 回答:输入URL后开始DNS解析,先检查浏览器缓存,若无则检查操作系统的host文件,若无再请求DNS系统解析。再请求nginx服务器,判断请求资源是静态则直接返回,若为动态,则发送给相应的解析程序,然后把解析后的脚本返回给nginx,由nginx一并返回客户端。

633阅读
3赞
0评论

Selenium Grid作用是什么?Selenium Grid的使用过程? 问题 Selenium Grid作用是什么? Selenium Grid 的使用过程? 考察点 面试官想了解: Selenium Grid是否使用过 Selenium Grid对应组件流转 技术点 涉及的技术点: Selenium Grid 回答 SeleniumGrid 作用 Selenium Grid 是 Selenium 的三大组件之一,它可以在多台机器上并行运行测试,集中管理不同的浏览器版本和浏览器配置。通过将客户端命令发送到远程浏览器的实例, Selenium Grid 允许在远程计算机 (虚拟或真实) 上执行 WebDriver 脚本. 它提供一种在多台计算机上并行运行测试的简便方法。 使用场景 场景一: 实现分布式执行测试,提高执行效率 比如:我们有 1000 条用例执行,如果在本机执行,一条用例耗时 100 秒,执行完成则需要大约 27 小时 1000*100/60/60=27个小时。如果让这些用例并发执行,比如分配 6 台计算机,每个计算机执行 1000/6 大约 166 条用例,那时间大约节省了 6 倍,原来需要大约 27 个小时,现在可能只需要 4.5 个小时左右就基本完成了, 分布式并发执行可以让我们用例的执行总时长指数级的缩小,从而效率得到很大的提升。 场景二: 解决浏览器兼容性问题 比如还是 1000 条用例,需要分别在 Chrome、Firefox、Edge、Safari 这些浏览器上都执行一遍,保证每个浏览器上都能正常执行,测试浏览器的兼容性。这时也可以使用 Selenium Grid,通过 Selenium Grid 将这些请求分发到不同的系统、不同浏览器中执行。这些浏览器可以分别布署在不同的计算机中比如可以布署在 Linux 、Windows、Mac 上都可以,作为它的 Node 结点,从而解决兼容性测试的问题 执行过程 1886×1218 99.5 KB Client是本地IDEA要执行的测试用例。 1.Client的测试用例通过HTTP协议发送请求给路由Router。 Router是 Selenium Grid 内的一个处理器/组件,也是Selenium Grid的入口。 2.Router接受请求并立即进行分发。 创建一个新的Session会话同时分配对应的Node节点机器。 Router作用:把请求从路由Router发送到Node的机器节点。 3.路由Router进行请求分发。 新请求 接收是一个新请求时,路由Router此时不知往哪个Node节点上发送该请求。 3.1.1 新请求时,路由Router将请求发送给分发器Distributor。 分发器 Distributor 读取Client脚本的DesiredCapability属性,从中获取用例的 操作系统Platform 及 浏览器browserName 属性。 3.1.2 Distributor根据属性值把请求发送给符合的 Node节点 ,同时 创建session会话对象 Session Map。 Session会话创建时会产生一个Session ID,分发器 Distributor会把Session ID与对应的Node节点的URI地址一一对应存储在 Session Map 中。 3.1.3 Session Map会把Session ID与对应的Node发送给Router路由,Router路由再发送给客户端Client。 会话的职责就是创建一个简单的映射,其中包含正在执行的测试用例的Session会话ID及其执行的物理机器Node的地址。 已存在的请求 接收是一个已存在的请求时,路由Router直接从Session Map中根据对应的Session ID查找到Node节点的URI地址,把用例请求发送到对应节点上直接运行即可。 3.2.1 已存在的请求时,路由Router将请求根据Session Map中对应关系直接把请求发送给Node节点。 以上是SeleniumGrid的各个组件之间的执行过程。

13阅读
6赞
0评论

软件测试 | Selenium Grid 作用是什么?Selenium Grid的使用过程? 问题 Selenium Grid作用是什么? Selenium Grid 的使用过程? 考察点 面试官想了解: Selenium Grid是否使用过 Selenium Grid对应组件流转 技术点 涉及的技术点: Selenium Grid 回答 SeleniumGrid 作用 Selenium Grid 是 Selenium 的三大组件之一,它可以在多台机器上并行运行测试,集中管理不同的浏览器版本和浏览器配置。通过将客户端命令发送到远程浏览器的实例, Selenium Grid 允许在远程计算机 (虚拟或真实) 上执行 WebDriver 脚本. 它提供一种在多台计算机上并行运行测试的简便方法。 使用场景 场景一: 实现分布式执行测试,提高执行效率 比如:我们有 1000 条用例执行,如果在本机执行,一条用例耗时 100 秒,执行完成则需要大约 27 小时 1000*100/60/60=27个小时。如果让这些用例并发执行,比如分配 6 台计算机,每个计算机执行 1000/6 大约 166 条用例,那时间大约节省了 6 倍,原来需要大约 27 个小时,现在可能只需要 4.5 个小时左右就基本完成了, 分布式并发执行可以让我们用例的执行总时长指数级的缩小,从而效率得到很大的提升。 场景二: 解决浏览器兼容性问题 比如还是 1000 条用例,需要分别在 Chrome、Firefox、Edge、Safari 这些浏览器上都执行一遍,保证每个浏览器上都能正常执行,测试浏览器的兼容性。这时也可以使用 Selenium Grid,通过 Selenium Grid 将这些请求分发到不同的系统、不同浏览器中执行。这些浏览器可以分别布署在不同的计算机中比如可以布署在 Linux 、Windows、Mac 上都可以,作为它的 Node 结点,从而解决兼容性测试的问题 执行过程 1886×1218 99.5 KB Client是本地IDEA要执行的测试用例。 1.Client的测试用例通过HTTP协议发送请求给路由Router。 Router是 Selenium Grid 内的一个处理器/组件,也是Selenium Grid的入口。 2.Router接受请求并立即进行分发。 创建一个新的Session会话同时分配对应的Node节点机器。 Router作用:把请求从路由Router发送到Node的机器节点。 3.路由Router进行请求分发。 新请求 接收是一个新请求时,路由Router此时不知往哪个Node节点上发送该请求。 3.1.1 新请求时,路由Router将请求发送给分发器Distributor。 分发器 Distributor 读取Client脚本的DesiredCapability属性,从中获取用例的 操作系统Platform 及 浏览器browserName 属性。 3.1.2 Distributor根据属性值把请求发送给符合的 Node节点 ,同时 创建session会话对象 Session Map。 Session会话创建时会产生一个Session ID,分发器 Distributor会把Session ID与对应的Node节点的URI地址一一对应存储在 Session Map 中。 3.1.3 Session Map会把Session ID与对应的Node发送给Router路由,Router路由再发送给客户端Client。 会话的职责就是创建一个简单的映射,其中包含正在执行的测试用例的Session会话ID及其执行的物理机器Node的地址。 已存在的请求 接收是一个已存在的请求时,路由Router直接从Session Map中根据对应的Session ID查找到Node节点的URI地址,把用例请求发送到对应节点上直接运行即可。 3.2.1 已存在的请求时,路由Router将请求根据Session Map中对应关系直接把请求发送给Node节点。 以上是SeleniumGrid的各个组件之间的执行过程。

231阅读
4赞
0评论