Axure实现多用户注册验证

*****多用户登录验证*****

一、(常规想法)方法:工作量较大,做起来繁琐

1、当用户名和密码相同时怎么区分两者,使用冒号和括号来区分:

eg. (admin:123456)(123456:demo)(zhang:san);由此得出前面是括号后面是冒号的就是用户名,前面是冒号后面是括号的就是密码。

2、axure判断原理:只要全局变量里面有固定格式的用户名和密码就可以使之与用户输入的用户名和密码进行匹配,从而进行判断。就算输入的用户名是实际存在的前半截也会判断用户名不存在。严格区分了大小写;
注:下面的方法有个bug:如果用户名一致,密码不一致,只要输入的用户名和密码都是存在的也可以登录(如:(admin:123)(admin:456),则登录时只要用户名admin,则输入密码123和456都能登陆成功)

3、判断用户名是否存在:编辑条件【变量值】--【不包含】---【值】---【fx】---【局部变量】--【获取用户名文本框的值n】,fx格式:[[n]]:

4、判断密码和用户名是否一一对应:编辑条件【变量值】--【不包含】---【值】---【fx】---【局部变量】--【获取用户名文本框的值n,获取密码文本框的值p】,fx格式:([[n]]:[[p]])。

注意:函数的格式要跟全局变量里面设置好的一致才能判断出来用户名和密码是否一一对应。

*****注册界面的交互效果*****

1、当输入已经注册的用户名,不填写邮件,提示:
错误:该用户名已被注册,请再选择一个
错误:请填写电子邮件地址

2、输入未被注册过的用户名,不输入邮件时提示:
错误:请填写电子邮件地址

3、电子邮件和用户名都不填写,提示:
错误:请填写用户名。
错误:请填写电子邮件地址


注:1、提示框靠在一起时线条问题,可以去掉边框以实现将两者在视觉上做出连在 一起的感觉。
2、提示框有两行提示信息的关键:
同一个动态面板中的两组状态:状态1只有一行提示信息(tishi1),状态2有两行提示信息(tishi2),且高度比状态1高(否则也放不下两个文本输入框!!)。


步骤:
1)提示框开始是隐藏的,当点击【注册】时才会显示错误提示框,且整个表单向下拉动一定距离:

选中【注册】--双击【鼠标点击时】--【显示tishi推动元件向下】--【设置面板状态tishi为tishi2】(此时两行错误提示信息不能完全显示,原因是面板尺寸不够)--【设置面板尺寸为合适的高度】或者不采用设置面板尺寸的方法,直接鼠标右键勾选【调整大小以适合内容】也可实现相同效果


注意:由于不同的情况,提示文本内容和提示框的高度不一样,所以再每次显示提示元件向下推动之前都需要将提示隐藏并拉起来。

如:隐藏tishi拉动元件向下之后再显示tishi推动元件向下。否则所有提示框动作 联合在一起就会拉不起来,与表单连在一起。

 

 

二、简便方法(推荐)

 

1、由思维导图得知显示的提示有两种情况:一条提示(状态1);
两条提示(状态2);

关键:不管是一条提示还是2条提示,不管是哪种提示的可能,显示的提示都是那六种组合起来的

 

2、首先将情况分为6种:

 

1)用户名为空:提示1写入:用户名为空;提示2a写入:用户名为空

 

2)用户名已注册:提示1写入:用户名已注册;提示2a写入:用户名已注册

 

3)用户名无效:提示1写入:用户名无效;提示2a写入:用户名无效

 

4)邮箱为空:提示1写入:邮箱为空;提示2b写入:邮箱为空

 

5)邮箱已注册:提示1写入:邮箱已注册;提示2b写入:邮箱已注册

 

6)邮箱无效:提示1写入:邮箱无效;提示2b写入:邮箱无效

 


3、若写入的提示只有一个,则显示状态1,有2个则显示状态2。

 

注意:在显示动态面板之前要将其拉上去即隐藏。

 


4、执行完1~3步骤后,第一次验证没问题,但是第二次验证又从上至下执行用例,
会出问题,所以需要在验证之前就清空提示信息。即将提示1、提示2a和提示2b的文
本都设为空,且放在用例的最开头。

 

