TestDataLake在提升测试效能方面的实践

这篇具有很好参考价值的文章主要介绍了TestDataLake在提升测试效能方面的实践。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

TestDataLake在提升测试效能方面的实践

1.背景

随着软件开发的迅速发展,测试数据管理变得越来越复杂。手动创建测试数据需要耗费大量时间和精力,同时容易出错。若缺乏测试数据,则会导致测试结果不够全面,甚至可能在线上环境中引发问题,从而给软件产品带来质量风险。因此,如何生成大量、真实、正确的测试数据成为了测试人员和研发人员所关心的重要问题。

在业务数据较为简单、常规的项目中,手动编写少量测试数据来跑完用例可能并没有太大问题。但是在接口性能测试和接口遍历测试时需要大量的测试数据,以确保测试结果的覆盖度和全面性。而且,在垂直行业领域中,业务数据往往具有特定的数据结构和约束条件。如果依赖手工创建测试数据或通过编写脚本生成数据,有如下弊端:1) 花费时间;2) 容易出错; 3)覆盖度不够,且缺乏完整性;4) 缺乏可维护性。

 

 

为解决这些问题,许多公司开始转向自动化测试数据生成。通过程序或脚本来快速生成符合特定业务场景的测试数据。这种方法相比手动创建测试数据更加高效。

然而,自动化测试数据生成也存在着一些问题和挑战。

需要考虑业务场景:为了生成真实的测试数据,需要对业务场景有充分的理解和掌握。否则,生成的测试数据可能不符合实际业务需求。

维度成本高:虽然自动化测试数据生成可以提高测试效率和准确性,但是针对具体业务测试数据生成工具需要一定的开发和维护成本。

为了解决这些痛点,TestDataLake应运而生,将复杂的测试数据准备工作简化为可视化的过程,是一种非常有效的数据管理工具,可以帮助测试人员快速、准确地生成符合预期的测试数据,并且可以提高测试效率和测试质量。

 

2.预期目标

为了帮助测试人员快速、准确地生成符合预期的测试数据,并降低脚本生成测试数据的成本,TestDataLake 目标是可以方便地生成覆盖度高、全面和真实的测试数据,用于日常的功能测试、性能测试和接口遍历测试。具体包括:

1)低成本、快速地造出高可用测试数据;

2)保证测试数据的覆盖度、全面性和真实性;

3) 建立业务字典库和通用数据字典库,确保测试数据的时效性和准确性,并且可以灵活扩展业务字典;

4)智能化的依赖关系设计,轻松地从不同的数据字典中抽取字段,并组合成所需的测试数据。

 

3.系统设计和实现

TestDataLake具有多种功能模块,包括数据模型管理、数据智能生成模块、预览及导出模块、接口遍历测试、接口遍历报告、业务数据查询、数据源管理、数据字典维护等。这些功能模块可以为测试人员和研发人员快速地创建高可用测试数据,提高测试效率和节约测试成本。同时,这些功能模块还可以保证测试数据的覆盖度、全面性和真实性,建立业务字典库和通用数据字典库,确保测试数据的时效性和准确性,并且可以灵活扩展业务字典。最重要的是,可视化数据池平台提供了智能化的依赖关系设计功能,可以轻松地从不同的数据字典中抽取字段,并组合成所需的测试数据,大大提高了测试数据生成的质量和准确性,为开发和测试提供了有力的支持。

TestDataLake在提升测试效能方面的实践

图1 TestDataLake系统组成图

 

3.1

系统功能组成

数据模型管理和数据智能生成模块是TestDataLake提供的核心功能,数据模型管理以直观的可视化界面为用户提供了智能化的依赖关系设计功能。可以轻松地从不同的数据字典中抽取字段,灵活设定数据之间的依赖关系,并组合成所需的测试数据。这样,用户可以避免繁琐的手工编写测试数据工作,同时也可以提高测试数据的质量和准确性。数据智能生成模块可以根据不同的测试需求,自动化生成符合要求的测试数据。该功能模块内置了多种数据生成策略,如随机生成、序列生成、枚举生成、关联数据生成等。这些策略可以根据测试数据的需求进行配置,以产生更加符合实际场景的测试数据,并大大提高测试效率和节约测试成本。

