当前位置: 首页 > news >正文

【新手入门软件测试--该如何分辨前后端问题及如何定位日志--前后端问题分辨与日志定位查询问题】

前后端问题分辨与日志定位查询

  • 一、前端问题
    • 1. 页面无法加载
    • 2. 样式错乱
    • 3. API请求失败
    • 4. 数据格式错误
    • 5. 跨域请求问题
  • 二、后端问题
    • 6. 表单验证失败
    • 7. 数据库连接失败
    • 8. 请求超时
    • 9. 权限问题
    • 10. JavaScript运行错误
  • 三、日志查询的方法
    • 1. 查看日志文件
    • 2. 过滤关键字
    • 3. 实时查看日志

一、前端问题

1. 页面无法加载

  • 表现:用户打开页面时只看到空白或加载中。
  • 实例:用户报告说访问首页后没有任何内容。
  • 定位与解决
    • 检查控制台:查看是否有404或JavaScript错误。
    • 解决方案:确认HTML、CSS和JavaScript文件的路径正确,并确保服务器正常运行。

2. 样式错乱

  • 表现:页面布局与设计不符,元素重叠或错位。
  • 实例:用户反馈按钮位置不对,样式失效。
  • 定位与解决
    • 使用开发者工具:检查元素的CSS属性,确认样式是否被覆盖。
    • 解决方案:检查CSS文件是否正确加载,修复样式冲突。

3. API请求失败

  • 表现:前端通过AJAX请求数据时,收到错误响应。
  • 实例:用户尝试登录,点击“提交”后返回404错误。
  • 定位与解决
    • 查看网络请求:在“网络”选项卡中查看请求状态和返回内容。
    • 解决方案:检查API路径是否正确,并确认后端服务已启动。

4. 数据格式错误

  • 表现:后端返回的数据结构与前端预期不一致。
  • 实例:用户在表单提交后,收到错误格式的返回数据。
  • 定位与解决
    • 检查API文档:确认后端返回的数据格式是否符合预期。
    • 解决方案:修改后端代码,确保返回的数据结构正确。

5. 跨域请求问题

  • 表现:前端无法访问后端API,控制台报错CORS。
  • 实例:用户尝试从不同域名请求数据时,出现跨域错误。
  • 定位与解决
    • 查看控制台错误:检查具体的CORS错误信息。
    • 解决方案:在后端设置CORS策略,允许特定源进行请求。

二、后端问题

6. 表单验证失败

  • 表现:用户提交表单时,未显示验证错误或提交无效数据。
  • 实例:用户填写表单,提交后没有提示信息。
  • 定位与解决
    • 检查JavaScript代码:查看表单验证逻辑是否正常。
    • 解决方案:确保在表单提交前进行有效性检查,并给予用户反馈。

7. 数据库连接失败

  • 表现:后端无法读取或写入数据库。
  • 实例:用户尝试登录时,后端返回“无法连接到数据库”的错误。
  • 定位与解决
    • 检查后端日志:查看是否有数据库连接错误。
    • 解决方案:确认数据库服务运行,并检查连接配置(如用户名、密码、端口)。

8. 请求超时

  • 表现:前端请求长时间无响应,显示超时。
  • 实例:用户请求数据时,页面长时间无反应。
  • 定位与解决
    • 查看网络请求:确认请求是否超时,以及响应时间。
    • 解决方案:优化后端处理逻辑,确保快速响应。

9. 权限问题

  • 表现:用户访问受限资源时返回403或401错误。
  • 实例:用户尝试访问管理页面时,显示未授权。
  • 定位与解决
    • 检查用户状态:确认用户是否已登录及其角色权限。
    • 解决方案:修复权限设置,确保用户具有访问所需资源的权限。

10. JavaScript运行错误

  • 表现:用户在页面操作时,控制台报错,功能无法使用。
  • 实例:用户点击某个按钮时,出现Uncaught TypeError错误。
  • 定位与解决
    • 查看控制台错误信息:确认具体的错误类型和位置。
    • 解决方案:修复代码逻辑,确保所调用的对象或函数正确。

三、日志查询的方法