5、当提示1和提示2a、提示2b都为空即用户名和密码都正确时跳转到登录界面。

6、完整用例详情和顺序如下图所示:

 

 

 

****全局变量的思想来判断用户名和邮箱是否已注册*****

1)全局变量设置:
(zhang:san:zhang@qq.com)(li:san:li@qq.com)(admin:123456:admin@qq.com)
(li:si:li@qq.com)

2)之前假设的用户名为“1”的时候表示已注册,则重写编辑该用例的条件为:是
否包含全局变量里的用户名:

if值于up包含"([[username]]:" (用户名坐边是括号,右边是冒号)

username是局部变量(注)

3)之前假设的邮箱为“1”的时候表示已注册,则重写编辑该用例的条件为:是否
包含全局变量里的邮箱地址:

if值于up包含":[[email]])" (邮箱坐边是冒号,右边是括号)

email是局部变量(注)

4)这里的全局变量已经加上了邮箱地址,所以之前的登录界面也需要稍作调整,否
则判断将有误。


注意:在添加多个用例时要注意用例之间的联系(If or Elese If),如果没有弄
清其间的联系,会出 现结果和预想不一致。

 用例详情如下:

转载于:https://www.cnblogs.com/LindaBlog/p/9983608.html

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

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

相关文章

Maximum Xor Secondary(单调栈好题)

Maximum Xor Secondary CodeForces - 280B Bike loves looking for the second maximum element in the sequence. The second maximum element in the sequence of distinct numbers x1, x2, ..., xk (k > 1) is such maximum element xj, that the following inequa…

杂项-公司:唯品会

ylbtech-杂项-公司:唯品会唯品会公司成立于2008年08月,2012年3月23日登陆美国纽约证券交易所上市(股票代码:VIPS)。成为华南第一家在美国纽交所上市的电子商务企业。主营B2C商城唯品会名牌折扣网站是一家致力于打造中高…

Linux基本的操作

一、为什么我们要学习Linux 相信大部分人的PC端都是用Windows系统的,那我们为什么要学习Linux这个操作系统呢???Windows图形化界面做得这么好,日常基本使用的话,学习成本几乎为零。 而Linux不一样&#xff…

汇编语言 实验4

实验4 实验内容1:综合使用 loop,[bx],编写完整汇编程序,实现向内存 b800:07b8 开始的连续 16 个 字单元重复填充字数据 0403H;修改0403H为0441H,再次运行 步骤1:在记事本中编写好temp.asm文件 步骤2&#x…

LDAP第三天 MySQL+LDAP 安装

https://www.easysoft.com/applications/openldap/back-sql-odbc.html OpenLDAP 使用 SQLServer 和 Oracle 数据库。 https://www.cnblogs.com/bigbrotherer/p/7251372.html          CentOS7安装OpenLDAPMySQLPHPLDAPadmin 1.安装和设置数据库 在CentOS7下&…

Myeclipse连接Mysql数据库时报错:Error while performing database login with the pro driver:unable...

driver template: Mysql connector/j(下拉框进行选择) driver name: 任意填,最好是数据库名称,方便查找 connection URL: jdbc:mysql://localhost:3306/programmableweb User name: 用户名 password: 密码 Driver jars: 添加jar包…

matlab --- 图像处理基础

MATLAB图像处理 1. 数字图像处理 参考 数字图像处理(Digital Image Processing)又称为计算机图像处理,是一种将图像信号数字化利用计算进行处理的过程。随着计算机科学、电子学和光学的发展,数字图像处理已经广泛的应用到诸多领域之中。本小节主要介绍图像的概念、分类和数字…

[python、flask] - POST请求

1. 微信小程序POST传递数据给flask服务器 小程序端 // 提交POST数据 import { request } from "../../request/index.js"async handleDetectionPoints() {let params {url: "/detect_points",data: {"points": arr,"img_name": thi…

[vue]data数据属性及ref获取dom

