揭秘软件测试秘籍:测试用例设计方法大揭秘

在这里插入图片描述

文章目录

  • 引言
  • 一、等价类划分
    • 1.1 定义
    • 1.2 步骤
    • 1.3 等价类划分优点和缺点
  • 二、边界值分析法
    • 2.1 定义
    • 2.2 步骤
    • 2.3 边界值分析法的优点和缺点
  • 三、判定表法
    • 3.1 定义
    • 3.2 步骤
    • 3.3 判定表组成不分
    • 3.4 判定表的优点和缺点
  • 四、正交实验法
    • 4.1 定义
    • 4.2 步骤
    • 4.3 正交实验法的优点和缺点
  • 五、状态迁移
    • 5.1 定义
    • 5.2 步骤
    • 5.3 状态迁移法的优点和缺点
  • 六、场景设计法
    • 6.1 定义
    • 6.2 步骤
    • 6.3 场景设计法的优点和缺点
  • 七、错误推断法
    • 7.1 定义
    • 7.2 步骤
    • 7.3 错误推断法的优点和缺点
  • 八、因果图法
    • 8.1 定义
    • 8.2 步骤
    • 8.3 因果图法的优点和缺点
  • 总结

在这里插入图片描述

引言

在软件开发过程中,软件测试是确保软件质量、稳定性和安全性的关键环节。而测试用例设计则是软件测试的核心任务之一,它直接影响到测试的质量和效率。因此,掌握和运用好测试用例设计方法,对于软件测试人员来说至关重要。本文将详细分析几种常见的测试用例设计方法,以期帮助测试人员更好地进行软件测试工作。

在软件开发的浩渺海洋中,软件测试如同一座坚固的灯塔,指引着产品质量与用户体验的航向。而测试用例作为软件测试的基石,其设计方法的合理性和有效性直接关系到测试的全面性和结果的准确性。本文将深入探讨软件测试中常见的测试用例设计方法,为您揭开测试工作的神秘面纱。

在这里插入图片描述

一、等价类划分

1.1 定义

等价类划分是一种常用的测试用例设计技术,它基于将输入数据划分为等价类的概念。这种方法可以帮助测试人员减少测试用例的数量,同时确保覆盖所有可能的输入情况。

1.2 步骤

以下是等价类划分的基本步骤:

  1. 理解需求:首先,彻底理解软件的需求和功能。

  2. 确定输入域:识别出需要测试的输入域,这些可能是用户输入、系统参数或配置选项。

  3. 划分有效等价类:将输入域划分为一组有效的输入值,这些值被认为是等价的,即它们对程序的输出或行为有相同的影响。

  4. 划分无效等价类:同样地,将输入域划分为一组无效的输入值,这些值在逻辑上是不合理的或不符合要求的。

  5. 设计测试用例:为每个有效等价类和无效等价类设计至少一个测试用例。理想情况下,应该选择边界值作为测试用例的输入。

  6. 确保覆盖:确保所有的等价类都被至少一个测试用例覆盖到,以验证程序对不同输入的反应。

  7. 执行测试用例:运行设计的测试用例,并观察程序的响应是否符合预期。

  8. 分析结果:根据测试结果,分析程序的行为是否符合需求规格,以及是否存在缺陷。

  9. 调整测试用例:如果发现缺陷或需求变更,可能需要调整或增加测试用例以覆盖新的或未被充分测试的等价类。

1.3 等价类划分优点和缺点

等价类划分优点

  • 减少测试用例数量:通过覆盖等价类而不是单独的值,可以减少需要设计的测试用例数量。
  • 提高测试效率:通过集中测试相似的输入值,可以更快地发现潜在的问题。
  • 确保边界覆盖:通过特别关注边界值,可以更有效地发现边界条件错误。

等价类划分的缺点

  • 难以识别所有等价类:在某些情况下,确定所有可能的等价类可能很困难。
  • 可能忽略特殊情况:如果等价类划分不够细致,可能会忽略一些特殊情况。

等价类划分是一种有效的测试设计方法,尤其适用于那些具有明确输入域和预期行为的测试场景。

