• 白盒测试


    白盒测试

    写在最初

    • 你设计的测试用例是好的测试用例吗?

    • 作为测试我们怎么确保经由我们测试上线的项目,是经过充分测试的项目?

    为什么我们要做白盒测试

    a、测试清楚、透彻

    • 完全了解开发实现逻辑,对齐三方思路:产品、开发、测试

    • 测试场景更完整:代码分支尽可能穷尽、清晰完整的等价类划分、异常场景分析

    • 测试手段更多元化:mock(依靠外界的功能可以本地代码mock)、复杂方法代码测试、debug方式等

    • 前后端分离测试:前端可以通过map local方式mock接口响应来测试,后端通过本地启动服务测试,不需要频繁构造数据,bug及其归属也更清晰

    b、了解问题发生的原因,知其然知其所以然

    c、确保测试内容和上线内容一致(code review)

    d、减少非必要的功能回归,在进行白盒测试期间就可以知道代码改动点和影响范围

    白盒测试不只是测试代码

    身为测试工程师,重要的是测试代码实现是否满足需求,所以在进行白盒测试前,我们依然需要写功能用例,然后在进行白盒测试时带着我们的功能用例去进行测试,同时考虑代码实现合理性和功能问题;切记不要太沉入到开发的代码中而忘记我们本来的功能用例

    怎么做白盒测试

    静态测试

    简单的代码,可以直接通过静态阅读代码了解实现逻辑。

    动态测试

    还是建议本地跑一下代码测试,虽然代码可能看着没问题,但是谁也保不准会看漏掉,代码只有跑一下才知道有没有问题

    开发基础知识准备

    • 工具

    • 框架

      • Spring Boot

        • 知道工程本地启动入口,以及怎么访问本地接口

        • 了解MVC概念,知道controller层、service层、mapper层

        • 知道项目配置文件application.properties/ application.yml存放位置

        • 熟悉常用注解

      • Spring Cloud

        • 了解微服务概念,知道Feign接口调用方式

      • MyBatis

        • 知道JAVA类和mapper.xml的映射关系

        • 知道MyBatis常用语法

    • 知识

      环境搭建

      • Maven本地配置及环境搭建:下载maven最新版本,配置环境变量

      • IDEA设置maven环境:设置maven home path 和settings file上面配置maven和settings.xml

      img

      • Git环境及gitlab的ssh 公钥配置

        • 下载git,配置环境变量

        • 配置ssh公钥

        • Apollo环境配置(看公司环境是否使用Apollo)

          • 公司的项目配置都放在apollo里,本地启动各个工程时,本地需要配置默认访问Apollo的测试环境配置

          • 在 /opt/settings 新建文件 server.properties,内容如下(只访问测试环境)

        env=test
        • Kafka

          • 可以本地使用Spring boot写producer 和 consumer,进行生产和消费测试

        测试步骤

        项目提测要求

        1、改动工程 + 提测分支

        2、改动点罗列

        按项目进行差异性代码Diff:提测分支和部署分支比较,知道代码改动和影响范围

        操作:工程 -> Git ->Compare with Branch ,选择分支:origin/master

        测试分类

        • 接口(新增/修改)

          • 事务问题:数据库新增、更新
          • 性能问题:数据库查询、本地缓存和redis缓存

        • topic消费

        • 定时任务

  • 相关阅读:
    [leetcode]Reverse Words in a String
    *[topcoder]ChooseTheBestOne
    priority_queue c++
    [topcoder]BoxesDiv2
    *[topcoder]IncrementingSequence
    [topcoder]HappyLetterDiv2
    c++ stl 使用汇总(string,vector,map,set)
    2014找工作总结-机会往往留给有准备的人 (转,后台开发面经)
    2015互联网校招总结—一路走来 (移动端开发面经,另有面经汇总)
    通过金矿模型介绍动态规划(转)
  • 原文地址:https://www.cnblogs.com/yjh1995/p/16226302.html
Copyright © 2020-2023  润新知