基于dagger平台实现资源位的接口自动化

news2024/11/24 20:42:36

文章目录

  • 什么是dagger平台?
  • 什么是资源位?
  • 什么是接口自动化?
  • 如何实现接口自动化?
    • 内部调用关系
      • 基本概念
      • 互相引用关系
    • 目录结构
    • 具体实现
      • 任务:Task
      • 用例:Case
      • 场景:Scene
      • 接口:Api
  • 监控与数据统计

什么是dagger平台?

dagger是滴滴公司内部自研的开放式框架,是一个轻量级系统测试框架。解决了使用成本高、学习成本高、调试成本高、配置不灵活的问题;使其具有了许多的优秀特点,如下:
使用灵活:可以根据不同的业务需求将API组装成不同的业务场景
扩展性强:采用开放式框架,各业务方可以根据业务特点编程实现特殊的场景和功能
简单易学:没有特殊依赖,个人电脑即可运行
灵活配置:通过修改配置文件,无需修改代码,即可在新的国家和业务线上运行用例

什么是资源位?

资源位是流量业务中的一个重要概念,它是承接流量的入口,掌握了平台的流量规模及流向、为各业务线运营产品提供快速配置活动和感知活动效果能力、保证、提升填充到曝光到点击的转化率;它也是通过流量运营平台投放的活动,自身具有丰富的表现形式和表现内容,根据自身曝光展示的特点来帮助用户进行点击跳转,达到二次曝光和二次消费的目的。

什么是接口自动化?

接口自动化是通过对接口进行测试和模拟,以确保软件系统内部的各个组件能够正确地相互通信和交换数据。这种测试方法可以直接验证模块逻辑的正确性,去除用户界面(UI)的干扰。接口自动化测试的目的是为了稳定和提高焊接质量,保证其均一性。同时接口测试自动化的实施可以减轻测试人员的工作量,提高工作效率,协助定位问题,尽早发现并通知测试人员bug,从而快速高效地解决问题。此外,它还有助于从枯燥的重复劳动中解放出来,协助手工测试完成难以模拟的工作,以及协助定位问题,通过添加的traceID定位到日志错误或错误代码行。

如何实现接口自动化?

内部调用关系

基本概念

dagger框架只要分为任务、用例、场景、接口四个模块,每个模块都实现各自相应的功能,比如:
任务:指定用例运行在哪个城市、指定用例使用哪个环境、选择用例的配置文件
用例:由一个或者多个场景组成,配置用例级别的变量、锚点、校验点
场景:由一个或多个接口组成
接口:定义路径、参数、校验点、锚点、定义从上下文导入并替换的参数、定义从响应导出到上下文的变量
在这里插入图片描述

互相引用关系

它们之间的引用关系是:任务调用用例、用例调用场景、场景调用接口这样的形式,用例、场景、接口均有三个方法:Setup()->Run() ->Teardown();流程调度通过函数调用实现:用例Run()->场景Run() ->接口Run(),可以用下面这张图来更加方便的理解:
在这里插入图片描述

目录结构

在这里插入图片描述
在这里插入图片描述

具体实现

任务:Task

在这里插入图片描述

用例:Case

在这里插入图片描述

场景:Scene

在这里插入图片描述

接口:Api

在这里插入图片描述

监控与数据统计

自动化的执行流程为:dagger进行代码编写 — 在流水线进行定时触发 — 由Jenkins执行并生成测试报告 — 由磐石平台进行监控 — 由菩提平台进行数据统计

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1829364.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于Itô扩散过程的交易策略偏微分方程matlab求解与仿真

目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.本算法原理 5.完整程序 1.程序功能描述 基于It扩散过程的交易策略偏微分方程,提出了一种确定It扩散过程。通过根据的第一次通过时间来确定问题在这个过程中,我们推导出交易长度的分布函数和密…

如何通过Outlook大附件插件,加强外发附件的安全性和管控力度?

因邮件的便捷性和普遍性,企业间业务往来通常会采取邮箱业务,沟通使用成本也比较低,但容易出现附件太大无法上传的问题。Outlook大附件插件是为解决邮件系统中附件大小限制问题而开发的一系列工具。 使用邮件发送附件时,可能会遇到…

R调用Taxonkit展示系统发育信息

Introduction TaxonKit是一个用于处理生物分类学数据的命令行工具。 它的主要功能是处理NCBI的生物分类学数据,包括对分类单元(如物种、属、科等)的查找、分类单元的上下位关系查询、分类单元名称的标准化等。 为了方便R社区用户&#xff0…

QuickLook最强大的C#开源文件预览神器

功能特点: 快速预览:用户只需选中文件并按下空格键,即可立即查看文件内容,无需打开特定应用程序或软件。 多格式支持:QuickLook支持预览几乎所有常见的文件类型,包括但不限于: 图像&#xff1…

【计算机网络】已解决:“‘ping‘ 不是内部或外部命令,也不是可运行的程序或批处理文件”报错

文章目录 一、问题分析背景二、可能出错的原因三、错误代码示例四、正确解决方法与示例五、注意事项 已解决“‘ping’ 不是内部或外部命令,也不是可运行的程序或批处理文件”报错 一、问题分析背景 在Windows操作系统中,ping 命令是一个常用的网络诊断…

STM32CubeMX配置-外部中断配置