二、边界值分析法

2.1 定义

边界值分析法是一种常用的软件测试用例设计技术,它专注于测试输入域的边界条件。这种方法基于一个假设:错误更有可能发生在输入域的边界上,而不是在域的中间。

2.2 步骤

以下是边界值分析法的基本步骤:

  1. 理解需求:首先,彻底理解软件的需求和功能。

  2. 确定输入域:识别出需要测试的输入域,这些可能是数值、字符串、日期等。

  3. 确定边界值:为每个输入域确定边界值。这些边界值通常包括:

    • 正常边界:输入域的最小值、最大值以及它们之间的值。
    • 异常边界:超出正常边界的值,这些值通常不被期望作为输入。
  4. 设计测试用例:为每个边界值设计测试用例。通常,测试用例应该包括:

    • 边界值本身(例如,如果输入域是1到100,测试用例应该包括1和100)。
    • 边界值的相邻值(例如,0和101)。
  5. 考虑等价类:在设计测试用例时,考虑等价类划分,以确保覆盖所有可能的输入情况。

  6. 执行测试用例:运行设计的测试用例,并观察程序的响应是否符合预期。

  7. 分析结果:根据测试结果,分析程序的行为是否符合需求规格,以及是否存在缺陷。

  8. 调整测试用例:如果发现缺陷或需求变更,可能需要调整或增加测试用例以覆盖新的或未被充分测试的边界值。

2.3 边界值分析法的优点和缺点

边界值分析法的优点

  • 发现边界错误:由于错误更有可能发生在边界上,这种方法有助于发现这些错误。
  • 提高测试覆盖率:通过测试边界值,可以提高测试覆盖率。
  • 减少测试用例数量:相对于测试所有可能的输入值,边界值分析可以减少所需的测试用例数量。

边界值分析法的缺点

  • 可能忽略非边界错误:专注于边界值可能会忽略一些非边界的错误。
  • 难以确定所有边界:在某些情况下,确定所有可能的边界值可能很困难。

边界值分析法是一种有效的测试设计方法,尤其适用于那些对输入值有明确限制的测试场景。通过结合等价类划分和其他测试设计技术,可以进一步提高测试的全面性和有效性。

在这里插入图片描述

三、判定表法

3.1 定义

判定表(Decision
Table)又称“决策表”,是一种系统化的方法,用于设计测试用例,特别是在处理复杂的业务逻辑和条件判断时。它通过表格形式展示条件和动作,帮助测试人员识别测试场景和可能的测试用例。

3.2 步骤

以下是使用判定表设计测试用例的基本步骤:

  1. 识别条件桩(Conditions):列出所有影响程序行为的条件或输入变量。

  2. 识别动作桩(Actions):确定程序在不同条件下应该执行的动作或输出。

  3. 创建判定表:构建一个表格,将条件桩作为列标题,动作桩作为行标题。

  4. 填充判定表:根据条件的组合填写表格,确定在每种情况下应该执行的动作。

  5. 简化判定表:如果可能,简化判定表以减少冗余的测试用例。这可以通过识别条件之间的逻辑关系来实现。

  6. 设计测试用例:根据判定表中的每个条件组合,设计相应的测试用例。

  7. 执行测试用例:运行测试用例并验证程序的行为是否符合判定表中定义的预期动作。

  8. 分析和调整:根据测试结果,分析程序的行为,如果发现问题,调整判定表和测试用例。

3.3 判定表组成不分

判定表通常包括以下几个部分:

  • 条件桩(Conditions):表格的列,列出所有可能影响程序行为的条件。
  • 动作桩(Actions):表格的行,列出在特定条件下程序应该执行的所有可能动作。
  • 规则(Rules):表格的单元格,表示在特定条件组合下应该执行的动作。
  • 条件项(Condition stubs):列出所有可能的条件值。
  • 动作项(Action stubs):列出所有可能的动作值。

3.4 判定表的优点和缺点