预览及导出模块可帮助用户直观地查看和验证测试数据的正确性和完整性。用户可在该模块中对生成的测试数据进行预览,并可按所需选择导出数据的格式,例如Excel、CSV、SQL、JSON等。以方便后续在其他系统中使用。

接口遍历测试基于智能数据生成的结果,实现全面覆盖的接口测试。可帮助用户发现系统接口中的潜在问题和漏洞,全面测试系统的接口功能,并根据测试结果生成相应的报告。该功能模块可以尽可能地覆盖到所有场景,包括正常情况、异常情况以及边界情况等。过去,测试人员需要准备大量的测试用例和脚本来进行测试,这是一项繁琐且耗费时间的任务。现在,在TestDataLake的帮助下,利用智能数据生成的数据作为接口遍历的数据源,测试团队可以更好地管理测试数据,并提高接口遍历测试的效率和准确性,从而提高系统的稳定性和可靠性。在接口遍历测试中,断言是非常关键的一步。通过断言,测试人员可以验证每个接口是否按照预期工作,并找到可能存在的问题。为了简化测试人员手动编写断言代码的工作量,TestDataLake提供了常见的断言模板示例,进一步提升了测试的效率和准确性。

日常工作中,产品运营人员及测试人员查询数据成本很高,常用业务数据查询正是为了解决这个痛点。基于建立的业务数据池,可方便用户快速查询和使用常用的业务数据。该功能模块支持自定义查询条件,并提供多种查询方式和结果展示方式,以帮助用户更快地查找和使用数据。

数据源管理可方便地连接和管理各种数据源,例如数据库、API等。数据字典维护可帮助用户建立业务字典库和通用数据字典库,灵活地扩展业务字典,并根据需要添加新的数据字典,并对不同类型的数据进行分类和归档。数据字典支持定期更新,以确保测试数据的时效性和准确性。

 

3.2

数据智能生成

 数据智能生成是可视化数据池平台核心的功能。它将复杂的测试数据准备工作简化为可视化的过程。可以轻松地从不同的数据字典中抽取字段,灵活设定数据之间的依赖关系,并组合成所需的测试数据。这样,用户可以避免繁琐的手工编写测试数据工作,同时也可以提高测试数据的质量和准确性。数据智能生成模块还可以根据预设的规则自动化生成大量数据来模拟用户请求,为接口遍历测试、接口压力测试等系统提供数据,减轻了测试数据准备工作量,从而便于对系统的稳定性和性能进行验证。整体业务流程如图2所示。

TestDataLake在提升测试效能方面的实践

图2 TestDataLake业务流程图

 

下面来介绍一下数据智能生成的流程。只需点击新增,填写易于理解的名称和用途即可创建指定环境的数据模型。在创建好的数据模型中,您可以轻松指定要生成的字段信息以满足不同场景下的需求。该工具支持使用频率较高的业务字典,如品牌车系车型城市经销商和顾问等,让您快速生成符合要求的测试数据。例如生成一份包含车系ID、车型名称、店铺ID和店铺名称的测试数据,其中店铺和车系字段存在依赖关系,只需要3分钟即可完成。

TestDataLake在提升测试效能方面的实践

图3 数据模型字段信息映射

 

通过智能化的依赖关系设计,省去了以往人工造测试数据时关联自断的复杂工作量。

TestDataLake在提升测试效能方面的实践

图4 数据模型字段依赖关系维护

 

配置好所需要的字段信息后,您可以通过预览功能实时生成少量数据来确认这些数据是否符合预期。确认数据无误后,就可以生成大量测试数据,并将数据导出为Excel格式,方便您在接口压力测试、接口遍历测试及其它系统中进行导入和使用。