一、简介 MCU为STM32G070,配置为上升沿触发外部中断,在上升沿外部中断回调函数中进行相关操作。 二、外部中断配置 查看规格书中管教描述,找到I/O对应的外部中断线,然后进行如下上升沿触发外部中断配置。 三、生成代码 调用上升沿…

【Linux】进程_6

文章目录 五、进程8. 进程地址空间 未完待续 五、进程 8. 进程地址空间 上图可能很多人都看过了,这里再来验证一下: 验证位置: 验证堆栈的生长方向: 在上面的空间布局图中,有一个疑问,画的空间是 内存…

【探索Linux】P.34(HTTPS协议)

阅读导航 引言一、HTTPS是什么1. 什么是"加密"2. 为什么要加密3. 常见的加密方式(1)对称加密(2)非对称加密 二、证书认证1. CA认证 三、HTTPS的加密底层原理✅非对称加密对称加密证书认证 温馨提示 引言 在上一篇文章中…

Ubuntu 22.04 解决 firefox 中文界面乱码

问题复现 在为Ubuntu 22.04 Server安装完整的GNOME 42.01桌面后,将桌面语言设置为中文时,打开Firefox可能会出现中文乱码的问题。经过网上调查发现,这个问题是由Snap软件包引起的。 解决方案 为了避免在Ubuntu 22.04中文模式下的乱码问题…

消息队列-RabbitMQ-消息确认机制

为了保证消息的不丢失,可靠抵达,可以使用事务消息,但是性能会下降250倍,为此引入确认机制。 1.ConfirmCallBack 服务器收到消息就回调 ● 被broker接收到只能表示Message已经到达服务器,并不能保证消息一定会投递到目…

【漏洞复现】红海云eHR PtFjk.mob 任意文件上传漏洞

免责声明: 本文内容旨在提供有关特定漏洞或安全漏洞的信息,以帮助用户更好地了解可能存在的风险。公布此类信息的目的在于促进网络安全意识和技术进步,并非出于任何恶意目的。阅读者应该明白,在利用本文提到的漏洞信息或进行相关测…

c++编程(18)——deque的模拟实现(2)容器篇

欢迎来到博主的专栏——c编程 博主ID:代码小豪 文章目录 deque的数据结构deque的构造默认构造填充构造 deque的其他操作deque的插入、删除push_back和push_frontpop_back和pop_frontclear、erase和insert操作 传送门 在上一篇中,我们已经实现了deque最核…

2024/6/16 英语每日一段

Nature has the means--to a degree--to limit the effects of climate change. Intact ecosystems such as forests, grasslands, oceans and peatlands are “carbon sinks”--natural storage systems that remove atmospheric carbon and other greenhouse gases--and are …

【Java03】Java中数组在内存中的机制

1. 内存中的数组 Java中的数组是一种引用类型,数组变量(引用)和数组元素在内存中是分开的。 Java中的数组变量其实就是指针。 如果想要访问数组元素,只能通过这个数组的引用变量(指针)来访问。 实际数组对…

华为OD机试 - 多段线数据压缩(Java 2024 D卷 100分)

华为OD机试 2024D卷题库疯狂收录中,刷题点这里 专栏导读 本专栏收录于《华为OD机试(JAVA)真题(D卷C卷A卷B卷)》。 刷的越多,抽中的概率越大,每一题都有详细的答题思路、详细的代码注释、样例测…

Hadoop+Spark大数据技术(微课版)总复习

图1 Hadoop开发环境 图2 HDFS 图3 MapReduce 图4 HBase 图5 Scala 图6 Spark 图7 Spark RDD 图8 (不考) 图9 Spark SQL 图10 Spark Streaming 图11 Spark GraphX 第一章 Hadoop大数据开发环境 hadoop是什么? (判断题&#…

数字化转型中的数据资产运营:从数据资产的获取、存储、分析到应用的全流程管理策略

一、引言 随着信息技术的迅猛发展,数字化转型已成为企业提升竞争力、实现可持续发展的关键途径。数据资产作为数字化转型的核心要素,其运营与管理水平直接决定了企业能否在激烈的市场竞争中脱颖而出。本文将从数据资产的获取、存储、分析到应用的全流程…

【尚庭公寓SpringBoot + Vue 项目实战】看房预约管理(十三)

【尚庭公寓SpringBoot Vue 项目实战】看房预约管理(十三) 文章目录 【尚庭公寓SpringBoot Vue 项目实战】看房预约管理(十三)1、业务说明2、代码开发2.1、根据条件分页查询预约信息2.2、根据ID更新预约状态 1、业务说明 看房预约…

Sping源码(九)—— Bean的初始化(非懒加载)— Bean的创建方式(Supplier)

序言 目前介绍几种Spring创建对象的方式,其中包括 FactoryBean、Cglib动态代理、自定义BeanPostProcessor(InstantiationAwareBeanPostProcessor)。 这篇文章会继续扩展Spring中Bean的创建方式——Supplier。 Supplier 先看下我们的Suppli…

【动态规划】| 路径问题之最小路径和 力扣64

🎗️ 主页:小夜时雨 🎗️专栏:动态规划 🎗️如何活着,是我找寻的方向 目录 1. 题目解析2. 代码 1. 题目解析 题目链接: https://leetcode.cn/problems/minimum-path-sum/description/ 这道题目和之前一道…