判定表的优点

  • 系统化方法:提供了一种系统化的方法来处理复杂的逻辑和条件。
  • 易于理解和沟通:表格形式清晰,便于团队成员理解和沟通。
  • 减少遗漏:有助于确保所有条件组合都被考虑到。
  • 易于维护:当需求变更时,判定表可以快速更新以反映新的逻辑。

判定表的缺点

  • 可能过于复杂:对于非常简单的逻辑,使用判定表可能过于复杂。
  • 创建和维护成本:对于大型系统,创建和维护判定表可能需要较多的时间和资源。

判定表是一种强大的工具,尤其适用于需要处理多个条件和动作的复杂测试场景。通过结合其他测试设计技术,如等价类划分和边界值分析,可以进一步提高测试的全面性和有效性。

四、正交实验法

4.1 定义

正交实验法是一种用于设计测试用例的统计方法,它可以帮助测试人员在有限的测试资源下,系统地覆盖多个测试因素(变量)的所有组合。这种方法基于正交数组,可以有效地减少需要测试的组合数量,同时确保测试的全面性。

4.2 步骤

以下是使用正交实验法设计测试用例的基本步骤:

  1. 确定测试因素:识别出影响软件行为的所有关键因素或变量。

  2. 确定测试因素的水平:为每个测试因素确定不同的取值或状态,这些取值称为水平。

  3. 选择正交数组:根据测试因素的数量和水平,选择合适的正交数组。正交数组是一种特殊的矩阵,可以确保每个因素的水平在测试中被均匀地覆盖。

  4. 构建测试矩阵:使用选定的正交数组作为模板,构建测试矩阵。测试矩阵的每一行代表一个测试用例,每一列代表一个测试因素。

  5. 填充测试矩阵:根据测试因素和水平,填充测试矩阵,确保每个因素的每个水平在测试矩阵中出现相同次数。

  6. 设计测试用例:根据测试矩阵,设计具体的测试用例。

  7. 执行测试用例:运行设计的测试用例,观察软件的行为,并记录测试结果。

  8. 分析和调整:根据测试结果,分析软件的行为是否符合预期,并根据需要调整测试用例。

4.3 正交实验法的优点和缺点

正交实验法的优点包括:

  • 减少测试用例数量:通过使用正交数组,可以减少需要测试的组合数量,从而节省时间和资源。
  • 全面覆盖:确保所有测试因素的水平都被均匀地覆盖,提高测试的全面性。
  • 易于分析:正交实验法提供了一种结构化的方法来分析测试结果,便于识别问题和缺陷。

正交实验法的缺点包括:

  • 复杂性:对于初学者来说,理解和应用正交实验法可能有一定的复杂性。
  • 适用性限制:正交实验法更适用于有多个测试因素和水平的情况,对于只有少数几个因素的简单测试场景可能不太适用。

正交实验法是一种有效的测试设计方法,尤其适用于需要考虑多个测试因素和它们的交互效应的复杂测试场景。通过结合其他测试设计技术,如等价类划分、边界值分析和判定表,可以进一步提高测试的全面性和有效性。

在这里插入图片描述

五、状态迁移

5.1 定义

状态迁移测试是一种基于软件系统状态和状态之间转换的测试方法。它特别适用于那些具有明显状态和状态转换逻辑的系统,例如嵌入式系统、工作流管理系统或具有复杂用户界面的应用程序。

5.2 步骤

以下是使用状态迁移法设计测试用例的基本步骤:

  1. 识别状态:确定软件系统的所有可能状态。这些状态应该能够全面描述系统的配置和行为。

  2. 定义状态属性:为每个状态定义其属性,这些属性描述了状态的特征和条件。

  3. 识别状态转换:确定状态之间的所有可能转换。这包括正常路径的转换和异常或错误情况下的转换。

  4. 定义转换条件:为每个状态转换定义触发条件,即什么事件或操作会导致状态的转换。

  5. 创建状态转换图:使用状态转换图来可视化状态和转换条件。这有助于理解系统的行为和设计测试用例。

  6. 设计测试用例:基于状态和状态转换,设计测试用例以验证:

    • 状态转换是否按预期发生。
    • 系统在每个状态下的行为是否正确。
    • 系统对非法或异常状态转换的处理。
  7. 考虑边界和异常情况:确保测试用例包括边界条件和异常路径,以测试系统的健壮性。

  8. 执行测试用例:运行测试用例,观察系统的实际行为是否与预期一致。

  9. 分析结果:根据测试执行结果,分析系统的行为,识别任何不符合预期的行为或缺陷。

  10. 调整和优化:根据测试结果,调整测试用例或系统设计,以提高测试覆盖率和系统质量。

