大数据应用的测试发展之路(三)

本文涉及的产品
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介: 在前面的文章中,我们介绍了大数据应用在测试领域的六大问题以及解决方法。本文,我们将和大家大数据应用测试的未来发展趋势。

云栖号资讯:【点击查看更多行业资讯
在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来!

在前面的文章中,我们介绍了大数据应用在测试领域的六大问题以及解决方法。本文,我们将和大家大数据应用测试的未来发展趋势。

后端服务测试的工具服务化

未来的大数据应用测试是什么样的呢?首先,我们认为后端服务类型的测试不再需要专职的测试人员,开发工程师在使用合理的测试工具的情况下可以更加高效地完成测试任务。专职的测试团队,未来会更多地专注于偏前端与用户交互层面的产品质量把控,跟产品经理一样,需要从用户的角度思考用户在使用产品过程中可能遇到的质量问题,产品的交付与交互的验证是产品测试的重点。

多数服务端的测试工作都是可以自动化完成的,且很多 service 级别的验证也只有通过自动化这种方式才能验证。相较于测试同学,开发同学在 API 级别的自动化代码开发方面能力会更强,而且如果是开发同学自己做测试,可以减少与开发同学之间的大量往返沟通的成本,而这个成本在整个发布环节中占比很大。

另外,算法工程师在业务算法逻辑的理解上更加清晰,算法策略与逻辑的细节是他们设计实现的。所以,我们更希望后端的测试工作由工程或者算法工程师独立完成,在这种新的生产关系模式下,测试同学更加专注于测试工具的研发,包括自动化测试框架、测试环境部署工具、测试数据构造与生成、发布冒烟测试工具、持续集成与部署等。

这种模式也是 Google 一直在使用的测试模式,我们今年在这个方向尝试了转型,在质量变化和效率提升方面这两方面效果还不错。这里需要强调的一点是,虽然测试团队在这个方向上做了转型,但后端测试还是需要继续做,只是测试任务的执行主体变成了开发工程师,大量后端测试的技术和方向还会继续存在。后端服务类测试团队转型,除了效能工具之外,线上稳定性的建设也是一个非常好的方向。

测试的线上化

TIP(Test In Production)概念是十年前由微软的工程师提出。

我们之所以认为 TIP 是未来测试的方向,主要是基于以下三点考虑:
首先,由于线下测试环境与真实线上环境总是存在一些差异,导致测试结论也会有所偏差。目前大家使用最多的是性能测试或容量测试,由于后端服务的拓扑非常复杂,且许多模块都有可扩展性,不同的数据对性能测试的结果也有很大的影响,测试环境与生产环境的不同会给测试结果带来的巨大差异。另外,目前的生产集群都是异地多活,在夜里或者流量低谷的时候,单个集群就可以承担起所有流量请求,剩下的集群可以很方便地用来压测,这也给我们在线上做性能测试带来了可能性。

其次,许多真实的演练测试只能在线上系统进行,在线下测试环境是无法做到的,例如安全攻防、故障注入与演练等。

最后,从质量的最终结果看,不管是发布前的线下测试,还是发布后的线上稳定性建设,其目的都是为了减少系统故障的发生,如果把这两部分融合在一起,针对最终的线上故障去做目标优化工作,可以最大程度地节约和利用人力资源。因此,我们认为线下测试与线上稳定性的融合必将是一个历史趋势,这一领域统称为技术风险的防控。

技术的智能化

测试的第三个发展趋势是技术的智能化,见图 3。

EE8CC8FA_F2A7_4a5c_B240_47824787975B

类似于自动驾驶的分级,智能化测试也有不同的成熟度模型:人工测试、自动化、辅助智能测试、高度智能测试。机器智能是一个工具,在测试的不同阶段都有其应用的场景,测试数据和用例设计阶段、测试用例回归执行阶段、测试结果的检验阶段、线上的指标异常检测等诸多技术风险领域都可以用到不同的算法和模型。

智能化测试是发展到一定阶段的产物,前提条件就是数字化,自动化测试是比较简单一种数字化。如果没有做到数字化或者自动化,其实是没有智能分析与优化的诉求的。

另外,一些简单算法的使用可能会有不错的效果,比较复杂的深度学习甚至强化学习算法的效果反而一般。出现这种情况的原因可能有两个,一个是特征提取和建模比较困难,二是测试运行的样本与反馈的缺失。

运用最新的算法技术去优化不同的测试阶段的效率问题,是未来测试的一个方向。但我们同时判断,完全的高度智能测试与无人驾驶一样,目前还不成熟,主要原因不在于算法与模型,而是测试数据的不足。

结束语

阿里巴巴的搜索推荐与广告系统的质量建设之路,经过近 10 年的不断发展,在许多测试同学的不断努力付出之下,才能在如此众多的细分领域方向上有所建树,本文所介绍的方法也都浓缩在我们内部的工具之中,后面我们的想法还是逐渐开源,回馈社区。限于篇幅,本文的内容又较多,很多技术细节这里并没有办法细细展开。如果想了解更多,欢迎大家加入我们的团队或者开源社区,一起在以上的几个方向做更加深入的研究与建设。

【云栖号在线课堂】每天都有产品技术专家分享!
课程地址:https://yqh.aliyun.com/zhibo

立即加入社群,与专家面对面,及时了解课程最新动态!
【云栖号在线课堂 社群】https://c.tb.cn/F3.Z8gvnK

原文发布时间:2020-04-29
本文作者:公直
本文来自:“InfoQ”,了解相关信息可以关注“InfoQ

