软件测试之登录测试详解

news2024/11/9 6:24:57

一、功能测试--登录功能性测试用例包括:1.什么都不输入,点击提交按钮,看提示信息。(非空检查)2.输入已注册的用户名和正确的密码,验证是否登录成功;3.输入已注册的用户名和不正确的密码,验证是否登录失败,并且提示信息正确;4.输入未注册的用户名和任意密码,验证是否登录失败,并且提示信息正确;5.用户名和密码两者都为空,验证是否登录失败,并且提示信息正确;6.用户名和密码两者之一为空,验证是...

一、功能测试--登录

功能性测试用例包括:

1.什么都不输入,点击提交按钮,看提示信息。(非空检查)

2.输入已注册的用户名和正确的密码,验证是否登录成功;

3.输入已注册的用户名和不正确的密码,验证是否登录失败,并且提示信息正确;

4.输入未注册的用户名和任意密码,验证是否登录失败,并且提示信息正确;

5.用户名和密码两者都为空,验证是否登录失败,并且提示信息正确;

6.用户名和密码两者之一为空,验证是否登录失败,并且提示信息正确;

7.如果登录功能启用了验证码功能,在用户名和密码正确的前提下,输入正确的验证码,验证是否登录成功;

8.如果登录功能启用了验证码功能,在用户名和密码正确的前提下,输入错误的验证码,验证是否登录失败,并且提示信息正确。

9.用户名和密码是否大小写敏感;

10.页面上的密码框是否加密显示;

11.后台系统创建的用户第一次登录成功时,是否提示修改密码;

12.忘记用户名和忘记密码的功能是否可用;

13.前端页面是否根据设计要求限制用户名和密码长度;

14.如果登录功能需要验证码,点击验证码图片是否可以更换验证码,更换后的验证码是否可用;

15.刷新页面是否会刷新验证码;

16.如果验证码具有时效性,需要分别验证时效内和时效外验证码的有效性;

17.用户登录成功但是会话超时后,继续操作是否会重定向到用户登录界面;

18.不同级别的用户,比如管理员用户和普通用户,登录系统后的权限是否正确; 19.页面默认焦点是否定位在用户名的输入框中;

20.快捷键 Tab 和 Enter 等,是否可以正常使用。

二、接口测试--登录

这里使用的登录接口是自己通过python写的

针对于接口测试可以使用工具或者自己编写脚本进行接口测试。

使用工具进行接口测试,这里我用的是国产的接口测试工具apipost,它还支持接口文档的生成。

在工具里面选择请求方法,现在一般使用的方法为:get、post。输入url:http://127.0.0.1:8888/login, 因为是登录还需要传递用户名和密码这两个参数,post方法在body携带参数,点击发生查看响应结果

自己编写脚本进行进行登录的接口测试,这里使用的是python+requests,如图:

三、性能测试--登录

针对于接口测试的性能测试我们可以使用jmeter,jmeter是java开发的一款轻量级的性能测试工具。

在做登录的性能测试的时候,需要考虑验证码的问题,要么去除验证码,要么设置一个万能验证码,这里还是用上面那个登录接口,进行性能测试。

打开jmeter,设置线程组,集合点、请求、查看结果树、汇总报告、聚合报告等,可根据自己的需求进行添加

编写登录的http请求,如图:

这里对一个接口并发十次,但是真正意义的登录性能测试,是多个用户进行登录。这里条件限制就用一个接口进行登录的并发测试。

查看并发的结果:

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取  

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/624173.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

PerformanceRunner即将发布2023年新版本,具体功能有哪些?

PerformanceRunner(简称PR)是国内专业的支持http、https、websocket、tcp/ip、MQ等各种协议、10万海量并发、可靠的性能测试工具/压力测试工具,降低了应用系统运行风险。 PerformanceRunner即将发布2023年新版本,具体功能有哪些? 1.录制时单机…

【Python入门篇】——Python函数(函数介绍,函数的定义,函数的参数和函数的返回值)

作者简介: 辭七七,目前大一,正在学习C/C,Java,Python等 作者主页: 七七的个人主页 文章收录专栏: Python入门,本专栏主要内容为Python的基础语法,Python中的选择循环语句…

都2023年了,网络安全还能入门吗?

前言 随着互联网的发展,网络安全逐渐成为重要领域之一。由于网络攻击已成为全球规模的问题,这使得网络安全专业成为各企业的重中之重。在这篇文章中,我们将从网络安全的发展趋势、就业前景和薪资水平方面入手,分析网络安全入门的…

【集群】部署LVS-DR群集

文章目录 一、LVS-DR工作原理1. 数据包流向分析2. DR模式的特点3. ARP 解析问题3.1 问题1:ip地址冲突3.2 问题2:真实服务器的第二次ARP请求3.3 解决ARP的两个问题的设置方法 二、LVS-DR部署过程1. 配置环境2. 部署服务器2.1 环境配置2.2 LVS-DR调度器2.2…

【基础知识】一文看懂深度优先算法和广度优先算法

概览 先上个图 现在我们要访问图中的每个节点,即图的遍历。 图的遍历是指,从给定图中任意指定的顶点(称为初始点)出发,按照某种搜索方法沿着图的边访问图中的所有顶点,使每个顶点仅被访问一次&#xff…

三、django-vue-admin开源项目二次开发——后端快速实现curd及接口