data项的定义 this.$refs获取dom 获取不到数据 这样中转下才ok 小结: data里不能用this.$ref. 另外使用visjs时候 view-source:http://visjs.org/examples/network/basicUsage.html 加载不出东西,点了按钮触发才ok 小结: create里应该是从上到下执行的. 转载于:https://www.cnb…

[异步、tensorflow] - 子线程操作tensor,主线程处理tensor

参考整体流程如下图 代码 import tensorflow as tf"""模拟: 子线程不停的取数据放入队列中, 主线程从队列中取数据执行包含: 作用域的命名、把程序的图结构写入事件、多线程 """# 模拟异步存入样本. # 1、 定义一个队列,长度为1000 with tf.va…

Element

官网:http://element-cn.eleme.io/#/zh-CN 转载于:https://www.cnblogs.com/weibanggang/p/9995433.html

[tensorflow] - csv文件读取

参考 文件流程 csv读取流程 函数的流程 import tensorflow as tf import os"""tensorflow中csv文件的读取1、 先找到文件,构造一个列表2、 构造一个文件队列3、 读取(read)队列内容csv: 读取一行二进制文件: 指定一个样本的bytes读取图片文件: 按一张一张…

课程模块表结构

课程模块 我们要开始写课程模块了~~课程模块都有哪些功能呢~~ 我们的课程模块,包括了免费课程以及专题课程两个方向~~ 主要是课程的展示,点击课程进入课程详细页面~~ 课程详细页面展示,课程的概述,课程的价格策略,课程…

[tensorflow、神经网络] - 使用tf和mnist训练一个识别手写数字模型,并测试

参考 包含: 1.层级的计算、2.训练的整体流程、3.tensorboard画图、4.保存/使用模型、5.总体代码(含详细注释) 1. 层级的计算 如上图,mnist手写数字识别的训练集提供的图片是 28 * 28 * 1的手写图像,初始识别的时候,并不知道一次要训练多少个数据,因此输入的规模为 [None, 784].…

面向过程、面向函数、面向对象的区别浅谈

Python的面向过程、面向函数、面向对象的区别浅谈 转自--猎奇古今,加上其他 有人之前私信问我,python编程有面向过程、面向函数、面向对象三种,那么他们区别在哪呢? 面向过程就是将编程当成是做一件事,要按步骤完成&am…

[pytorch、学习] - 3.5 图像分类数据集

参考 3.5. 图像分类数据集 在介绍shftmax回归的实现前我们先引入一个多类图像分类数据集 本章开始使用pytorch实现啦~ 本节我们将使用torchvision包,它是服务于PyTorch深度学习框架的,主要用来构建计算机视觉模型。torchvision主要由以下几部分构成: torchvision.datasets: …

[pytorch、学习] - 3.6 softmax回归的从零开始实现

参考 3.6 softmax回归的从零开始实现 import torch import torchvision import numpy as np import sys sys.path.append("..") import d2lzh_pytorch as d2l3.6.1. 获取和读取数据 batch_size 256 train_iter, test_iter d2l.load_data_fashion_mnist(batch_si…

[pytorch、学习] - 3.7 softmax回归的简洁实现

参考 3.7. softmax回归的简洁实现 使用pytorch实现softmax import torch from torch import nn from torch.nn import init import numpy as np import sys sys.path.append("..") import d2lzh_pytorch as d2l3.7.1. 获取和读取数据 batch_size 256 train_iter…

[pytorch、学习] - 3.9 多重感知机的从零开始实现

参考 3.9 多重感知机的从零开始实现 import torch import numpy as np import sys sys.path.append("..") import d2lzh_pytorch as d2l3.9.1. 获取和读取数据 batch_size 256 train_iter, test_iter d2l.load_data_fashion_mnist(batch_size)3.9.2. 定义模型参…

C语言逗号运算符和逗号表达式基础总结

逗号运算符的作用: 1,起分隔符的作用: 定义变量用于分隔变量:int a,b输入或输出时用于分隔输出表列 printf("%d%d",a,b) 2,用于逗号表达式的顺序运算符 语法:表达式1,表达式2,...,表达…