Jmeter中的断言(三)

 9--MD5Hex断言

功能特点

  • 数据完整性验证:验证响应数据的 MD5 哈希值是否符合预期。
  • 简单配置:只需提供预期的 MD5 哈希值即可。
  • 灵活配置:可以设置多个断言条件,满足复杂的测试需求。

配置步骤

  1. 添加 MD5Hex 断言

    • 右键点击需要添加断言的请求或线程组。
    • 选择“添加” -> “断言” -> “MD5Hex 断言”。
  2. 配置 MD5Hex 断言

    • 名称:给 MD5Hex 断言一个有意义的名称。
    • 预期的 MD5 哈希值:输入预期的 MD5 哈希值。
    • 忽略空响应:选择是否忽略空响应。

参数说明

  • 名称:给 MD5Hex 断言一个有意义的名称。
  • 预期的 MD5 哈希值:输入预期的 MD5 哈希值。
  • 忽略空响应:选择是否忽略空响应。

示例配置

假设我们需要测试一个Web应用,并验证登录请求的响应数据的 MD5 哈希值是否符合预期,例如预期的 MD5 哈希值为 d41d8cd98f00b204e9800998ecf8427e

  1. 创建测试计划

    • 右键点击“测试计划” -> 新建 -> 输入测试计划名称(例如“Web应用性能测试”)。
  2. 添加线程组

    • 右键点击测试计划 -> 添加 -> 线程组 -> 输入线程组名称(例如“用户模拟”)。
    • 配置线程组:
      • 线程数:1(模拟1个用户)
      • 循环次数:1(每个用户发送1次请求)
      • 启动延迟:0(立即启动)
  3. 添加登录请求

    • 右键点击线程组 -> 添加 -> 取样器 -> HTTP请求。
    • 配置HTTP请求:
      • 名称:登录请求
      • 服务器名称或IP:目标服务器的地址(例如example.com)。
      • 端口号:目标服务器的端口(例如80)。
      • 协议:HTTP或HTTPS(例如HTTP)。
      • 方法:POST
      • 路径:请求的路径(例如/login)。
      • 参数
        • 名称:username
        • :testuser
        • 名称:password
        • :testpass
  4. 添加 MD5Hex 断言

    • 右键点击登录请求 -> 添加 -> 断言 -> MD5Hex 断言。
    • 配置 MD5Hex 断言:
      • 名称:验证响应数据的 MD5 哈希值
      • 预期的 MD5 哈希值:d41d8cd98f00b204e9800998ecf8427e
      • 忽略空响应:勾选
  5. 运行测试

    • 点击工具栏上的“启动”按钮,运行测试。
    • 查看结果树监听器或查看结果文件,确保登录请求的响应数据的 MD5 哈希值为 d41d8cd98f00b204e9800998ecf8427e

优化建议

  1. 预期的 MD5 哈希值

    • 确保提供的 MD5 哈希值正确无误。可以使用在线 MD5 哈希生成工具生成正确的哈希值。
  2. 忽略空响应

    • 如果响应数据中可能存在空值,选择“忽略空响应”以避免因空值导致断言失败。
  3. 错误处理

    • 在测试计划中添加监听器(如“查看结果树”或“聚合报告”),确保断言的正确性和请求的成功率。
  4. 性能考虑

    • 如果测试中包含大量的请求,确保断言配置高效且简洁,避免影响测试性能。

示例配置详细说明

