功能开发的测试姿势

作者: triplestudio | 来源:发表于2019-07-23 16:37 被阅读4次

测试优先!

所谓测试优先,就是要先把测试准备好,以便在功能做了后马上可以测试

提出测试优先,也很好地说明了测试的重要性,这是无数工程师呕心的体验得出的结论,不测试,或不能很好地进行测试,往往会付出惨重的代价。

当不好进行测试时

(1) 完成一次测试过于痛苦,极大降低工作效率;
(2) 很可能选择不进行全面测试,在压力之下先上线,后患无穷。

不正确的测试姿势

(1)把简单的使用当作全部的测试
把测试认为是简单的使用一下是不正确的。
要正确认识测试的重要性,以开发同等重要的方式将测试作为工作内容,同时对测试分级别、场景、角色分别予以开展。
(2)没有测试计划
对测试没有进行系统化的分析,以碰运气的方式零星地进行。事实上,测试是需要工程化、系统化进行分析与设定的,它也应该有清晰的目标与范围。为了能全面覆盖方方面面,需要严谨地制定测试计划。即便简单点,至少需要列个涉及关键步骤的清单来进行,根据清单来能避免遗漏,呵呵。
(3)没有测试记录
测试发现的问题有多种,解决的方式也有多种选择,对测试不仅要记录测试的结果,同时要记录问题可能存在的隐性特性及处理办法,并要形成问题处理清单做为再次验证的基础。

测试优先小小践行

无论的大方面的系统,还是小方面的功能,都可以践行测试先行!
举个小例,假如有以下代码,我们需要在 // 处添加功能部分 。

$.ajax({
    type: "POST",
    url: "xxxx/yyyy",
    data: { act: "fetch" },
    success: function (resp) {
            var jo = eval("(" + resp + ")");
            var r0 = jo.calvalue; 
            // 添加功能部分,根据取得的值完成某些渲染
    },
    error: function (h) {
        alert(h.statusText);
    }
});

因为它的执行路径依赖于 url 的请求,所以对添加部分的测试很不方便。此时,如何能方便地测试就是重要的事情了。在做这件事之前,先应该规划好如何测试这部分代码确保它是可运行的。

看得出,当我们以此为重去做的时候,很可能会把这一部分独立成一个方法,以便于独立地进行测试。于是对代码的组织就提出了要求,事实上它倒逼着我们更好的组织自己的代码。如此即方便测试,结构又更优雅。

可能会形成这样的方法:

function processCalvalue(calvalue) {
    // 具体处理代码;
}

上述 success 中则变成了简单的一句,功能在上边的方法中完成。

success: function (resp) {
        var jo = eval("(" + resp + ")");
        var r0 = jo.calvalue; 
        // 添加功能部分,根据取得的值完成某些渲染
        processCalvalue(r0); 
},

在本地进行测试的代码就可能是:

$(function () {
    // 测试运行
    processCalvalue(123456);    
})

良好的测试准备与习惯会为您节省非常多的时间,并让自己更有把握。共勉!

相关文章

  • 功能开发的测试姿势

    测试优先! 所谓测试优先,就是要先把测试准备好,以便在功能做了后马上可以测试。 提出测试优先,也很好地说明了测试的...

  • 单元测试、功能测试、回归测试

    单元测试 开发阶段,开发人员代码级别的测试 功能测试 某个功能或特性完成后,测试人员对这个功能或特性进行的单独的测...

  • 基于Redux思想编写高度可测试的iOS代码

    测试驱动开发 1.什么是测试驱动开发?基本思想就是在开发功能代码之前,先编写测试代码,然后只编写使测试通过的功能代...

  • 移动APP测试中的功能与非功能测试

    移动APP测试中的功能与非功能测试 每项开发的新功能都需要进行测试。移动app测试中功能测试是一个重要方面,移动测...

  • 在git上翻船的前端老同学

    事情经过:我之前的开发流程都是创建一个功能分支,功能分支开发完再合到测试分支,测试分支测试通过后,把测试分支合并到...

  • Karma - 01 介绍

    测试一般包含几个方面: 单元测试 功能测试 性能测试 安全测试 开发人员最常的是单元测试和功能测试。单元测试是对一...

  • 敏捷团队的App测试流程

    测试资源 App 测试任务开始前,检查各项测试资源。 以下各项都必须包含 非本期开发的 产品功能部分 产品功能需求...

  • 《持续交付》——第四章--测试策略的实现

    在正式开始开发功能之前,要先写自动化测试,确保可以验证所开发的功能是否符合需求。这些测试能够帮助团队尽早地发现不符...

  • 测试攻城师不可错过移动APP安全检测方法二三则

    每项开发的新功能都需要进行测试。移动app测试中功能测试是一个重要方面,移动测试员应该要进行手动测试和自动化测试。...

  • GIT合并分支

    Git的使用姿势 master主分支(稳定版),dev为开发分支(开发版)。develop测试稳定后,合并到mas...

网友评论

    本文标题:功能开发的测试姿势

    本文链接:https://www.haomeiwen.com/subject/gozolctx.html