TestDataLake在提升测试效能方面的实践

图5 数据模型生成数据预览

 

3.3

接口遍历测试

拥有了更多更真实的测试数据,TestDataLake在智能数据生成的基础上,帮助测试团队轻松实现接口遍历测试。为了保证接口遍历测试的效果,需要覆盖到所有的场景,测试人员必须准备大量的测试用例和脚本,这是一项繁琐且耗费时间的任务。TestDataLake将智能数据生成的数据作为接口遍历的数据源,帮助测试团队更好的管理测试数据,并提升接口遍历测试的效率和准确性。当我们将前面生成的数据模型作为接口测试的数据源时,系统支持属性名智能提示,从而方便将接口输入参数与模型中的属性名对应。可以轻松的完成输入参数的赋值工作。

TestDataLake在提升测试效能方面的实践

图 6 接口遍历任务维护界面

 

在接口遍历测试中,断言是非常关键的一步。系统提供了常见的断言模板,测试人员可以根据实际情况进行修改和定制,简化了测试人员手动编写断言代码的工作量。

系统还提供了一个直观明了的接口遍历测试报告,直观的柱状图清晰地展示出结果的分布情况,如成功率失败率,还提供了详细的测试结果列表,测试人员可以查看每个用例的执行状态,请求和响应信息等,帮助测试和研发人员快速定位问题并及时解决,提高测试效率和质量。

TestDataLake在提升测试效能方面的实践

图7 接口遍历测试报告

 

4.应用效果和收益

TestDataLake以数据为核心的解决方案,可以帮助测试人员管理和维护测试数据,提高测试效率和质量。根据不同的测试需求,可以快速地生成符合实际场景的测试数据,避免了手动编写测试数据的繁琐工作,提高了测试效率和节约了测试成本。以往测试人员准备1次性能测试所需要的数据,大约需要1小时,甚至半天时间,如今只需要几分钟就可以实现,效率提升10余倍。接口遍历测试以往由于接口数量庞大,需要花费很多时间和精力准备测试数据和脚本,才能完成遍历测试。这需要测试人员具备一定的编程技能和经验。苦于门槛和成本比较高,一直无法广泛使用。TestDataLake在智能数据生成的基础上,帮助测试团队轻松实现全面覆盖的接口遍历测试,对于保证产品质量和用户满意度非常重要。

 

5.后续规划

TestDataLake已经在接口压力测试和接口遍历测试方面,有效地提高了测试效率和质量。然而对于一些复杂的业务流程需要定制,比如,在C端生成订单数据,并在B端跟踪的整体复杂流程。目前需要根据业务流程编写相关代码。是否可以通过灵活编排实现个性化的数据生成流程,满足不同的测试需求呢?后续我们将重点研究灵活编排业务流程的实现方案,进一步提高测试效率和系统的适用性。

 

作者|张慧吉

TestDataLake在提升测试效能方面的实践文章来源地址https://www.toymoban.com/news/detail-630033.html