1. 查看日志文件

  • 使用 lessmore 命令

    less /path/to/logfile.log
    
  • 查看文件的前100行

    head -n 100 /path/to/logfile.log
    
  • 查看文件的后100行

    tail -n 100 /path/to/logfile.log
    

2. 过滤关键字

  • 使用 grep 过滤特定关键字

    grep "关键字" /path/to/logfile.log
    
  • 查看某一特定接口的日志

    grep "/api/specific-endpoint" /path/to/logfile.log
    
  • 查看某一特定用例的日志(假设用例有特定的标识符):

    grep "用例ID" /path/to/logfile.log
    

3. 实时查看日志

  • 结合 tailgrep 实时查看特定关键字的日志
    tail -f /path/to/logfile.log | grep "关键字"
    

推荐阅读:
Postman深入测试接口的详细指南
测试小白–如何写好测试用例–测试用例编写的方法


以上均为本人自我总结,需要帮助请私信我,及欢迎各位前来探讨~

相关文章:

【新手入门软件测试--该如何分辨前后端问题及如何定位日志--前后端问题分辨与日志定位查询问题】

前后端问题分辨与日志定位查询 一、前端问题1. 页面无法加载2. 样式错乱3. API请求失败4. 数据格式错误5. 跨域请求问题 二、后端问题6. 表单验证失败7. 数据库连接失败8. 请求超时9. 权限问题10. JavaScript运行错误 三、日志查询的方法1. 查看日志文件2. 过滤关键字3. 实时查…...

【Java Web】DAO模式及单例模式(含代码示例)

文章目录 JDBC封装DAO模式实体类DAO接口DAO实现类数据源配置基础DAO类业务逻辑层 单例模式饿汉式懒汉式 JDBC封装 JDBC(Java Database Connectivity)封装是一种将 JDBC 的基本操作和常见的数据库访问逻辑封装成易于使用的工具类或框架的方法。这样做的目…...

深入探讨SEO分析技巧助力网站流量提升

内容概要 在当前的数字化时代,SEO分析的重要性不言而喻。它是提升网站流量的关键工具,帮助站长有效地优化网站内容和结构。通过系统的SEO分析,站长可以掌握用户搜索行为和需求,从而制定出更具针对性的内容策略。例如,…...

Chrome 130 版本开发者工具(DevTools)更新内容

Chrome 130 版本开发者工具(DevTools)更新内容 一、网络(Network)面板更新 1. 重新定义网络过滤器 网络面板获新增了一些过滤条件,这些过滤条件是根据反馈重新设计的,特定于类型的过滤条件保持不变&…...

深度学习基础知识-残差网络ResNet

目录 一、ResNet 的核心思想:残差学习(Residual Learning) 二、ResNet 的基本原理 三、ResNet 网络结构 1. 残差块(Residual Block) ResNet 的跳跃连接类型 2. 网络结构图示 四、ResNet 的特点和优势 五、ResNe…...

Linux云计算个人学习总结(二)

高级文件系统 一、RSYNC概述 1、作用:快速的文件复制工具(支持本地和远程),以及删除、查看等基本功能。 2、特点:支持实时(inotify、sersync)的增量备份工具3、模式:检查模式&#…...

Java入门(7)--网络编程

Java网络编程:构建网络应用的基石 🌐 🎯 掌握Java网络编程,打造强大的网络应用! 在上一篇文章中,我们探讨了Java的I/O操作和反射机制。今天,让我们深入学习Java网络编程,了解如何构建…...

[思考记录]思维局限,以为懂了

最近配合整理一些内容,找到较早期的某些产品设计资料在翻阅回顾。在这次回顾过程中,发现当时自己的理解存在很多局限。 以资源体系的设计为例,那时自认为已经“懂了”,对相关的概念、作用关系、组成及实现等都有一定的了解&#x…...

力扣题目解析--最长公共前缀

题目 编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀,返回空字符串 ""。 示例 1: 输入:strs ["flower","flow","flight"] 输出:"fl"示例 2&#xff…...

不画饼——研究生学习和赚钱的平衡点

在现代社会中,年轻人面临着学习和赚钱之间的矛盾。尤其是在经济压力日益增大的背景下,如何在这两者之间找到合适的平衡点,成为了许多学生和职场新人面临的重要问题。本文将探讨在何种情况下应该听从老师的建议,专注于学习&#xf…...

