CDN 和 MediaTailor 集成的系统测试方法 - AWS Elemental MediaTailor

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

CDN 和 MediaTailor 集成的系统测试方法

AWS Elemental MediaTailor 内容交付网络 (CDN) 集成测试应遵循系统的分阶段方法,以确保全面覆盖。按照这种结构化方法全面测试您的内容交付网络和 MediaTailor 集成。每个阶段都建立在前一个阶段的基础上,以隔离潜在的问题。

有关系统测试方法的更多指导,请参阅 Well-Architecte AWS d Framework 中的可靠性测试

第 1 阶段:测试直接 MediaTailor连接

首先在没有 CDN 参与的情况下测试 MediaTailor 功能以建立基准。

  1. 直接测试向 MediaTailor 端点发送的清单请求:

    • 测试 HLS 多变体播放列表请求:curl -v "https://your-emt-endpoint.mediatailor.region.amazonaws.com/v1/master/hls/config-name/master.m3u8"

    • 测试 DASH MPD 请求:curl -v "https://your-emt-endpoint.mediatailor.region.amazonaws.com/v1/dash/config-name/manifest.mpd"

    • 验证清单响应是否包含预期的广告插播标记

    • 检查该分段 URLs 点以纠正原点

  2. 验证广告插入是否正常运行:

    • 使用不同的广告定位参数进行测试

    • 验证广告区段已正确转码且可用

    • 查看广告中断时间和持续时间

    • 测试广告不可用时的回退行为

  3. 衡量基准性能:

    • 记录清单请求响应时间

    • 衡量广告决策服务器的响应时间

    • 测试会话的创建和管理

成功标准:所有直接 MediaTailor 请求都会返回 HTTP 200 响应,其清单格式正确,其中包含预期的广告内容。

第 2 阶段:测试基本 CDN 集成

将 CDN 添加到请求路径并测试基本功能。

  1. 通过 CDN 测试清单请求:

    • 使用简单的路由规则配置 CDN

    • 通过 CDN 端点测试清单请求

    • 验证 CDN 是否正确地将请求转发到 MediaTailor

    • 检查清单响应是否未被缓存 (TTL = 0)

  2. 测试段路由:

    • 验证内容分段到源服务器的路由

    • 验证广告细分到 MediaTailor 广告存储的路径

    • 测试区段缓存行为

  3. 比较 CDN 与直接性能:

    • 测量响应时间差异

    • 检查回复中是否存在任何内容差异

    • 验证错误处理是否正常工作

成功标准:CDN 应成功代理发往 MediaTailor 和源服务器的请求,同时对性能的影响最小。

第 3 阶段:测试查询参数转发

添加查询参数转发并测试广告个性化。

  1. 在 CDN 上配置查询参数转发:

    • 启用将所有查询参数转发到 MediaTailor

    • 测试会话初始化(会话 ID 由 MediaTailor 在第一次请求时自动生成)

    • 使用自定义定位参数进行测试

  2. 测试广告个性化:

    • 验证不同的参数会产生不同的广告响应

    • 测试参数编码和特殊字符

    • 检查参数是否正确传递给 ADS

  3. 验证会话管理:

    • 测试会话的创建和保持

    • 验证请求间的会话 ID 一致性

    • 测试会话过期处理

成功标准:广告内容因查询参数而异,并且会话管理得当。

第 4 阶段:测试标头转发

在 CDN 中添加标头转发并测试特定于设备的定位。

  1. 为所有标头配置标头转发。有关最低要求,请参阅 MediaTailor CDN 集成所需的标头

  2. 测试设备定位:

    • 使用不同的用户代理字符串(手机、台式机、电视)进行测试

    • 验证特定设备的广告响应

    • 使用不同的 IP 地址测试地理定位

  3. 验证 CORS 的处理方式:

    • 测试 CORS 标头的网络播放器兼容性

    • 验证印前检查选项请求是否正常运行

    • 从不同的领域进行测试

成功标准:设备和地理位置定位应能正常运行,网络玩家不应遇到 CORS 错误。

第 5 阶段:全面的场景测试

在多个场景中进行测试,以确保稳健运行。

  1. 使用不同的玩家类型进行测试:

    • 网络浏览器中的 HLS.js 玩家

    • Video.js 支持 HLS 和 DASH 的玩家

    • 移动设备上的原生玩家

    • 智能电视和机顶盒播放器

  2. 在不同的设备和平台上进行测试:

    • 移动设备(iOS、安卓)

    • 桌面浏览器(Chrome、火狐浏览器、Safari、Edge)

    • 智能 TVs 和流媒体设备

    • 不同的操作系统版本

  3. 测试不同的内容类型:

    • 直播内容

    • 视频点播 (VOD) 内容

    • 不同的视频格式和比特率

    • 具有不同广告插播模式的内容

  4. 测试广告定位场景:

    • 不同的受众特征定位参数

    • 跨不同地区的地理定位

    • 基于时间的定位(一天中的不同时间)

    • 自定义业务逻辑参数

成功标准:所有玩家和设备组合都应在适当的广告定位下正常运行。

第 6 阶段:负载和性能测试

在实际负载条件下验证性能。

重要

在进行@@ 负载测试之前,请联系 AWS S upport:在进行负载和性能测试之前,请创建 AWS 支持票证,将您计划的测试通知 MediaTailor 服务团队。这可确保:

  • 该服务已准备好满足您的预期负载水平

  • 在测试时段内有适当的容量可用

  • 您的测试不会被误认为是生产事件

  • 您将获得有关测试最佳实践和限制的指导

在您的支持请求中包括:预期的并发用户数、测试持续时间、地理区域以及您计划测试的任何特定场景。

  1. 测试并发用户场景:

    • 模拟多个并发观众

    • 测试 CDN 扩展和缓存性能

    • 监控负载下的源服务器性能

    • 验证是否 MediaTailor 可以处理并发会话

  2. 衡量绩效指标:

    • 监控负载下的响应时间

    • 检查缓存命中率是否符合预期(热门内容的命中率> 80%)

    • 测量不同场景下第一帧的时间

    • 跟踪负载峰值期间的错误率

  3. 测试故障转移场景:

    • 在 ADS 不可用时测试行为

    • 测试源服务器故障转移

    • 验证错误处理和恢复

    • 测试 CDN 边缘位置故障转移

成功标准:系统应在预期负载下保持可接受的性能,并在故障期间正常降级。在执行之前,请务必联系 AWS Supp ort,他们会批准您的负载测试计划。