5.3 状态迁移法的优点和缺点

状态迁移测试的优点包括:

  • 全面性:确保测试覆盖了系统的所有状态和状态转换。
  • 易于理解:状态转换图提供了系统行为的直观表示,便于理解和沟通。
  • 有助于发现缺陷:通过测试状态转换,可以发现状态管理逻辑中的错误。

状态迁移测试的缺点包括:

  • 复杂性:对于状态众多且转换复杂的系统,设计测试用例可能比较困难。
  • 资源消耗:在某些情况下,可能需要大量的测试用例来覆盖所有状态和转换。

状态迁移测试是一种强大的方法,尤其适用于那些状态和行为紧密相关的系统。通过结合其他测试设计技术,可以进一步提高测试的全面性和有效性。

六、场景设计法

6.1 定义

场景设计法(Scenario-Based Design)是一种以用户故事或使用场景为中心的测试用例设计方法。这种方法侧重于模拟真实用户的行为和交互,以确保软件在实际使用中的表现符合预期。

6.2 步骤

以下是使用场景设计法设计测试用例的基本步骤:

  1. 收集需求:从需求文档、用户访谈、市场调研等渠道收集软件的使用场景。

  2. 定义用户角色:确定不同的用户角色,每个角色可能有不同的需求和使用场景。

  3. 创建场景:基于用户角色和需求,创建具体的使用场景。这些场景应该描述用户如何与软件交互,以及他们期望的结果。

  4. 细化场景步骤:将每个场景细化为一系列具体的步骤或操作。

  5. 确定预期结果:为每个场景确定预期的结果或行为。

  6. 设计测试用例:根据场景和预期结果设计测试用例。每个测试用例应该包括场景描述、测试步骤、预期结果和实际结果。

  7. 考虑异常和边界情况:确保测试用例包括异常流程和边界条件的测试。

  8. 执行测试用例:按照设计的测试用例执行测试,并记录实际结果。

  9. 分析和调整:分析测试结果,如果发现问题,调整测试用例或软件设计。

  10. 迭代和优化:根据反馈和测试结果,不断迭代和优化场景和测试用例。

6.3 场景设计法的优点和缺点

场景设计法的优点包括:

  • 用户中心:以用户的实际使用场景为中心,更贴近用户需求。
  • 易于理解:场景描述直观易懂,便于团队成员理解和沟通。
  • 发现用户体验问题:有助于发现可能影响用户体验的问题。

场景设计法的缺点包括:

  • 可能忽略技术细节:过分关注用户场景可能忽略一些技术细节和边界条件。
  • 测试用例数量:如果场景过多,可能导致测试用例数量庞大。

场景设计法是一种有效的测试设计方法,尤其适用于那些用户体验至关重要的软件产品。通过结合其他测试设计技术,如等价类划分、边界值分析和状态迁移测试,可以进一步提高测试的全面性和有效性。
在这里插入图片描述

七、错误推断法

7.1 定义

错误推断法(Error Guessing Approach 或 Error Assumption
Approach)是一种基于经验和直觉的测试用例设计方法。这种方法假设在软件设计和实现过程中可能存在某些类型的错误,然后设计测试用例来发现这些错误。

7.2 步骤

