前端如何避免bug的产生?
项目环境:react生态圈
界面功能基本和:增(新增一条数据)、删(删除一条数据)、查(展示列表)、改(修改数据)挂钩。
一、展示数据列表相关[判空,控制显示距离,分页是否有效,搜索是否有效]
1.渲染数据的时候要做非空判断,有数据展示列表,没有数据展示一个空的div
2.需要展示哪些字段,最好能提前订好,然后就是排列顺序,如果有特殊要求,提前提出来,当然还有就是比如:内容字段很长,是否需要做截取展示也需要考虑进去
3.列表需要展示大量数据,是否对接了分页接口,分页组件功能是否正常
4.一般会提供关键字的搜索功能,搜索功能是否有效,多条件是否有效,需要自我验证一次
二、删除功能
1.一般系统里面功点对应的是:启用和禁用,组件是switch开关,虽然功能很简单,不过需要对接后台接口,做完功能后,测试一遍,然后F5刷新一下界面,看看更改是否生效
三、新增功能
1.新增一条数据,两种模式:一弹出模态框做,这个针对数据少的情况;二跳转到一个新的界面做,针对数据量较多的情况。新增数据需要注意:是否有字段需要定义验证规则,是否非空,是否必填,是否有字段自己的规则,是否需要做异步校验,
2.保存成功后一般是跳转回到列表展示界面,如果保存失败,需要提示用户哪里有问题(这里指后台也做了对应的规则验证,数据提交到后台没有通过的情况下保错)。
四、修改功能
1.是否有不可更改字段,如果有,则此字段不可被客户修改
2.修改时,如果有时间的地方,需要注意时间的逻辑关系,开始时间是小于等于结束时间
3.修改时,和新增一样,需要注意字段是否有自己的验证规则,如果有,请保持和新增的规则一致
4.保存成功返回到列表展示界面,如果保存失败,需要提示用户哪里有问题(这里指后台也做了对应的规则验证,数据提交到后台没有通过的情况下保错)。
前端开发是可以看到的。这个看到是指页面的不正常,要么是dom不正常,要么是js报错,要么是数据有问题,基本上就在这三个方面之内。
如果有问题,
第1,先在脑子里把工作任务的业务流程在脑子里过一遍,看看是不是开发的顺序有问题;
第2,在脑子里,把开发流程分成一段一段的来考虑,看看它是在哪个阶段发生的问题。是加载?还是进入?还是生成?
第3,看看这个bug,是js引起的,还是data引起的?这是在确定问题是谁的责任。
第4,如果是js引起的,那么要在bug出现的前后不同位置,分别打上console.log来查看打印信息进行调试。
这四个流程走完,基本可以确定问题是在哪出现?如何引发的?
前端如何避免bug的产生?的更多相关文章
- 前端和后台BUG区分方法
测试工程师不只是负责发现问题,除了发现问题这种基本功外,定位问题,提出解决方案,提出预防方案也是要掌握的技能.这里先说定位问题的要求,定位问题要向深入,前提当然是对功能.产品的流程.开发方案.开发人员 ...
- android下前端开发诡异bug记录&解决方法
1.border-radius有bug,围不住background 描述:设置了border-radius后,背景色依然会从圆角里冒出来 解决方法:在设置了border-radius的容器加上back ...
- 前端开发——移动bug整理
1.ios下jquery的delegate失效问题? 解决方案: $("body").delegate(...) 改为 $(".item").delegate( ...
- (转)测试如何区别是前端的问题还是后台的bug
常常说到的一个IT项目,包括前端开发,后台开发,软件测试,架构,项目经理,产品需求.那么对于一位优秀的软件测试工程师来说,需要区分前端和后台的工作就显得尤为重要. - 什么是前端和后台 简而言之,前端 ...
- 前端Bug解决方案
没错!我正在写bug呢!不管你是小白还是大牛,写bug无可避免,遇到bug怎么办?别慌!毛主席教导我们"战略上藐视BUG,战术上重视BUG"!前端遇到的bug无非就三个方面结构层( ...
- 如何区分前端BUG和后台BUG?
测试工程师不只是负责发现问题,除了发现问题这种基本功外,定位问题,提出解决方案,提出预防方案也是要掌握的技能.这里先说定位问题的要求,定位问题要向深入,前提当然是对功能.产品的流程.开发方案.开发人员 ...
- 从头开始一步一步实现EF6+Autofac+MVC5+Bootstarp极简前后台ajax表格展示及分页(二)前端修改、添加表格行点击弹出模态框
在前一篇中,由于不懂jquery,前端做的太差了,今天做稍做修改,增加一个跳转到指定页面功能,表格行点击样式变化.并且在表格中加入bootstarp的按钮组,按钮点击后弹出模态框,须修改common, ...
- 一统江湖的大前端(2)—— Mock.js + Node.js 如何与后端潇洒分手
<一统江湖的大前端>系列是自己的前端学习笔记,旨在介绍javascript在非网页开发领域的应用案例和发现各类好玩的js库,不定期更新.如果你对前端的理解还是写写页面绑绑事件,那你真的是有 ...
- 5大JavaScript前端框架简介
译者按: 简要介绍五大前端框架特性 原文: Top 5 JavaScript Frameworks 译者: Fundebug 为了保证可读性,本文采用意译而非直译.另外,本文版权归原作者所有,翻译仅用 ...
随机推荐
- nomn文件分析
#encoding=gbk import os import re import math from os import path ''' 手动输入文件nmon文件路径,要截取的开始时间,结束时间 ' ...
- js-虚拟dom
问题: vdom是什么?为什么存在vdom? vdom是如何应用的,核心的api是什么? 介绍一下diff算法 1.一些虚拟dom应用了snabbdom.其中的 h函数相当于渲染成了右侧的JS虚拟节点 ...
- Vue基础认识
一:什么是Vue? vue是一个渐进式的JavaScript框架,采用的是MVVM模式.Vue 被设计为可以自底向上逐层应用.Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整 ...
- spring+mybatis所需各种服务的搭建
1.mysql5.6 2.jdk1.7 3.zookeeper 4.dubbo-admin 5.activtymq 6.maven 7.nexus 8.mybatis脚本文件生成工具使用
- jquery 下载
jquery下载所有版本(实时更新) 摘自:http://www.jq22.com/jquery-info122 插件描述:jquery下载,实时更新jquery1.2到最新3.2.1所有版本下载 j ...
- 安装Discuz
1.下载Discuz 版本文件 http://download.comsenz.com/DiscuzX/3.2/Discuz_X3.2_SC_GBK.zip 2.下载PHP http://window ...
- background-size值为cover和值为100%的区别
background-size:100% 100%;---按容器比例撑满,图片变形: background-size:cover;---把背景图片放大到适合元素容器的尺寸,图片比例不变. IE8及以下 ...
- Noip2013 提高组 Day2 T1 积木大赛
题目描述 春春幼儿园举办了一年一度的“积木大赛”.今年比赛的内容是搭建一座宽度为n的大厦,大厦可以看成由n块宽度为1的积木组成,第i块积木的最终高度需要是hi. 在搭建开始之前,没有任何积木(可以看成 ...
- 【线性代数】7-3:对角化和伪逆(Diagonalization and the Pseudoinverse)
title: [线性代数]7-3:对角化和伪逆(Diagonalization and the Pseudoinverse) categories: Mathematic Linear Algebra ...
- Linux rpm 安装MySQL
1 检查是否存在旧版本mysql (1) mysql 执行命令:rpm -qa|grep mysql,若存在旧mysql,删除查询到的旧mysql,执行: rpm -e --nodeps XXXX ...