京东后台一面面经

4月13号 16:00  40分钟

自我介绍

你们信管出了程序语言课都学啥?(经济学、管理学)

IT项目管理学过吗?讲讲呗(??十大知识领域??)

封装继承多态详细介绍,举个多态的例子。

有抽象方法一定是抽象类吗?抽象类一定有抽象方法吗?

list和set的区别。

有没有有序的set?(有,LinkedHashSet)

HashMap和HashTable的区别。

HashTable为什么是线程安全的?(synchronized锁住了)(然后不问我synchronized)

有没有既线程安全效率又高的Map?(ConcurrentHashMap)

BlockQueue见过没?(线程池的排队策略)

线程池的排队策略和拒绝策略的试用条件和具体内容。

介绍一下spring中的IOC和AOP。

IOC是那几个单词?

spring如何生成一个Bean?配置文件写完了之后又怎么生成?

AOP的应用场景,具体介绍,配置文件中需要写什么?具体注解需要写啥?

说几个springMVC的几个注解,都是干啥的?

@PathVariable是干啥的?

说说filter、servlet、listener。

Redis知道吗?缓存呢?缓存是干啥的?有啥作用?

看过啥书。(jvm&大型网站技术架构,看博客比较多,感觉博客更有针对性)

介绍项目。

做项目中的问题。技术问题,如何沟通&解决?(用完ajax之后,找不到或者看不懂前端的标签)

小哥哥人很nice,还跟我说别这么正式,咱俩就聊聊天儿。不过楼主最近都在专注于线程安全&高并发,忽略了框架,在这里祝福小哥哥越长越帅,爱情如意,事业顺心,也希望小哥哥能高抬贵手。 : )


作者:江山社稷

本文来源于牛客网

——————————

牛客网(www.nowcoder.com)

- 互联网名企笔试真题

- 校招求职笔经&面经

- 程序员求职实习信息

- 程序员学习交流社区

### 京东测试开发试经验及技术问题解析 #### 测试用例设计注意事项 在设计测试用例时,除了对整体流程和功能进行关注外,还需要特别注意强度测试、性能测试、压力测试、边界值测试、稳定性测试以及安全性测试等多个方[^1]。测试用例的基本要素包括输入、输出、操作和测试环境。此外,测试类型(如功能、性能、安全等)也需参照相关标准进行设计。同时,测试用例的重要性和优先级需要明确,以确保关键功能得到充分验证。 #### 性能测试流程 性能测试是京东测试开发岗位中非常重要的一部分。以下是对性能测试流程的详细描述: - **需求分析**:挑选用户使用最频繁的功能进行性能测试,例如登录、搜索、提交订单等功能。确定性能指标,如事务通过率、响应时间、并发用户数、CPU和内存使用率等[^2]。 - **测试计划**:明确测试时间(通常在功能稳定后进行),选择合适的测试环境和工具。 - **编写测试用例**:根据需求分析结果,编写详细的性能测试用例。 - **搭建测试环境**:准备性能测试数据,并确保测试环境与生产环境尽可能一致。 - **编写测试脚本**:通过性能测试工具编写测试脚本,并进行调优。调优过程包括设置检查点、参数化、关联、集合点、事务,调整思考时间,删除冗余脚本等。 - **设计测试场景**:使用工具(如nmon)监控服务器资源,运行测试场景。 - **分析测试结果**:如果发现性能瓶颈,收集相关日志并提单给开发人员进行修改。 - **回归测试**:开发人员修复问题后,进行回归性能测试以验证修复效果。 - **编写测试报告**:总结性能测试结果,生成测试报告,提供给相关人员参考。 #### 集成测试策略 集成测试中常用的两种策略为自顶向下集成和自底向上集成。这两种策略各有优缺点,适用于不同类型的测试需求。 - **自顶向下集成**: - 优点:能够较早地检测高层模块中的错误,便于早期发现问题。 - 缺点:需要大量的桩模块支持,增加了开发复杂度。 - 适用场景:适用于高层模块逻辑较为复杂的系统测试[^3]。 - **自底向上集成**: - 优点:减少了对桩模块的依赖,更适合底层模块较多的系统。 - 缺点:高层模块中的错误可能较晚被发现。 - 适用场景:适用于底层模块逻辑较为复杂的单元测试或组件测试[^3]。 #### ARP协议简介 ARP(Address Resolution Protocol)是地址解析协议,用于将网络层的IP地址转换为数据链路层的物理地址(如MAC地址)。在测试开发中,了解ARP的工作原理有助于排查网络通信问题。 --- ```python # 示例代码:模拟简单的性能测试脚本 import time def simulate_performance_test(num_users, response_time_threshold): start_time = time.time() for _ in range(num_users): # 模拟事务处理 process_transaction() end_time = time.time() total_time = end_time - start_time avg_response_time = total_time / num_users if avg_response_time > response_time_threshold: print(f"Performance issue detected! Average response time: {avg_response_time:.2f} seconds") else: print(f"Performance test passed! Average response time: {avg_response_time:.2f} seconds") def process_transaction(): time.sleep(0.1) # 模拟事务处理时间 simulate_performance_test(1000, 5) # 模拟1000个并发用户,响应时间阈值为5秒 ``` --- ####
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值