以下是使用错误推断法设计测试用例的基本步骤:

  1. 经验总结:基于以往的测试经验和开发团队的常见错误模式,总结可能的错误类型。

  2. 确定错误假设:根据经验总结,为软件系统确定可能的错误假设或错误模式。

  3. 设计测试用例:针对每个错误假设,设计测试用例来验证软件是否能够抵抗这些错误。

  4. 考虑边界和异常情况:确保测试用例包括边界条件和异常情况,因为这些情况下更容易发现错误。

  5. 执行测试用例:运行设计好的测试用例,观察软件的行为是否符合预期。

  6. 分析结果:根据测试结果,分析软件的行为,识别任何不符合预期的行为或缺陷。

  7. 调整测试用例:如果发现问题或新的潜在错误,调整或增加测试用例以覆盖这些错误。

  8. 迭代测试:测试是一个迭代过程,根据每次测试的结果,不断优化测试用例和测试策略。

7.3 错误推断法的优点和缺点

错误推断法的优点包括:

  • 基于经验:利用测试人员的经验来预测可能的错误,提高测试的针对性。
  • 发现潜在问题:有助于发现那些可能被传统测试方法忽略的问题。
  • 灵活应用:可以根据不同的项目和团队经验灵活应用。

错误推断法的缺点包括:

  • 依赖个人经验:过度依赖测试人员的经验,可能遗漏一些未被考虑到的错误类型。
  • 可能不全面:如果错误假设不全面,可能会忽略一些测试场景。

错误推断法是一种补充性的测试设计方法,它可以与传统的测试方法(如等价类划分、边界值分析等)结合使用,以提高测试的全面性和发现问题的效率。通过结合使用多种测试设计方法,可以更有效地确保软件质量。

八、因果图法

8.1 定义

因果图法(Cause-Effect
Graphing)是一种测试用例设计技术,它基于图形化表示输入条件(原因)和预期结果(效果)之间的关系。这种方法特别适用于复杂的条件语句和决策逻辑,帮助测试人员理解程序逻辑并设计出有效的测试用例。

8.2 步骤

以下是使用因果图法设计测试用例的基本步骤:

  1. 识别原因和效果:确定软件系统中的所有输入条件(原因)和预期的输出或系统行为(效果)。

  2. 列出原因和效果:将所有原因和效果列出来,确保没有遗漏。

  3. 构建因果图:使用图形化的方式表示原因和效果之间的关系。通常,原因用方框表示,效果用圆形表示,它们之间的关系用箭头连接。

  4. 确定组合:分析原因之间的组合,确定哪些原因的组合会导致特定的效果。

  5. 设计测试用例:基于因果图中的原因和效果组合,设计测试用例。每个测试用例应该包括一组特定的输入条件和预期的输出结果。

  6. 考虑边界和异常情况:确保测试用例包括边界条件和异常情况的测试,以验证程序的健壮性。

  7. 执行测试用例:运行设计的测试用例,观察程序的实际行为是否与预期效果一致。

  8. 分析结果:根据测试执行结果,分析程序的行为,识别任何不符合预期的行为或缺陷。

  9. 调整和优化:根据测试结果,调整测试用例或程序逻辑,以提高测试覆盖率和系统质量。

8.3 因果图法的优点和缺点

因果图法的优点包括:

  • 图形化表示:提供了一种直观的方式来理解和分析复杂的逻辑关系。
  • 减少测试用例数量:通过识别原因和效果之间的组合,可以减少需要设计的测试用例数量。
  • 易于发现逻辑错误:有助于发现条件语句和决策逻辑中的错误。

因果图法的缺点包括:

  • 复杂性:对于非常复杂的系统,构建和理解因果图可能比较困难。
  • 可能忽略细节:在某些情况下,可能忽略一些细节或特殊情况。

因果图法是一种有效的测试设计方法,尤其适用于那些具有复杂逻辑和多个条件语句的系统。通过结合其他测试设计技术,如等价类划分、边界值分析和场景设计法,可以进一步提高测试的全面性和有效性。

在这里插入图片描述

总结

测试用例设计是软件测试中至关重要的一环。常见的测试用例设计方法,测试人员可以设计出更全面、更有效的测试用例,从而提高软件测试的质量和效率。当然,在实际应用中,测试人员还需要根据具体的项目需求和测试环境,灵活选择和应用这些方法,以达到最佳的测试效果。