华为实时视频使用FLV播放RTSP流

import flvjs from ‘flv.js’; 安装flv <video style"width:100%;height:100%;" ref"videoHWRef" ></video>// src 华为rtsp流 rtsp://admin:Huaweivideo10.10.8.151:554/xxx/trackID1// url 需要后端提供视频源地址playVideo() {if (fl…...

JAVA设计模式之【建造者模式】

1 定义 建造者模式&#xff08;Builder Pattern&#xff09;使用多个简单的对象一步一步构建成一个复杂的对象。这种类型的设计模式属于创建型模式&#xff0c;它提供了一种创建对象的最佳方式。 2 类图 产品类&#xff08;Product&#xff09;&#xff1a;表示被创建的复杂…...

【jvm】为什么Xms和Xmx的值通常设置为相同的?

目录 1. 说明2. 避免性能开销3. 提升稳定性4. 简化配置5. 优化垃圾收集6. 获取参数6.1 代码示例6.2 结果示例 1. 说明 1.-Xms 和 -Xmx 参数分别用于设置堆内存的初始大小&#xff08;最小值&#xff09;和最大大小。2.在开发环境中&#xff0c;开发人员可能希望快速启动应用程…...

windows查看net网络监听端口命令和工具(ipconfig、netstat、tasklist、TCPView)

文章目录 使用命令提示符(CMD)查看网络连接和配置使用 netstat 命令查看监听端口查看特定的端口查看TCP监听端口tasklist查看对应进程ID的程序Get-NetTCPConnection 命令使用 TCPView工具使用命令提示符(CMD) 查看网络连接和配置 ipconfig :显示所有网络 适配器的当前 TC…...

JAVA-数据结构- 二叉搜索树

1.搜索树 前面我们已经使用C语言学习完了二叉树&#xff0c;懂得了一些二叉树的基本性质已经实现方法 https://mp.csdn.net/mp_blog/creation/editor/139572374&#xff0c;本文我们来一起进行二叉树的衍生-二叉搜索树 1.1 概念 二叉搜索树又称二叉排序树&#xff0c;它或者是…...

深入研究 RAG 流程中的关键组件

我们已经看到了整个RAG流程&#xff0c;并获得了第一手的实践经验&#xff0c;您可能会对RAG流程中一些组件的使用和目的存在很多疑惑&#xff0c;比如RunnablePassthrough。在本节中&#xff0c;我们将进一步了解这些关键组件。 RAG的核心模型思想是将一个复杂的任务分解为多…...

新手如何学习python并快速成为高手

英雄Python入门到精通链接&#xff1a;https://pan.quark.cn/s/57162ec366a9 学习Python作为新手&#xff0c;有以下几个步骤&#xff1a; 学习基本概念和语法&#xff1a;首先&#xff0c;你需要学习Python的基本概念和语法。可以通过在线教程、书籍或者视频教程来学习。了解…...

Linux历史命令history增加执行时间显示

Centos系统默认历史命令显示如下 为了更好的溯源&#xff0c;获取执行命令的准确时间&#xff0c;需要增加一些配置 设置环境变量 vim /etc/profile 在最下面添加以下环境配置 export HISTTIMEFORMAT"%Y-%m-%d %H:%M:%S " 立即刷新该环境变量 source /etc/pro…...

从 vue 源码看问题 — 你知道 Hook Event 吗?

前言 在之前的几篇文章中&#xff0c;都有提到 vue 中调用生命周期钩子时是通过 callHook() 方法进行调用的&#xff0c;比如在初始化篇章中调用 beforeCreate 和 created 生命周期钩子方式如下: 那么接下来一起来了解下到底什么是 Hook Event &#xff1f; Hook Event 是什…...

信息安全工程师(68)可信计算技术与应用

前言 可信计算技术是一种计算机安全体系结构&#xff0c;旨在提高计算机系统在面临各种攻击和威胁时的安全性和保密性。 一、可信计算技术的定义与原理 可信计算技术通过包括硬件加密、受限访问以及计算机系统本身的完整性验证等技术手段&#xff0c;确保计算机系统在各种攻击和…...