假设我们有一个简单的测试计划,包含一个线程组和一个HTTP请求,并希望验证登录请求的响应数据的 MD5 哈希值为 d41d8cd98f00b204e9800998ecf8427e

  1. 创建测试计划

    • 右键点击“测试计划” -> 新建 -> 输入测试计划名称(例如“Web应用性能测试”)。
  2. 添加线程组

    • 右键点击测试计划 -> 添加 -> 线程组 -> 输入线程组名称(例如“用户模拟”)。
    • 配置线程组:
      • 线程数:1(模拟1个用户)
      • 循环次数:1(每个用户发送1次请求)
      • 启动延迟:0(立即启动)
  3. 添加登录请求

    • 右键点击线程组 -> 添加 -> 取样器 -> HTTP请求。
    • 配置HTTP请求:
      • 名称:登录请求
      • 服务器名称或IP:example.com
      • 端口号:80
      • 协议:HTTP
      • 方法:POST
      • 路径:/login
      • 参数
        • 名称:username
        • :testuser
        • 名称:password
        • :testpass
  4. 添加 MD5Hex 断言

    • 右键点击登录请求 -> 添加 -> 断言 -> MD5Hex 断言。
    • 配置 MD5Hex 断言:
      • 名称:验证响应数据的 MD5 哈希值
      • 预期的 MD5 哈希值:d41d8cd98f00b204e9800998ecf8427e
      • 忽略空响应:勾选
  5. 运行测试

    • 点击工具栏上的“启动”按钮,运行测试。
    • 查看结果树监听器或查看结果文件,确保登录请求的响应数据的 MD5 哈希值为 d41d8cd98f00b204e9800998ecf8427e

 

8d38534f9b0a4a3db583ec789de18efc.png


 

10--SMIME断言

 

功能特点

  • 数据验证:验证响应数据是否符合 S/MIME 标准。
  • 支持加密和签名:验证响应数据是否已加密或签名。
  • 灵活配置:可以设置多个断言条件,满足复杂的测试需求。

配置步骤

  1. 添加 SMIME 断言

    • 右键点击需要添加断言的请求或线程组。
    • 选择“添加” -> “断言” -> “SMIME 断言”。
  2. 配置 SMIME 断言

    • 名称:给 SMIME 断言一个有意义的名称。
    • 验证类型:选择验证类型(例如,验证签名、验证加密)。
    • 证书文件:选择用于验证签名的证书文件。
    • 私钥文件:选择用于解密的私钥文件。
    • 私钥密码:输入私钥文件的密码(如果需要)。
    • 忽略空响应:选择是否忽略空响应。

参数说明

  • 名称:给 SMIME 断言一个有意义的名称。
  • 验证类型:选择验证类型,例如:
    • 验证签名:验证响应数据是否已签名。
    • 验证加密:验证响应数据是否已加密。
  • 证书文件:选择用于验证签名的证书文件。
  • 私钥文件:选择用于解密的私钥文件。
  • 私钥密码:输入私钥文件的密码(如果需要)。
  • 忽略空响应:选择是否忽略空响应。

示例配置

