服务器“诞生” 至少经上千项测试

服务器压力测试作为互联网行业必修课已遍布电商平台、视频网站、游戏运营等众多应用场景 。 但一台合格服务器出厂只有压力测试就足够了吗?就此 , 宁畅信息产业(北京)有限公司的测试工程师 , 就给出了详细解答 。
服务器诞生至少经上千项测试
要生产出具备德智体美劳全面素质的服务器 , 需要通过不断测试 , 使其硬件功能稳定 , 电性能可靠 , 信号质量纯净 。 每一台宁畅服务器在电性能测试方面 , 需经过如:Base function基本验证测试;Efficiency 效率测试;Inrush Current电流冲击测试;Overshoot & Undershoot 过冲和下冲测试;Phase margin相位裕度验证;Voltage 电压测试;Power rail 的Open & Short、Voltage、Leakage漏电测试;Sequencing 上电时序以及Clock基本测试 , 以及重要的CPU VRM测试 。
只有信号纯净 , 才能保证数据传输时的质量 。 宁畅服务器不仅测试高速总线 , 如PCIE、SAS、SATA、UPI、DMI、DDR、 USB2.0/3.0、10GBASE-KR、10GBASE-T、GbE、 Clock、10G/25G Serdes以及NCSI等信号 。 低速总线 , 如SMBus、I2C、IPMB、SPI、 eSPI、LPC、VGA、Power Good and Reset等信号也会全部检查 。
在板级严谨测试外 , 宁畅服务器还需做全面兼容性测试 , 如针对每一个客户的AVL , 像内存、硬盘(HDD , SSD , NVMe)、网卡、阵列卡等常见扩展卡的兼容性测试 , 同时这些测试都会使用客户自用操作系统去做全面验证 , 模拟客户体验并给出反馈;其中针对Performance的调优测试 , 宁畅产品多次打破Spec Bechmark的记录 。
服务器在通常环境下可顺畅运行 , 遇到高温、高湿等严苛环境也得能吃土耐劳 。 宁畅测试团队本着宁静、顺畅理念 , 全面设计了Thermal散热测试和Reliability(可靠性)测试 , 其覆盖环境有:高温高湿场景;低温场景;盐雾场景;HALT加速寿命测试场景;Four Corner拉偏和AC loss等疲劳测试场景 。
此外 , Drop跌落、Shock冲击、Vibration震动、 Storage仓储测试 , 电磁兼容电磁干扰(electromagnetic interference, EMI)和电磁耐受性(electromagnetic susceptibility, EMS)这些都是产品包装、运输、上线和离线场景下必须测试环节 。
做完以上基础测试 , 还得根据用户需求做特定软件环境与应用场景(包括压力测试)等等性能与稳定性测试 。 一款合格的服务器产品 , 从设计生产到真正交付用户 , 粗算每台做一千项测试是妥妥的 。 但是!仅做这些测试 , 还不能保证服务器达到宁畅标准出厂 。
超4万项用例测试实现自动化
针对测试中发现的Bug , 研发工程师需做系统性及时调整与处理 。 往往一个信号干扰问题 , 就需要经过多轮调试 。 服务器产品交付都是短时间成千上万台 , 要让每台服务器经过数千项测试并及时调整Bug , 则需要构建系统的自动化测试体系 , 并在产品研发和满足用户定制化的过程中同步进行测试 , 以保证产品可按时、高质量地交付到用户手中 。
好比一台车要在高速路上边跑边组装、边检验 , 车停下来便完成所有测试与装配 , 用户接过方向盘就可开走 。 宁畅测试负责人介绍边造边测非常考验宁畅测试与研发人员的技术功底与经验积累 , 关键还得掌握测试体系与产品研发的核心技术 。
服务器“诞生” 至少经上千项测试■行业发展来看 , 只有将客户测试需求全面实现自动化 , 才能更好为客户服务 , 提供高质量产品 。 而如宁畅一样具备全面自动化测试能力厂商 , 仅占厂商总数量的2%左右 。 除了人力、物力上的投入 , 关键还得有相关用例经验积累 。 宁畅测试负责人表示 , 服务器测试自动化门槛很高 , 不仅需要测试人员 , 还需研发人员 , 在了解服务器同时掌握众多语言等技能 。
诸如Shell , Python , C , Java , Go , Ruby等工具语言需要掌控;如Jenkins , Django , react , Flask等架构理解也必不可少 。 只有掌握这些基础技能 , 才能面向不同业务采用不同语言与框架 , 如:图像数据处理要采用难度较高的OCR技术 。 一套完整测试系统需经过十几年的千锤百炼 , 才能为客户提供既敏捷又高效的服务 。