你准备英文自我介绍了吗?24校招-忆恒创源测试开发二面(下)

大家好,我是chowley 本篇来记录一下我之前参加「Memblaze」-「测试开发」的面试过程,针对其中一些问题给出了我的答案。

部门:长三角地区

时间:笔试60min+技术面40min

平台:腾讯会议

过程

  1. request+pytest,测试设计

    ○ requests是Python中常用的HTTP库,用于发送HTTP请求和处理响应。

    ○ pytest是Python中常用的测试框架,支持多种类型的测试,如单元测试、集成测试等。

    ○ 使用requests和pytest进行测试设计时,可以按照以下步骤:

    ⅰ. 安装requests和pytest库:pip install requests pytest

    ⅱ. 编写测试用例:使用requests发送HTTP请求,然后使用pytest编写测试函数来验证响应结果。

    ⅲ. 执行测试:使用pytest命令执行测试,并查看测试结果。

  2. 缓存流咋做的?

    ○ 缓存流通常指的是在处理数据流时,使用缓存来提高数据访问速度和效率的技术。

    ○ 实现缓存流的关键在于选择合适的缓存策略和数据结构,以及合理地管理缓存的数据。

    ○ 常见的缓存流实现方式包括使用内存缓存、文件缓存、数据库缓存等,具体实现方式取决于具体场景和需求。

  3. Redis数据结构

    ○ Redis支持多种数据结构,包括字符串(string)、哈希表(hash)、列表(list)、集合(set)、有序集合(sorted set)等。

    ○ 字符串用于存储简单的值,哈希表用于存储键值对集合,列表用于存储有序的元素集合,集合用于存储无序的唯一元素集合,有序集合用于存储有序的唯一元素集合。

    ○ 每种数据结构都有对应的操作命令,可以对数据进行增删改查等操作,具有高效的性能和丰富的功能。

  4. 集合的应用场景

    ○ 集合在Redis中有着广泛的应用场景,如统计计数、数据去重、关联关系存储等。

    ○ 统计计数:可以使用集合来存储某个元素的出现次数,利用集合的唯一性和计数功能来进行统计。

    ○ 数据去重:可以使用集合来存储数据,利用集合的唯一性来实现数据去重功能。

    ○ 关联关系存储:可以使用集合来存储两个元素之间的关联关系,如用户与标签的关联关系等。

  5. redis和mysql读写一致性怎么保证?

    ○ 事务控制:在需要保证一致性的操作中,将Redis和MySQL的操作放在同一个事务中,保证它们要么同时成功,要么同时失败。

    ○ 异步复制:通过在Redis和MySQL之间建立异步复制机制,可以在Redis写入后异步地将数据同步到MySQL,从而实现数据的一致性。

    ○ 监听机制:在Redis和MySQL中分别设置监听器,当其中一个发生变化时,另一个及时做出相应的更新,保持数据的一致性。

  6. 进程之间怎么通信?

    ○ 进程间通信(IPC,Inter-Process Communication)可以通过多种方式实现,包括管道、消息队列、共享内存、信号量等。

    ○ 管道(Pipe):用于在两个进程之间传递数据,其中一个进程将数据写入管道,另一个进程从管道中读取数据。

    ○ 消息队列(Message Queue):用于在进程之间传递消息,发送进程将消息放入队列,接收进程从队列中取出消息。

    ○ 共享内存(Shared Memory):用于让多个进程共享同一块内存区域,可以直接读写共享内存,效率较高。

    ○ 信号量(Semaphore):用于控制多个进程对共享资源的访问,可以实现进程间的同步和互斥。

  7. 线程间如何共享资源?

    ○ 线程间可以通过共享内存的方式共享资源,但需要注意线程安全性问题。

    ○ 在多线程环境下,如果多个线程同时访问和修改同一份资源,可能会导致竞态条件(Race Condition)和数据不一致的问题。

    ○ 为了确保线程间共享资源的安全访问,可以使用互斥锁(Mutex)、条件变量(Condition Variable)、读写锁(Read-Write Lock)等同步机制来保护共享资源。

  8. 对未来发展的思考

  9. 行业的选择

  10. 拿了哪些offer?

总结

难度:3.5/5,问的不难,但是我没有硬件厂商经历,不太契合属于是

面试官专业程度:专业,但是没让我反问

体验打分:一般,非得线下复试,哥们起个大早

好了,以上就是本文的全部内容,如有问题可留言讨论。

本人正在组建校招测试开发方向的交流社区,如果您对测试求职方面感兴趣,欢迎加入了解。

我是chowley,一个专注互联网技术和产品质量保障领域的博主,我们下次再见!

欢迎点赞、评论、收藏,it's important for me.

Searching for QALog.

#软件开发2024笔面经##测试开发##校招##春招##面经#
chowley的校招历程 文章被收录于专栏

记录了chowley在24校招的技术面试全过程

全部评论

相关推荐

客户体验平台你具体负责的是哪些内容,可以详细说明下吗?这个平台的技术架构你了解吗?你测试过程当中一般通过什么方法去测试呢?(最好把整个测试流程先说一遍,然后测试设计和执行说详细一点)说了黑盒测试-》继续追问,还有使用一些什么其他方法吗?在这个过程当中你使用过什么自动化吗?如何去使用的(这里我说的是一个问卷作答)-》继续追问,那么这个问卷是服务什么需求吗?-》继续追问,那么这个自动化问卷有没有考虑过样本的多样性?除了做需求的测试之外,会去做功能的回归吗?这个客户体验平台是什么形式的呢?是一个H5的页面还是什么呢?业界主流的测试自动化方案了解吗?你了解业界的质量保障手段吗?Pytest框架给我们提供了什么?是如何实现接口自动化呢?能说说其中比较重要的一些函数吗?Python的装饰器?数据库的事务了解吗?移动端的基础知识了解吗?安卓,IOS等这些操作系统了解吗?代码题:给一个长度为n的整数数组arr,其中的值先递增然后递减,给定一个整数m,返回m在arr中的最小下标。设计并实现时间复杂度为O(log(n))的解决方案?(二分法)职业规划?什么是测试开发呢?测试和测开的区别?对于质量保证的好的话,我们的测试需要具有做一些测试工具,代码的走查等来做高质量的保障反问:1、作为一个测试需要知道负责测试项目的技术架构吗?答:需要知道,这样可以知道被测系统的上下游依赖是什么,并且也可以通过了解这个技术架构知道哪些是核心模块,然后这个对于走查代码这样的方式去发现问题也比较重要2、对我的建议 #测开面试#
查看14道真题和解析
点赞 评论 收藏
分享
4 10 评论
分享
牛客网
牛客企业服务