【数据库自动化测试流程构建】两大服务

简介: 【数据库自动化测试流程构建】两大服务

本来想把这部分标题写成“数据库自动化测试平台构建”的,但想想还是算了,因为这次的构建目标比较简单,只是为了做数据库基本语法自动化测试、数据库基准测试(包含tpch,ssb,tpcds)。涉及到的开发内容可能不多,就只当一个自动化测试流程的构建吧,接下来数落数落这次的需求:




一、统一测试执行服务


简言之,统一测试执行服务(Test Execution Service, TES)就是用来发起测试执行的入口。TES 提供 GUI 界面和 RESTful API 两种形式,对外提供执行测试的服务,同时兼具测试版本管理、Jenkins 测试 Job 管理和测试执行结果的管理。其中 GUI 界面主要用于人工场景按需发起测试的执行,而 RESTful API 的主要用户时 CI/CD 的流水线服务,这些脚本将通过统一的 RESTful API 接口来发起测试的执行。


  1. 我需要编写一个简单的界面,支持选择测试环境、选择测试环境 jar 包、选择测试数据/测试用例、填写执行次数、查看执行结果,这个界面主要用于测试人员手动操作。
  2. 我需要实现几个简单的接口,支持选择测试环境、选择测试环境 jar 包、选择测试数据/测试用例、填写执行次数、查看执行结果,这些个接口主要用于CI/CD 作业,自动操作。





二、被测系统部署服务


被测系统部署服务(SUT Setup Service,SUTSS)是比较好理解的一种测试服务,该服务主要用于安装部署被测系统和软件。


其实现原理就是,调用 DevOps 团队的软件安装和部署脚本,对那些可以直接用命令行安装和部署的软件是比较简单的,一般只需要把人工安装步骤的命令行组织成脚本文件,然后加入必要的日志输出和出错处理即可。如果被测软件安装包本身不支持 Silent 安装模式,那么强烈建议,向发布工程师提出功能需求,要求加入 Silent 安装模式的支持。


  1. 我需要将数据库安装包自动化部署在指定的机器上,并支持替换跟版本相关的jar
  2. 我需要将部署好的数据库服务,按接收到的数据参数,导入指定的数据集,并执行测试sql;或者在某台机器上,自动化执行数据库连接地址是我所部署的机器的单元测试。
  3. 我需要将基准测试和基本语法测试的结果保存在测试结果统计数据库中。







目录
相关文章
|
22天前
|
监控 jenkins 测试技术
自动化测试框架的构建与实践
【10月更文挑战第40天】在软件开发周期中,测试环节扮演着至关重要的角色。本文将引导你了解如何构建一个高效的自动化测试框架,并深入探讨其设计原则、实现方法及维护策略。通过实际代码示例和清晰的步骤说明,我们将一起探索如何确保软件质量,同时提升开发效率。
35 1
|
28天前
|
测试技术 开发者 Python
自动化测试之美:从零构建你的软件质量防线
【10月更文挑战第34天】在数字化时代的浪潮中,软件成为我们生活和工作不可或缺的一部分。然而,随着软件复杂性的增加,如何保证其质量和稳定性成为开发者面临的一大挑战。自动化测试,作为现代软件开发过程中的关键实践,不仅提高了测试效率,还确保了软件产品的质量。本文将深入浅出地介绍自动化测试的概念、重要性以及实施步骤,带领读者从零基础开始,一步步构建起属于自己的软件质量防线。通过具体实例,我们将探索如何有效地设计和执行自动化测试脚本,最终实现软件开发流程的优化和产品质量的提升。无论你是软件开发新手,还是希望提高项目质量的资深开发者,这篇文章都将为你提供宝贵的指导和启示。
|
2月前
|
缓存 Devops jenkins
专家视角:构建可维护的测试架构与持续集成
【10月更文挑战第14天】在现代软件开发过程中,构建一个可维护且易于扩展的测试架构对于确保产品质量至关重要。本文将探讨如何设计这样的测试架构,并将单元测试无缝地融入持续集成(CI)流程之中。我们将讨论最佳实践、自动化测试部署、性能优化技巧以及如何管理和扩展日益增长的测试套件规模。
53 3
|
10天前
|
数据库 Docker 容器
Docker在现代软件开发中扮演着重要角色,通过Dockerfile自动化构建Docker镜像,实现高效、可重复的构建过程。
Docker在现代软件开发中扮演着重要角色,通过Dockerfile自动化构建Docker镜像,实现高效、可重复的构建过程。Dockerfile定义了构建镜像所需的所有指令,包括基础镜像选择、软件安装、文件复制等,极大提高了开发和部署的灵活性与一致性。掌握Dockerfile的编写,对于提升软件开发效率和环境管理具有重要意义。
26 9
|
1月前
|
SQL 安全 Java
MyBatis-Plus条件构造器:构建安全、高效的数据库查询
MyBatis-Plus 提供了一套强大的条件构造器(Wrapper),用于构建复杂的数据库查询条件。Wrapper 类允许开发者以链式调用的方式构造查询条件,无需编写繁琐的 SQL 语句,从而提高开发效率并减少 SQL 注入的风险。
23 1
MyBatis-Plus条件构造器:构建安全、高效的数据库查询
|
26天前
|
存储 SQL API
探索后端开发:构建高效API与数据库交互
【10月更文挑战第36天】在数字化时代,后端开发是连接用户界面和数据存储的桥梁。本文深入探讨如何设计高效的API以及如何实现API与数据库之间的无缝交互,确保数据的一致性和高性能。我们将从基础概念出发,逐步深入到实战技巧,为读者提供一个清晰的后端开发路线图。
|
26天前
|
JSON Java 测试技术
SpringCloud2023实战之接口服务测试工具SpringBootTest
SpringBootTest同时集成了JUnit Jupiter、AssertJ、Hamcrest测试辅助库,使得更容易编写但愿测试代码。
55 3
|
29天前
|
缓存 NoSQL 数据库
运用云数据库 Tair 构建缓存为应用提速,完成任务得苹果音响、充电套装等好礼!
本活动将带大家了解云数据库 Tair(兼容 Redis),通过体验构建缓存以提速应用,完成任务,即可领取罗马仕安卓充电套装,限量1000个,先到先得。邀请好友共同参与活动,还可赢取苹果 HomePod mini、小米蓝牙耳机等精美好礼!
|
1月前
|
监控 安全 测试技术
构建高效的精准测试平台:设计与实现指南
在软件开发过程中,精准测试是确保产品质量和性能的关键环节。一个精准的测试平台能够自动化测试流程,提高测试效率,缩短测试周期,并提供准确的测试结果。本文将分享如何设计和实现一个精准测试平台,从需求分析到技术选型,再到具体的实现步骤。
101 1
|
1月前
|
运维 Devops 测试技术
自动化运维的魔法——打造高效的DevOps流程
【10月更文挑战第28天】在数字化浪潮不断推进的今天,企业对运维效率的追求如同古人探索魔法一般充满好奇与渴望。本文将带你走进自动化运维的世界,揭秘如何通过DevOps实践,实现从代码到部署的无缝连接,提升企业的IT运营效能。我们将一起探索自动化工具的选择与配置,以及如何构建一个既能快速响应业务需求,又能保障系统稳定性的高效流程。