到了这里,关于TestDataLake在提升测试效能方面的实践的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 精益DevOps:优化流程,提升效能【文末送书-30】

    随着信息技术的飞速发展,软件开发行业也在不断迭代和演进。在这个竞争激烈的时代,企业追求更快的交付、更高的质量和更强的创新力。在这一背景下,精益DevOps应运而生,成为实现敏捷开发和持续交付的一种强大方法。 精益思想源自于丰田生产体系,注重消除浪费、提

    2024年03月08日
    浏览(33)
  • “数字社区”诞生 “智慧大脑”助力提升社区综合治理效能

    近日,民政局等9部门印发的《关于深入推进智慧社区建设的意见》提出,到2025年,基本构建起网格化管理、精细化服务、信息化支撑、开放共享的智慧社区服务平台,初步打造成智慧共享、和睦共治的新型数字社区。 数字社区建设是智慧城市建设的基础和重要组成部分,也

    2024年02月04日
    浏览(32)
  • AI DevOps | ChatGPT 与研发效能、效率提升(中)

    简单概括就是:产品太过惊艳,体验超预期 之前人工智能发展多年,报道最多的也许就是曾经的李世石大战AlphaGo,现实中的特斯拉自动驾驶,还有波士顿动能放出的机器狗。对于圈外人士来说一般也接触不到这些,仅仅看看而已。但是 ChatGPT 不一样,一声巨响,石头中蹦出

    2024年02月04日
    浏览(34)
  • 流程挖掘in汽车丨宝马的流程效能提升实例

    汽车行业在未来10年里,可能会面临比过去50年更多的变化。电动化、智能化、共享化和自动驾驶等方面的趋势可能给企业流程带来以下挑战: 供应链管理-电动化和智能化的发展可能导致供应链中的零部件和系统结构发生变化,企业需要重新评估和优化供应链流程。 制造和装

    2024年02月12日
    浏览(31)
  • 十问华为云 Toolkit:开发插件如何提升云上开发效能

    众所周知,桌面集成开发环境(IDE)已经融入到开发的各个环节,对开发者的重要性和广泛度是不言而喻的,而开发插件更是建立在IDE基础上的功能Buff。 Huawei Cloud ToolKit作为华为云围绕其产品能力向开发者桌面上的延伸,帮助开发者快速在本地连接华为云,打通华为云到开发

    2024年02月12日
    浏览(25)
  • 思码逸任晶磊:ChatGPT 时代的软件研发数据与效能提升

    思码逸创始人 CEO 任晶磊在 2023年3月4日于上海举办的 LeaTech 全球 CTO 领导力峰会上作为演讲嘉宾分享了主题为《ChatGPT 时代的软件研发数据与效能提升》的演讲。 💡文字为分享内容的提炼,您可以在文末获取演讲 PPT。 我在清华大学获得博士学位后,加入了微软亚洲研究院,

    2024年02月03日
    浏览(41)
  • 以数据思维和技能提升数据应用测试实践

    作者:京东零售 周雪梅 以数据思维和技能提高测试覆盖率和效率。数据应用测试,功能测试主要聚焦在数据流向(输入和输出)。 数据质量组当前主要承接黄金眼和商智中的供应链模块,商智包括PC(品牌版:商家端,运营端)和M端。各模块的产品特征和测试范围和策略的通

    2024年02月04日
    浏览(28)
  • 提升测试效果:深入解析《Effective软件测试》的关键方法与实践

    当我们涉足软件测试领域时,我们发现这个领域充满了挑战和复杂性。软件测试不仅仅是检查功能是否按预期工作,还涉及到性能、安全性、可维护性等多个方面。 这正是《Effective软件测试》的独特之处 ,它不仅关注基础的测试技术,还探讨了如何在不同情境下做出明智的

    2024年02月07日
    浏览(42)
  • HDC.Cloud 2023|邂逅AI,华为云CodeArts铸就研发效能10倍提升

    2023年7月7日-9日,华为开发者大会2023(Cloud)在东莞松山湖隆重举行。期间,华为云主办了以“AI‘邂逅’一站式软件开发,CodeArts以10倍效能“绘”企业应用远景”为主题的分论坛。 华为云PaaS服务产品部副部长汪维敏携一众技术大咖,献上一场“现代化软件研发”技术盛宴。

    2024年02月16日
    浏览(36)
  • [管理与领导-56]:IT基层管理者 - 扩展技能 - 1 - 时间管理 -3- 帮助下属提升效能(辅导与激励)

    对下属的辅导是管理者一个重要的职责,帮助下属者提升时间效能也辅导下属的一个职责。 管理者与下属,管理者与团队是“共生”的关系,管理者提升下属的时间效能,就是提升团队的效能,也就是提升了自己的效能。 针对不同的类型的下属,提升效能的方式是不同的,

    2024年02月11日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包