软件测试中的测试用例设计方法多种多样,每种方法都有其独特的优点和适用场景。在实际工作中,我们需要根据项目的具体情况和需求,灵活运用这些方法,设计出全面、有效的测试用例,为软件的质量保驾护航。同时,我们也需要不断学习和探索新的测试技术和方法,以适应不断变化的软件开发环境。

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

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

相关文章

2024.05.31 校招 实习 内推 面经

绿*泡*泡VX: neituijunsir 交流*裙 ,内推/实习/校招汇总表格 1、实习 | 上汽集团零束科技2024「ZONE引擎」(内推) 实习 | 上汽集团零束科技2024「ZONE引擎」计划正式启动(内推) 2、实习 | 华为上海海思…

基于Verilog表达的FSM状态机

基于Verilog表达的FSM状态机 1 FSM1.1 Intro1.2 Why FSM?1.3 How to do 在这里聚焦基于Verilog的三段式状态机编程; 1 FSM 1.1 Intro 状态机是一种代码实现功能的范式;一切皆可状态机; 状态机编程四要素:– 1.状态State&#…

基于51单片机的简易温控水杯恒温杯仿真设计( proteus仿真+程序+设计报告+讲解视频)

基于51单片机的简易温控水杯恒温杯仿真设计( proteus仿真程序设计报告讲解视频) 仿真图proteus7.8及以上 程序编译器:keil 4/keil 5 编程语言:C语言 设计编号:S0099 1. 主要功能: 基于51单片机的简易温控水杯恒温…

Hudi extraMetadata 研究总结

前言 研究总结 Hudi extraMetadata ,记录研究过程。主要目的是通过 extraMetadata 保存 source 表的 commitTime (checkpoint), 来实现增量读Hudi表写Hudi表时,保存增量读状态的事务性,实现类似于流任务中的 exactly-once 背景需求 有个需求:增量读Hudi表关联其他Hudi…

cuda 架构设置

import torch torch.cuda.get_device_capability(0) 添加cmake options: -DCMAKE_CUDA_ARCHITECTURES86 -DCMAKE_CUDA_COMPILER/usr/local/cuda-11.8/bin/nvcc cmake工程出现“CMAKE_CUDA_ARCHITECTURES must be non-empty if set.“的解决方法_failed to detec…

振动棒出口欧盟CE认证测试项目介绍

振动棒出口欧盟CE认证测试项目介绍 一、CE认证概述 CE认证是欧盟市场的一种强制性认证,主要用于确保产品符合欧盟内的基本安全、健康和环保要求。对于许多产品,特别是电子电气产品,CE标志是进入欧盟市场的必要条件。振动棒作为成人用品&…

【附带源码】机械臂MoveIt2极简教程(六)、第三个demo -机械臂的避障规划

系列文章目录 【附带源码】机械臂MoveIt2极简教程(一)、moveit2安装 【附带源码】机械臂MoveIt2极简教程(二)、move_group交互 【附带源码】机械臂MoveIt2极简教程(三)、URDF/SRDF介绍 【附带源码】机械臂MoveIt2极简教程(四)、第一个入门demo 【附带源码】机械臂Move…

中介子方程十四

X$XFX$XEXyXαXiX$XαXiXrXkXtXyX$XpXVX$XdXuXWXαXWXuXdX$XVXpX$XyXtXkXrXiXαX$XiXαXyXEX$XFX$XEXyXαXiX$XαXiXrXkXtXyX$XpXVX$XdXuXWXαXWXuXdX$XVXpX$XyXtXkXrXiXαX$XiXαXyXEX$XαXηXtXαX$XWXyX$XyXWX$XpXαXqXηX$XeXαXhX$XdX$XpX$XdX$XyXeXαX$XEXyXαXiX$XαXiX…

Java 获取客户端 IP 地址【工具类】