相关实践学习
基于Hologres轻松玩转一站式实时仓库
本场景介绍如何利用阿里云MaxCompute、实时计算Flink和交互式分析服务Hologres开发离线、实时数据融合分析的数据大屏应用。
基于MaxCompute的热门话题分析
Apsara Clouder大数据专项技能认证配套课程:基于MaxCompute的热门话题分析
相关文章
|
1月前
|
机器学习/深度学习 自然语言处理 API
query改写:大模型应用测试离不开的实践
queryrewrite 是一个用于大模型应用测试的 Python 库,专注于查询(query)的改写与验证。它支持多种改写方法,包括大型语言模型(LLM)、词汇表替换和同义词替换,同时提供多种验证方法如 ROUGE-L、BLEU、帕累托最优和LLM语义相似度,以确保改写后的查询在语义上保持一致。该项目特别优化了对中文文本的处理,涵盖分词和相似度计算。用户可通过 pip 安装,并支持扩展不同的 LLM 模型,如 OpenAI、Ollama 等。
324 87
query改写:大模型应用测试离不开的实践
|
2月前
|
传感器 Java 大数据
Java 大视界 -- 基于 Java 的大数据实时数据处理在车联网车辆协同控制中的应用与挑战(197)
本文深入探讨了基于 Java 的大数据实时数据处理在车联网车辆协同控制中的关键应用与技术挑战。内容涵盖数据采集、传输与实时处理框架,并结合实际案例分析了其在车辆状态监测、交通优化与协同驾驶中的应用效果,展示了 Java 大数据技术在提升交通安全性与效率方面的巨大潜力。
|
2月前
|
存储 分布式计算 Java
Java 大视界 -- Java 大数据在智能建筑能耗监测与节能策略制定中的应用(182)
本文探讨了Java大数据技术在智能建筑能耗监测与节能策略制定中的关键应用。通过Hadoop、Spark等技术实现能耗数据的存储、分析与可视化,结合实际案例,展示了Java大数据如何助力建筑行业实现节能减排目标。
|
1月前
|
JSON 自然语言处理 算法
大模型应用测试必备技能:问题对生成实践
本文介绍了利用LangChain的QAGenerationChain从文本生成问题-答案对(QA pairs)的方法,旨在解决LLM应用开发中测试数据生成的格式不统一、库版本过时、模型输出异常及代码可维护性差等问题。文中提供了完整的代码实现,并对生成结果进行了有效性评估,包括语义相似度检查、关键词匹配和重复性检测,确保生成的QA对质量可靠,适用于知识库测试与评估。
247 86
|
2月前
|
存储 搜索推荐 算法
Java 大视界 -- Java 大数据在智能金融理财产品风险评估与个性化配置中的应用(195)
本文深入探讨了Java大数据技术在智能金融理财产品风险评估与个性化配置中的关键应用。通过高效的数据采集、存储与分析,Java大数据技术助力金融机构实现精准风险评估与个性化推荐,提升投资收益并降低风险。
Java 大视界 -- Java 大数据在智能金融理财产品风险评估与个性化配置中的应用(195)
|
1月前
|
存储 供应链 数据可视化
Java 大视界 -- 基于 Java 的大数据可视化在企业供应链风险预警与决策支持中的应用(204)
本篇文章探讨了基于 Java 的大数据可视化技术在企业供应链风险预警与决策支持中的深度应用。文章系统介绍了从数据采集、存储、处理到可视化呈现的完整技术方案,结合供应链风险预警与决策支持的实际案例,展示了 Java 大数据技术如何助力企业实现高效、智能的供应链管理。
|
1月前
|
存储 SQL Java
Java 大视界 -- Java 大数据在智能医疗手术风险评估与术前方案制定中的应用探索(203)
本文探讨了Java大数据技术在智能医疗手术风险评估与术前方案制定中的创新应用。通过多源数据整合、智能分析模型构建及知识图谱技术,提升手术风险预测准确性与术前方案制定效率,助力医疗决策智能化,推动精准医疗发展。
|
2月前
|
机器学习/深度学习 Java 大数据
Java 大视界 -- Java 大数据在智能政务公共资源交易数据分析与监管中的应用(202)
本篇文章深入探讨了 Java 大数据在智能政务公共资源交易监管中的创新应用。通过构建高效的数据采集、智能分析与可视化决策系统,Java 大数据技术成功破解了传统监管中的数据孤岛、效率低下和监管滞后等难题,为公共资源交易打造了“智慧卫士”,助力政务监管迈向智能化、精准化新时代。
|
2月前
|
数据采集 机器学习/深度学习 Java
Java 大视界 -- Java 大数据在智能体育赛事运动员体能监测与训练计划调整中的应用(200)
本篇文章聚焦 Java 大数据在智能体育赛事中对运动员体能监测与训练计划的智能化应用。通过构建实时数据采集与分析系统,结合机器学习模型,实现对运动员体能状态的精准评估与训练方案的动态优化,推动体育训练迈向科学化、个性化新高度。
|
2月前
|
机器学习/深度学习 分布式计算 Java
Java 大视界 -- Java 大数据机器学习模型在遥感图像土地利用分类中的优化与应用(199)
本文探讨了Java大数据与机器学习模型在遥感图像土地利用分类中的优化与应用。面对传统方法效率低、精度差的问题,结合Hadoop、Spark与深度学习框架,实现了高效、精准的分类。通过实际案例展示了Java在数据处理、模型融合与参数调优中的强大能力,推动遥感图像分类迈向新高度。