每日OJ题_牛客_相差不超过k的最多数_滑动窗口_C++_Java

目录 牛客_相差不超过k的最多数_滑动窗口 题目解析 C代码 Java代码 牛客_相差不超过k的最多数_滑动窗口 相差不超过k的最多数_牛客题霸_牛客网 (nowcoder.com) 描述&#xff1a; 给定一个数组&#xff0c;选择一些数&#xff0c;要求选择的数中任意两数差的绝对值不超过 …...

来咯来咯webSocket

在项目总目录下 设置socketServe文件夹 里面创建下面两个文件 使用的时候需要开启 node webSocket.cjs var { Server } require(ws); var moment require(moment);const wss new Server({port: 8888 });let id 0; let onlineMemberList []; const defaultUser user;wss…...

Android CALL关于电话音频和紧急电话设置和获取

获取音频服务&#xff0c;设置音源类型&#xff1a;电话类型和获取最大电话音量&#xff0c;响铃模式 private AudioManager mAudioManager; mAudioManager (AudioManager) getSystemService(AUDIO_SERVICE); mAudioManager.setStreamVolume(AudioManager.STREAM_VOIC…...

【春秋云镜】CVE-2023-23752

目录 CVE-2023-23752漏洞细节漏洞利用示例修复建议 春秋云镜&#xff1a;解法一&#xff1a;解法二&#xff1a; CVE-2023-23752 是一个影响 Joomla CMS 的未授权路径遍历漏洞。该漏洞出现在 Joomla 4.0.0 至 4.2.7 版本中&#xff0c;允许未经认证的远程攻击者通过特定 API 端…...

C#-__DynamicallyInvokable

[__DynamicallyInvokable] 属性是用于 .NET Framework 中的特性之一。这个特性通常用于标记在动态语言运行时中可以进行调用的方法或属性。 当一个方法或属性被标记为 [__DynamicallyInvokable]&#xff0c;它表明这个成员在动态语言的环境中是可调用的。换句话说&#xff0c;…...

2024年最新10款顶级项目管理软件排行

项目管理软件在现代项目管理中扮演着至关重要的角色&#xff0c;它不仅仅是一个工具&#xff0c;更是一种高效、系统化的方法来管理和优化项目流程&#xff0c;帮助项目经理和团队成员快速了解项目状态&#xff0c;加速项目进展。 进度猫 进度猫是一款以甘特图为向导的轻量级…...

Python NLTK进阶:深入自然语言处理

目录 Python NLTK进阶&#xff1a;深入自然语言处理 1. 文本处理技术 1.1 命名实体识别&#xff08;NER&#xff09; 1.2 共指消解 2. 语义分析 2.1 语义角色标注&#xff08;SRL&#xff09; 2.2 词义消歧&#xff08;Word Sense Disambiguation&#xff09; 3. 机器学…...

【React 的理解】

谈一谈你对 React 的理解 对待这类概念题&#xff0c;讲究一个四字口诀“概用思优”&#xff0c;即“讲概念&#xff0c;说用途&#xff0c;理思路&#xff0c;优缺点&#xff0c;列一遍” 。 React 是一个网页 UI 框架&#xff0c;通过组件化的方式解决视图层开发复用的问题&a…...

软件压力测试有多重要?北京软件测试公司有哪些?

软件压力测试是一种基本的质量保证行为&#xff0c;它是每个重要软件测试工作的一部分。压力测试是给软件不断加压&#xff0c;强制其在极限的情况下运行&#xff0c;观察它可以运行到何种程度&#xff0c;从而发现性能缺陷。 在数字化时代&#xff0c;用户对软件性能的要求越…...

十四届蓝桥杯STEMA考试Python真题试卷第二套第五题

来源:十四届蓝桥杯STEMA考试Python真题试卷第二套编程第五题 本题属于迷宫类问题,适合用DFS算法解决,解析中给出了Python中 map() 和列表推导式的应用技巧。最后介绍了DFS算法的两种常见实现方式——递归实现、栈实现,应用场景——迷宫类问题、图的连通性、树的遍历、拓朴排…...