上一章: 二、django-vue-admin开源项目二次开发——修改默认菜单_做测试的喵酱的博客-CSDN博客 下一章: 一、背景 我想实现接口自动化用例的管理功能。一共涉及到两张表,一张项目表,是所有的项目列表。 一张是case列表&#…

Postgresql关于JSON、JSONB的操作符、处理函数(持续更新)

一、postgresql实用函数 (只列举本次用到的函数,其他函数在文章后面有详解) 1.1、将jsonb格式的数组中的值展开/分解成单独的数据/对象? SELECT answer_id, jsonb_array_elements(option_ids)::INTEGER AS option_id FROM db_l…

Java HashMap初始化大小设置多少合适

修改公司老代码的时候,发现阿里编码规约插件提示HashMap初始化时尽量指定初始值大小,因为设置合理的初始值可以提升性能: HashMap继承自AbstractMap类,实现了Map、Cloneable、java.io.Serializable接口,是基于散列表实…

Prompt 工程指南(三)—— 高级技术篇之零样本和少样本提示

到目前为止,显而易见的是,改进提示有助于在不同任务上获得更好的结果。这就是提示工程背后的理念和目标。 虽然上篇教程介绍的基本示例已经很有趣,但在接下来的几篇教程中,我们将介绍更高级的 Prompt 提示工程技巧,使…

LabVIEW编程开发PCB测试仪

LabVIEW编程开发PCB测试仪 使用PXI和LabVIEW的PCB钉床测试仪 用于PCB(印刷电路板)的钉床测试仪,使用PXI和LabVIEW。一家电子制造公司需要测试仪来测试他们的PCB产品。钉床测试仪是一种具有连接到电路板上各个测试点的引脚的测试。电路板需要…

【大数据学习篇12】在linux上安装jupyter

下面介绍在liunx怎么安装jupyter,一步到位介绍。 1、安装Anaconda3 1.1 自己选择一个位置下载 wget https://repo.continuum.io/archive/Anaconda3-5.0.1-Linux-x86_64.sh1.2 进入自己的安装目录,安装anaconda bash Anaconda3-5.2.0-Linux-x86_64.sh一…

小程序模板语法样式与页面配置

文章和代码已经归档至【Github仓库:https://github.com/timerring/front-end-tutorial 】或者公众号【AIShareLab】回复 小程序 也可获取。 文章目录 小程序模板与配置WXML 模板语法数据绑定事件绑定小程序中常用的事件事件对象的属性列表target 和 currentTarget 的…

spark入门 高可用部署HA(五)

一、standalone基于修改部署 https://blog.csdn.net/weixin_43205308/article/details/131070277?spm1001.2014.3001.5501 二、安装ZOOKEEPER zookeeper 安装下载与集群 三、修改conf下的spark-env.sh vim conf/spark-env.sh注释以下内容(根据自己环境修改&am…

备战金九银十:大厂面试官必问MySQL连环炮全梳理,你扛得住嘛?

最近后台好多小伙伴发私信咨询阿Q,问马上就是金九银十的面试黄金期了,该如何在三个月内突击一下,以便更好地通过面试呢? 阿Q的想法就是需要对自己掌握的知识进行归纳整理,系统的、分类的去复习相关的知识点。这样也能…

公司新来了个00后测开,上来一顿操作给我秀麻了.....

开年公司新来了个同事,听说大学是学的广告专业,因为喜欢IT行业就找了个培训班,后来在一家小公司实习半年,现在跳槽来我们公司。来了之后把现有项目的性能优化了一遍,服务器缩减一半,性能反而提升4倍!给公司…

提升效率:P4VFS让虚拟文件同步更迅速、更简单

虚拟文件同步(Virtual File Sync)是一个备受期待的功能集,能够显著缩短Perforce Helix Core用户的同步时间。本篇文件将解释什么是虚拟文件同步,如何设置它以及如何使用它。 什么是虚拟文件同步? 虚拟文件同步是一项…

配置Wildfly的JDBC驱动程序

1、环境 windows10、Wildfly26.1.3、JDK8.0、mysql8.0 2、配置方式 配置Wildfly的JDBC驱动一般有两种方式 1️⃣、以module的方式安装; 2️⃣、以应用deploy的程序包方式安装; 以module方式安装,是把驱动置于应用服务器中;以…

Ubuntu 20.04 Apache2 增加不同端口站点

概述 Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器软件,可以在大多数电脑操作系统中运行。由于其跨平台和安全性[注 1],被广泛使用,是最流行的Web服务器软件之一。它快速、可靠并且可…

ROS:move_base路径规划介绍、更换全局路径规划算法(A star、Dijkstra、DWA,测试当前是哪种算法,效果展示图)

前提:需要安装navigation包,才可以运行move_base。 一.move_base路径规划包内容 二.更换全局路径规划算法(A*、Dijkstra、DWA) A*、Dijkstra属于全局路径规划、DWA属于局部路径规划。 1、move_base.launch move_base.launch文…

开源 AI 面临的挑战

译者:明明如月 人工智能的代价 尽管我坚信开源人工智能将继续蓬勃发展,但我也认为未来几年企业和政府将越来越有动机限制对新型神经网络架构和技术的应用。本文旨在预测并概述可能在本十年发生的潜在颠覆性变革,并提出一些想法和解决方案&a…