Java 获取客户端 IP 地址 import javax.servlet.http.HttpServletRequest; import java.net.InetAddress;/*** 网络工具类*/ public class NetUtils {/*** 获取客户端 IP 地址** param request 请求* return {link String}*/public static String getIpAddress(HttpServletReq…

Apache Flink 如何保证 Exactly-Once 语义

一、引言 在大数据处理中,数据的一致性和准确性是至关重要的。Apache Flink 是一个流处理和批处理的开源平台,它提供了丰富的语义保证,其中之一就是 Exactly-Once 语义。Exactly-Once 语义确保每个事件或记录只被处理一次,即使在…

源码编译构建LAMP

Apache 起源 源于A Patchy Server,著名的开源Web服务软件1995年时,发布Apache服务程序的1.0版本由Apache软件基金会(ASF)负责维护最新的名称为“Apache HTTP Server”官方站点:http://httpd.apache.org/ 主要特点 开发源代码/…

Mysql union语句

开源项目SDK:https://github.com/mingyang66/spring-parent 个人文档:https://mingyang66.github.io/raccoon-docs/#/ mysql union操作符用于连接两个以上的select语句的结果组合到一个结果集,并去除重复的行,每个select语句的雷叔…

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException异常问题如何解决?

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: SELECT command denied to user XXXXXXX for table sys_users这是一个 MySQL 权限问题,表示用户 “XXXXXX” 没有对表 “sys_users” 执行 SELECT 操作的权限。 解决方案: 检查用户权限&am…

【课程总结】Day8(上):深度学习基本流程

前言 在上一篇课程《【课程总结】Day7:深度学习概述》中,我们了解到: 模型训练过程→本质上是固定w和b参数的过程;让模型更好→本质上就是让模型的损失值loss变小;让loss变小→本质上就是求loss函数的最小值&#xf…

函数用于将字符串反转以及函数的作用

在C语言中&#xff0c;你可以通过交换字符串中字符的位置来实现字符串的反转。以下是一个简单的函数示例&#xff0c;用于反转一个字符串&#xff1a; c复制代码 #include <stdio.h> #include <string.h> void reverse_string(char *str) { char *start str;…

【深度学习】深入解码:提升NLP生成文本的策略与参数详解

文章目录 解码策略解码参数公式解释代码例子区别 更详细的束搜索的解释更详细的例子解释第一步第二步第三步 解码策略和解码参数在自然语言处理&#xff08;NLP&#xff09;模型的生成过程中起着不同的作用&#xff0c;但它们共同决定了生成文本的质量和特性。 解码策略 解码…

史上最全盘点:一文告诉你什么是erp?erp系统厂商分别有哪些?

✅ 什么是ERP&#xff1f; ERP是Enterprise Resource Planning&#xff08;企业资源计划&#xff09;的简称&#xff0c;ERP是针对物资资源管理&#xff08;物流&#xff09;、人力资源管理&#xff08;人流&#xff09;、财务资源管理&#xff08;资金流&#xff09;、信息资…

人工智能与图像识别:深度融合的新趋势

人工智能与图像识别正呈现深度融合的新趋势&#xff0c;这一趋势主要体现在以下几个方面&#xff1a; 深度学习技术的推动&#xff1a; 深度学习作为人工智能的重要分支&#xff0c;为图像识别提供了强大的技术支持。尤其是卷积神经网络&#xff08;CNN&#xff09;的发展&…

java MultipartFile 转 file

在Java中&#xff0c;MultipartFile 是Spring框架中用于处理上传文件的一个接口&#xff0c;而File则是Java标准库中表示文件的一个类。要将MultipartFile转换为File&#xff0c;可以使用MultipartFile的transferTo(File dest)方法。 以下是一个将MultipartFile转换为File的示…

webshell三巨头 综合分析(蚁剑,冰蝎,哥斯拉)

考点: 蚁剑,冰蝎,哥斯拉流量解密 存在3个shell 过滤器 http.request.full_uri contains "shell1.php" or http.response_for.uri contains "shell1.php" POST请求存在明文传输 ant 一般蚁剑执行命令 用垃圾字符在最开头填充 去掉垃圾字符直到可以正常bas…