假设我们需要测试一个Web应用,并验证登录请求的响应数据是否已签名且符合 S/MIME 标准。

  1. 创建测试计划

    • 右键点击“测试计划” -> 新建 -> 输入测试计划名称(例如“Web应用性能测试”)。
  2. 添加线程组

    • 右键点击测试计划 -> 添加 -> 线程组 -> 输入线程组名称(例如“用户模拟”)。
    • 配置线程组:
      • 线程数:1(模拟1个用户)
      • 循环次数:1(每个用户发送1次请求)
      • 启动延迟:0(立即启动)
  3. 添加登录请求

    • 右键点击线程组 -> 添加 -> 取样器 -> HTTP请求。
    • 配置HTTP请求:
      • 名称:登录请求
      • 服务器名称或IP:目标服务器的地址(例如example.com)。
      • 端口号:目标服务器的端口(例如80)。
      • 协议:HTTP或HTTPS(例如HTTP)。
      • 方法:POST
      • 路径:请求的路径(例如/login)。
      • 参数
        • 名称:username
        • :testuser
        • 名称:password
        • :testpass
  4. 添加 SMIME 断言

    • 右键点击登录请求 -> 添加 -> 断言 -> SMIME 断言。
    • 配置 SMIME 断言:
      • 名称:验证响应数据的 S/MIME 签名
      • 验证类型:验证签名
      • 证书文件:选择用于验证签名的证书文件(例如certificate.pem
      • 私钥文件:选择用于解密的私钥文件(如果需要)(例如private.key
      • 私钥密码:输入私钥文件的密码(如果需要)
      • 忽略空响应:勾选
  5. 运行测试

    • 点击工具栏上的“启动”按钮,运行测试。
    • 查看结果树监听器或查看结果文件,确保登录请求的响应数据已签名且符合 S/MIME 标准。

优化建议

  1. 证书文件

    • 确保证书文件正确无误,并且证书文件路径正确。可以使用文件浏览器检查文件路径。
  2. 私钥文件

    • 确保私钥文件正确无误,并且私钥文件路径正确。如果私钥文件有密码,确保密码输入正确。
  3. 忽略空响应

    • 如果响应数据中可能存在空值,选择“忽略空响应”以避免因空值导致断言失败。
  4. 错误处理

    • 在测试计划中添加监听器(如“查看结果树”或“聚合报告”),确保断言的正确性和请求的成功率。
  5. 性能考虑

    • 如果测试中包含大量的请求,确保断言配置高效且简洁,避免影响测试性能。

示例配置详细说明

假设我们有一个简单的测试计划,包含一个线程组和一个HTTP请求,并希望验证登录请求的响应数据已签名且符合 S/MIME 标准。

  1. 创建测试计划

    • 右键点击“测试计划” -> 新建 -> 输入测试计划名称(例如“Web应用性能测试”)。
  2. 添加线程组

    • 右键点击测试计划 -> 添加 -> 线程组 -> 输入线程组名称(例如“用户模拟”)。
    • 配置线程组:
      • 线程数:1(模拟1个用户)
      • 循环次数:1(每个用户发送1次请求)
      • 启动延迟:0(立即启动)
  3. 添加登录请求

    • 右键点击线程组 -> 添加 -> 取样器 -> HTTP请求。
    • 配置HTTP请求:
      • 名称:登录请求
      • 服务器名称或IP:example.com
      • 端口号:80
      • 协议:HTTP
      • 方法:POST
      • 路径:/login
      • 参数
        • 名称:username
        • :testuser
        • 名称:password
        • :testpass
  4. 添加 SMIME 断言

    • 右键点击登录请求 -> 添加 -> 断言 -> SMIME 断言。
    • 配置 SMIME 断言:
      • 名称:验证响应数据的 S/MIME 签名
      • 验证类型:验证签名
      • 证书文件:选择用于验证签名的证书文件(例如certificate.pem
      • 私钥文件:选择用于解密的私钥文件(如果需要)(例如private.key
      • 私钥密码:输入私钥文件的密码(如果需要)
      • 忽略空响应:勾选
  5. 运行测试

    • 点击工具栏上的“启动”按钮,运行测试。
    • 查看结果树监听器或查看结果文件,确保登录请求的响应数据已签名且符合 S/MIME 标准。

e0751b5719ef4fe1846632f6dbfebf79.png


 

11--XML Schema断言

功能特点

  • 数据验证:验证 XML 响应数据是否符合特定的 XML Schema 定义。
  • 支持 XSD 文件:使用 XSD 文件定义 XML 数据的结构和约束。
  • 灵活配置:可以设置多个断言条件,满足复杂的测试需求。

配置步骤

  1. 添加 XML Schema 断言

    • 右键点击需要添加断言的请求或线程组。
    • 选择“添加” -> “断言” -> “XML Schema 断言”。
  2. 配置 XML Schema 断言

    • 名称:给 XML Schema 断言一个有意义的名称。
    • XML 响应:选择要验证的 XML 响应部分(例如,响应数据)。
    • XSD 文件:选择用于验证的 XSD 文件。
    • 忽略空白:选择是否忽略 XML 文档中的空白字符。

参数说明

  • 名称:给 XML Schema 断言一个有意义的名称。
  • XML 响应:选择要验证的 XML 响应部分,例如:
    • 响应数据:验证响应体中的 XML 数据。
    • 响应代码:验证HTTP响应代码。
    • 响应消息:验证HTTP响应消息。
    • 响应头:验证HTTP响应头。
  • XSD 文件:选择用于验证的 XSD 文件。
  • 忽略空白:选择是否忽略 XML 文档中的空白字符。

示例配置

假设我们需要测试一个Web应用,并验证登录请求的 XML 响应数据是否符合特定的 XSD 定义。

  1. 创建测试计划

    • 右键点击“测试计划” -> 新建 -> 输入测试计划名称(例如“Web应用性能测试”)。
  2. 添加线程组

    • 右键点击测试计划 -> 添加 -> 线程组 -> 输入线程组名称(例如“用户模拟”)。
    • 配置线程组:
      • 线程数:1(模拟1个用户)
      • 循环次数:1(每个用户发送1次请求)
      • 启动延迟:0(立即启动)
  3. 添加登录请求

    • 右键点击线程组 -> 添加 -> 取样器 -> HTTP请求。
    • 配置HTTP请求:
      • 名称:登录请求
      • 服务器名称或IP:目标服务器的地址(例如example.com)。
      • 端口号:目标服务器的端口(例如80)。
      • 协议:HTTP或HTTPS(例如HTTP)。
      • 方法:POST
      • 路径:请求的路径(例如/login)。
      • 参数
        • 名称:username
        • :testuser
        • 名称:password
        • :testpass
  4. 添加 XML Schema 断言

    • 右键点击登录请求 -> 添加 -> 断言 -> XML Schema 断言。
    • 配置 XML Schema 断言:
      • 名称:验证 XML 响应数据
      • XML 响应:响应数据
      • XSD 文件:选择用于验证的 XSD 文件(例如schema.xsd
      • 忽略空白:勾选
  5. 运行测试

    • 点击工具栏上的“启动”按钮,运行测试。
    • 查看结果树监听器或查看结果文件,确保登录请求的 XML 响应数据符合 XSD 定义。

优化建议

  1. XSD 文件

    • 确保 XSD 文件正确无误,并且文件路径正确。可以使用文件浏览器检查文件路径。
    • 使用 XML 验证工具(如在线 XML 验证工具)验证 XSD 文件的正确性。
  2. 忽略空白

    • 如果 XML 文档中包含大量空白字符,选择“忽略空白”以避免因空白字符导致断言失败。
  3. 错误处理

    • 在测试计划中添加监听器(如“查看结果树”或“聚合报告”),确保断言的正确性和请求的成功率。
  4. 性能考虑

    • 如果测试中包含大量的请求,确保断言配置高效且简洁,避免影响测试性能。

示例配置详细说明

假设我们有一个简单的测试计划,包含一个线程组和一个HTTP请求,并希望验证登录请求的 XML 响应数据符合特定的 XSD 定义。

  1. 创建测试计划

    • 右键点击“测试计划” -> 新建 -> 输入测试计划名称(例如“Web应用性能测试”)。
  2. 添加线程组

    • 右键点击测试计划 -> 添加 -> 线程组 -> 输入线程组名称(例如“用户模拟”)。
    • 配置线程组:
      • 线程数:1(模拟1个用户)
      • 循环次数:1(每个用户发送1次请求)
      • 启动延迟:0(立即启动)
  3. 添加登录请求

    • 右键点击线程组 -> 添加 -> 取样器 -> HTTP请求。
    • 配置HTTP请求:
      • 名称:登录请求
      • 服务器名称或IP:example.com
      • 端口号:80
      • 协议:HTTP
      • 方法:POST
      • 路径:/login
      • 参数
        • 名称:username
        • :testuser
        • 名称:password
        • :testpass
  4. 添加 XML Schema 断言

    • 右键点击登录请求 -> 添加 -> 断言 -> XML Schema 断言。
    • 配置 XML Schema 断言:
      • 名称:验证 XML 响应数据
      • XML 响应:响应数据
      • XSD 文件:选择用于验证的 XSD 文件(例如schema.xsd
      • 忽略空白:勾选
  5. 运行测试

    • 点击工具栏上的“启动”按钮,运行测试。
    • 查看结果树监听器或查看结果文件,确保登录请求的 XML 响应数据符合 XSD 定义。

 

de11dff4ba7345ed99bd3396673a8aec.png


 

12--XML断言

功能特点

  • 数据验证:验证 XML 响应数据是否是有效的 XML。
  • 支持 DTD 和 Schema:可以使用 DTD 或 Schema 进一步验证 XML 数据的结构。
  • 灵活配置:可以设置多个断言条件,满足复杂的测试需求。

配置步骤

  1. 添加 XML 断言

    • 右键点击需要添加断言的请求或线程组。
    • 选择“添加” -> “断言” -> “XML 断言”。
  2. 配置 XML 断言

    • 名称:给 XML 断言一个有意义的名称。
    • 验证类型:选择验证类型(例如,验证是否为有效的 XML、验证是否符合 DTD、验证是否符合 Schema)。
    • DTD 文件:选择用于验证的 DTD 文件(如果需要)。
    • Schema 文件:选择用于验证的 Schema 文件(如果需要)。
    • 忽略空白:选择是否忽略 XML 文档中的空白字符。

参数说明

  • 名称:给 XML 断言一个有意义的名称。
  • 验证类型:选择验证类型,例如:
    • 验证是否为有效的 XML:验证响应数据是否是有效的 XML。
    • 验证是否符合 DTD:验证响应数据是否符合特定的 DTD 定义。
    • 验证是否符合 Schema:验证响应数据是否符合特定的 Schema 定义。
  • DTD 文件:选择用于验证的 DTD 文件(如果需要)。
  • Schema 文件:选择用于验证的 Schema 文件(如果需要)。
  • 忽略空白:选择是否忽略 XML 文档中的空白字符。

示例配置

假设我们需要测试一个Web应用,并验证登录请求的 XML 响应数据是否是有效的 XML,并且符合特定的 Schema 定义。

  1. 创建测试计划

    • 右键点击“测试计划” -> 新建 -> 输入测试计划名称(例如“Web应用性能测试”)。
  2. 添加线程组

    • 右键点击测试计划 -> 添加 -> 线程组 -> 输入线程组名称(例如“用户模拟”)。
    • 配置线程组:
      • 线程数:1(模拟1个用户)
      • 循环次数:1(每个用户发送1次请求)
      • 启动延迟:0(立即启动)
  3. 添加登录请求

    • 右键点击线程组 -> 添加 -> 取样器 -> HTTP请求。
    • 配置HTTP请求:
      • 名称:登录请求
      • 服务器名称或IP:目标服务器的地址(例如example.com)。
      • 端口号:目标服务器的端口(例如80)。
      • 协议:HTTP或HTTPS(例如HTTP)。
      • 方法:POST
      • 路径:请求的路径(例如/login)。
      • 参数
        • 名称:username
        • :testuser
        • 名称:password
        • :testpass
  4. 添加 XML 断言

    • 右键点击登录请求 -> 添加 -> 断言 -> XML 断言。
    • 配置 XML 断言:
      • 名称:验证 XML 响应数据
      • 验证类型:验证是否为有效的 XML
      • Schema 文件:选择用于验证的 Schema 文件(例如schema.xsd
      • 忽略空白:勾选
  5. 运行测试

    • 点击工具栏上的“启动”按钮,运行测试。
    • 查看结果树监听器或查看结果文件,确保登录请求的 XML 响应数据是有效的 XML 并且符合 Schema 定义。

优化建议

  1. 验证类型选择

    • 根据实际需求选择合适的验证类型。例如,如果只需要验证是否为有效的 XML,选择“验证是否为有效的 XML”;如果需要验证是否符合特定的 Schema,选择“验证是否符合 Schema”。
  2. DTD 或 Schema 文件

    • 确保 DTD 或 Schema 文件正确无误,并且文件路径正确。可以使用文件浏览器检查文件路径。
    • 使用 XML 验证工具(如在线 XML 验证工具)验证 DTD 或 Schema 文件的正确性。
  3. 忽略空白

    • 如果 XML 文档中包含大量空白字符,选择“忽略空白”以避免因空白字符导致断言失败。
  4. 错误处理

    • 在测试计划中添加监听器(如“查看结果树”或“聚合报告”),确保断言的正确性和请求的成功率。
  5. 性能考虑

    • 如果测试中包含大量的请求,确保断言配置高效且简洁,避免影响测试性能。

示例配置详细说明

假设我们有一个简单的测试计划,包含一个线程组和一个HTTP请求,并希望验证登录请求的 XML 响应数据是有效的 XML 并且符合特定的 Schema 定义。

  1. 创建测试计划

    • 右键点击“测试计划” -> 新建 -> 输入测试计划名称(例如“Web应用性能测试”)。
  2. 添加线程组

    • 右键点击测试计划 -> 添加 -> 线程组 -> 输入线程组名称(例如“用户模拟”)。
    • 配置线程组:
      • 线程数:1(模拟1个用户)
      • 循环次数:1(每个用户发送1次请求)
      • 启动延迟:0(立即启动)
  3. 添加登录请求

    • 右键点击线程组 -> 添加 -> 取样器 -> HTTP请求。
    • 配置HTTP请求:
      • 名称:登录请求
      • 服务器名称或IP:example.com
      • 端口号:80
      • 协议:HTTP
      • 方法:POST
      • 路径:/login
      • 参数
        • 名称:username
        • :testuser
        • 名称:password
        • :testpass
  4. 添加 XML 断言

    • 右键点击登录请求 -> 添加 -> 断言 -> XML 断言。
    • 配置 XML 断言:
      • 名称:验证 XML 响应数据
      • 验证类型:验证是否为有效的 XML
      • Schema 文件:选择用于验证的 Schema 文件(例如schema.xsd
      • 忽略空白:勾选
  5. 运行测试

    • 点击工具栏上的“启动”按钮,运行测试。
    • 查看结果树监听器或查看结果文件,确保登录请求的 XML 响应数据是有效的 XML 并且符合 Schema 定义。

2985693b8878459591c672babe302ae8.png


 

 

 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

后端开发如何高效使用 Apifox?

对于后端开发者来说,日常工作中少不了接口的设计、调试和文档编写。你是否也曾因接口文档更新不及时、测试工具分散而头疼不已?Apifox,这款全能型工具,或许能成为你的效率神器! Apifox究竟有哪些功能能帮助后端开发者…

JMeter监听器与压测监控之 InfluxDB

1. 简介 在本文中,我们将介绍如何在 Kali Linux 上通过 Docker 安装 InfluxDB,并使用 JMeter 对其进行性能监控。InfluxDB 是一个高性能的时序数据库,而 JMeter 是一个开源的性能测试工具,可以用于对各种服务进行负载测试和性能监…

操作系统基础——针对实习面试

目录 操作系统基础什么是操作系统?简述其主要功能请举例几种不同类型的操作系统,并简要说明它们的特点 操作系统基础 什么是操作系统?简述其主要功能 一、操作系统的定义 操作系统(Operating System,简称OS&#xff…

uni-app快速入门(十)--常用内置组件(下)

本文介绍uni-app的textarea多行文本框组件、web-view组件、image图片组件、switch开关组件、audio音频组件、video视频组件。 一、textarea多行文本框组件 textarea组件在HTML 中相信大家非常熟悉,组件的官方介绍见: textarea | uni-app官网uni-app,un…

CSS中Flex布局应用实践总结

① 两端对齐 比如 要求ul下的li每行四个,中间间隔但是需要两段对齐,如下图所示: 这是除了基本的flex布局外,还需要用到:nth-of-type伪类来控制每行第一个与第四个的padding。 .hl_list{width: 100%;display: flex;align-items…

Spring Boot + Vue 基于 RSA 的用户身份认证加密机制实现

Spring Boot Vue 基于 RSA 的用户身份认证加密机制实现 什么是RSA?安全需求介绍前后端交互流程前端使用 RSA 加密密码安装 jsencrypt库实现敏感信息加密 服务器端生成RSA的公私钥文件Windows环境 生成rsa的公私钥文件Linux环境 生成rsa的公私钥文件 后端代码实现返…

Three.js + AI:AI 算法生成 3D 萤火虫飞舞效果~

AI 驱动 3D 动画 大家好,我是石小石!随着 Web 技术的发展,Three.js 成为构建 3D 图形和动画的主流工具。与此同时,人工智能(AI)在图像处理、动作生成等领域表现出强大能力。将 AI 与 Three.js 结合&#x…

bpmn.js显示流程图

目标&#xff1a;vue2 接口返回xml - 弹窗显示流程图 - 根据需求高亮节点 一、安装依赖 npm i bpmn-js 添加上的版本是 "bpmn-js": "^11.5.0" 二、只读显示流程图 <div ref"canvas" style"width:100%;height: calc(100vh…

Vue Form表单的使用,rules格式校验网络校验,键盘按键监听

Form表单 rules格式校验 可以在validator中进行网络请求&#xff0c;实现网络校验 const formRules {userName: [{required: true, message: "用户名不能为空", trigger: blur}, {min: 5,max: 10,message: "长度必须5-10位",trigger: blur}],passWord: …

单片机智能家居火灾环境安全检测-分享

目录 前言 一、本设计主要实现哪些很“开门”功能&#xff1f; 二、电路设计原理图 电路图采用Altium Designer进行设计&#xff1a; 三、实物设计图 四、程序源代码设计 五、获取资料内容 前言 传统的火灾报警系统大多依赖于简单的烟雾探测器或温度传感器&#xff0c;…

TCP并发服务器

端口号快速复用函数 通过getsockopt和setsockopt函数&#xff0c;管理套接字的端口号复用设置。具体操作如下&#xff1a; getsockopt函数 int getsockopt(int sockfd, int level, int optname, void *optval, socklen_t *optlen);功能&#xff1a;获取套接字的某些选项的属性。…

vue3的宏到底是什么东西?

前言 从vue3开始vue引入了宏&#xff0c;比如defineProps、defineEmits等。我们每天写vue代码时都会使用到这些宏&#xff0c;但是你有没有思考过vue中的宏到底是什么&#xff1f;为什么这些宏不需要手动从vue中import&#xff1f;为什么只能在setup顶层中使用这些宏&#xff…

无重复字符的最长子串习题分析

习题&#xff1a;&#xff08;leetcode 3 &#xff09; 给定一个字符串s&#xff0c;请你找出其中不含有重复字符的最长子串的长度。 分析&#xff1a; 对于寻找子串、数组中某部分等&#xff0c;我们可以使用滑动窗口和双指针思想来求解。 滑动窗口通常用于解决需要连续子…

Linux服务器的Tomcat9中部署War包

文章目录 Linux服务器的Tomcat9中部署War包一、引言二、部署Tomcat91、安装Tomcat91.1、下载Tomcat91.2、解压安装1.3、启动Tomcat9 2、配置环境变量&#xff08;可选&#xff09; 三、部署War包1、准备War包2、部署War包3、配置Context&#xff08;可选&#xff09; 四、启动和…

如果接口返回值图片有很长一串码,需要添加前缀

需要在前面添加前缀&#xff1a;data:image/jpeg;base64,然后将值赋值给<img :src"originalImage" /> this.tableLists.map((item)>{item.originalImage "data:image/jpeg;base64,"item.originalImage})以上方法会导致出现一个小bug&#xff0c;…

2024年11月21日Github流行趋势

项目名称&#xff1a;twenty 项目维护者&#xff1a;charlesBochet, lucasbordeau, Weiko, FelixMalfait, bosiraphael项目介绍&#xff1a;正在构建一个由社区支持的现代化Salesforce替代品。项目star数&#xff1a;21,798项目fork数&#xff1a;2,347 项目名称&#xff1a;p…

Excel——宏教程(精简版)

一、宏的简介 1、什么是宏&#xff1f; Excel宏是一种自动化工具&#xff0c;它允许用户录制一系列操作并将其转换为VBA(Visual Basic for Applications)代码。这样&#xff0c;用户可以在需要时执行这些操作&#xff0c;以自动化Excel任务。 2、宏的优点 我们可以利用宏来…

【eNSP】OSPF、RIP与静态路由互通实验(四)

OSPF、RIP与静态路由互通实验 实验目的实验要求实验步骤步骤 1&#xff1a;配置R1、R2、R3、R4、R5、R6、R7的端口ip步骤 2&#xff1a;配置R1、R2、R3的OSPF动态路由协议步骤 3&#xff1a;配置R3、R4、R5的RIP动态路由协议步骤 4&#xff1a;配置R3作为边界路由器&#xff0c…

Vision-Language Models for Vision Tasks: A Survey 论文解读

摘要 大多数视觉识别研究在深度神经网络&#xff08;DNN&#xff09;训练中严重依赖于人工标注的数据&#xff0c;且通常为每个单一的视觉识别任务训练一个DNN&#xff0c;导致这种视觉识别范式既繁琐又耗时。为解决这两个挑战&#xff0c;近年来对视觉语言模型&#xff08;VL…

Stable Diffusion核心网络结构——U-Net

​ &#x1f33a;系列文章推荐&#x1f33a; 扩散模型系列文章正在持续的更新&#xff0c;更新节奏如下&#xff0c;先更新SD模型讲解&#xff0c;再更新相关的微调方法文章&#xff0c;敬请期待&#xff01;&#xff01;&#xff01;&#xff08;本文及其之前的文章均已更新&a…