【读书活动感悟分享】-特较真-《测试工程师全栈技术进阶与实践》---设计"好的"测试用例_文章

【读书活动感悟分享】-特较真-《测试工程师全栈技术进阶与实践》---设计"好的"测试用例

张永娟
发表于 2025-11-11 19:11:17

        关于“好的”测试用例的设计方法,文中提到,在面向终端用户的GUI测试中,最核心的测试点就是验证软件对用户需求的满足程度,这就是要求测试工程师对被测软件的需求有深入的理解。需要测试工程师,关注的两点。
       (1) 测试工程师在软件需求分析和设计结算就开始介入,只有真正理解了原始业务需求,才有可能从业务需求的角度去设计针对性明确,从终端用户使用场景考虑的端到端的测试用例集。---提炼用户场景测试
       (2) 再设计具体的测试用例时,首先需要搞清楚每一个业务需求所对应的多个软件功能点,然后分析出每个软件功能点对应的多个测试需求点,最后针对每个测试需求点设计测试用例。---功能点用例
        具体到测试用例设计本身的设计,也有2个关键点。
       (1)从软件功能需求出发,全面地,无遗漏地识别出测试需求是至关重要的,这将直接关系到测试用例的测试覆盖率。比如,如果没有识别到用户登录功能的安全性测试需求,那么后续设计的测试用例就完全不会涉及安全性,最终造成重要测试遗漏。
       (2)对于识别出的每个测试需求点,需要综合运用等价类划分法,边界值分析方法和错误推测方法来全面地设计测试用例。这里需要对于识别出的每个测试需求点,需要综合运用等价类划分方法、边界值分析方法和错误推测方法来全面地设计测试用例。这里需要注意的是,要综合运用这3种方法,并针对每个测试需求点的具体情况,进行灵活选择。以“用户登录”的功能性测试需求为例,首先应该对“用户名”和“密码”这两个输入项分别进行等价类划分,列出对应的有效等价类和无效等价类。对于无效等价类的识别,可以采用错误猜测法(比如,用户名包含特殊字符等)。然后基于两者可能的组合,设计出第一批测试用例。等价类划分完后,需要补充“用户名”和“密码”这两个输入项的边界值的测试用例,比如,用户名为空(NULL)、用户名长度刚刚大于允许长度、用户名包含非英文字符串等。
         测试用例设计的其他经验中,提到3个独创的测试用例设计“秘诀”
         (1)只有深入理解被测试软件的架构,才能设计出有的放矢的测试用例集,去发现系统边界以及系统集成上的潜在缺陷。作为测试工程师,切忌把整个被测系统看作一个大黑盒,必须对内部的架构有清楚的认识,比如,数据库连接方式、数据库的读写分离、消息中间件Kafka的配置、缓存系统的层级分布、第三方系统的集成等。
       (2)必须深入理解被测软件的设计与实现细节,深入理解软件内部的处理逻辑。单单根据测试需求点设计的测试用例,只能覆盖“表面”的一层,往往会覆盖不到内部的处理流程、分支处理,而没有覆盖到的部分就可能出现测试遗漏。在具体实践中,测试人员可以通过代码覆盖率指标找出可能的测试遗漏点。同时,切忌以开发代码的实现为依据设计测试用例。因为开发代码实现的错误会导致测试用例也出错,所以应该根据原始需求设计测试用例。
        (3)需要引入需求覆盖率和代码覆盖率来衡量测试执行的完备性,并以此为依据来找出遗漏的测试点。
        以上文章中所述,与我们目前的测试用例设计的思路是非常相似的。测试工程师需要深度理解需求文档,从场景测试、功能测试、易用性测试、兼容性测试、接口测试、性能测试、安全性测试等方面来设计用例。

   

         文中提到,综合运用等价类划分法,边界值分析方法和错误推测方法来全面地设计测试用例。我们不妨扩展一些,将我们页面的功能测试来总结出来一套公共的测试用例。针对于单行文本、多行文本、数值、日期整理了一套相关测试的用例,以后的用例设计中可以根据对应的类型来引入用例使用。

         


      

96 0

评论


意见反馈