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.pswp.cn/news/250229.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/250229.shtml
英文地址,請注明出處:http://en.pswp.cn/news/250229.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

前端插件網址

http://www.swiper.com.cn/轉載于:https://www.cnblogs.com/luchuangao/p/9088057.html

python --- opencv部分學習

1. OpenCV 1.1 opencv概念 OpenCV是一個基于BSD許可(開源)發行的跨平臺計算機視覺庫可以運行在Linux、Windows、Android和Mac OS操作系統上它輕量級而且高效 – 有一系列C函數和少量 C 類構成同時提供了 Python、Ruby、MATLAB等語言的接口實現了圖像處理和計算機視覺方面的很…

hive與hbase集成

環境: hadoop2.7.7 hive3.1.0 hbase2.0.2 1.jar包拷貝(之所以用這種方式,是因為這種方式最為穩妥,最開始用的軟連接的方式,總是卻少jar包)到hive的lib目錄下刪除所有hbase相關的jar rm -rf hbase-*.jar 接著從hbase的lib目錄下拷貝所有的hbase相關jar cp -a hbasehome/lib/hba…

Winform(C#)輸入完畢后,按Enter鍵觸發Button事件

如在輸入“用戶名”和“密碼”之后,有些人習慣按“回車鍵”來代替頁面上的“確定”按鈕,那么這一功能在Winform(C#)里如何實現呢? 觸發密碼文本框的KeyDown事件,代碼如下: [c-sharp] view plaincopy private void txtP…

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…

python --- udp的使用

1. python的模塊導入規則 參考 1.1 系統自帶模塊 系統自帶的模塊直接import導入 import time import unittest1.2 第三方下載模塊 第三方下載模塊也可以直接導入 import HTMLTestRunner import requests1.3 導入模塊的部分函數或類 from time import sleep,strftime fro…

雜項-公司:唯品會

ylbtech-雜項-公司:唯品會唯品會公司成立于2008年08月,2012年3月23日登陸美國紐約證券交易所上市(股票代碼:VIPS)。成為華南第一家在美國紐交所上市的電子商務企業。主營B2C商城唯品會名牌折扣網站是一家致力于打造中高…

python --- 使用socket創建tcp服務

1. 網絡-tcp 參考 1.1 tcp簡介 介紹 TCP協議,傳輸控制協議(英語: Transmission Control Protocol, 縮寫為TCP)是一種面向連接的、可靠的、基于字節流的傳輸層通信協議,由IETF的RFC 793定義. TCP通信需要經過創建連接、數據傳送、終止連接三個步驟. TCP通信模型中,在通信開…

Linux基本的操作

一、為什么我們要學習Linux 相信大部分人的PC端都是用Windows系統的,那我們為什么要學習Linux這個操作系統呢???Windows圖形化界面做得這么好,日常基本使用的話,學習成本幾乎為零。 而Linux不一樣&#xff…

匯編語言 實驗4

實驗4 實驗內容1:綜合使用 loop,[bx],編寫完整匯編程序,實現向內存 b800:07b8 開始的連續 16 個 字單元重復填充字數據 0403H;修改0403H為0441H,再次運行 步驟1:在記事本中編寫好temp.asm文件 步驟2&#x…

python --- 線程

1. 多任務 - 線程 參考 首先考慮一個沒有多任務的程序: import timedef sing():# 唱歌 5 秒鐘for i in range(5):print("-----菊花臺ing....-----")time.sleep(1)def dance():# 跳舞 5秒鐘for i in range(5):print("-----跳舞.....-----")time.sleep(5)d…

Python 鏈接匯總

MNIST手寫識別 轉載于:https://www.cnblogs.com/bycnboy/p/9095199.html

17種常用的JS正則表達式 非負浮點數 非負正數

<input typetext idSYS_PAGE_JumpPage nameSYS_PAGE_JumpPage size3 maxlength5 οnkeyupthis.valuethis.value.replace(/[^1-9]\D*$/,"") οndragenter"return false" οnpaste"return !clipboardData.getData(text).match(/\D/)"" sty…

python --- 使用conda配置pytorch

使用Conda配置PyTorch 1. 添加channels 下載地址 $ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ $ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/ $ conda config --add channels htt…

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&#xff08;下拉框進行選擇&#xff09; driver name: 任意填&#xff0c;最好是數據庫名稱&#xff0c;方便查找 connection URL: jdbc:mysql://localhost:3306/programmableweb User name: 用戶名 password: 密碼 Driver jars: 添加jar包…

Centos6.5靜態IP設置

1.創建新的虛擬機 2.打開終端&#xff0c;打開/etc/sysconfig/network-scripts/ifcfg-eth0文件 3.將BOOTPROTOstatic&#xff0c;原值為dhcp 4.添加 IPADDR192.168.43.125  #靜態IP GATEWAY192.168.43.1  #網關 NETMASK255.255.255.0  #子網掩碼 NETWORK192.168.43.0  …

matlab --- 圖像處理基礎

MATLAB圖像處理 1. 數字圖像處理 參考 數字圖像處理(Digital Image Processing)又稱為計算機圖像處理,是一種將圖像信號數字化利用計算進行處理的過程。隨著計算機科學、電子學和光學的發展,數字圖像處理已經廣泛的應用到諸多領域之中。本小節主要介紹圖像的概念、分類和數字…

java 注解默認值

package com.zejian.annotationdemo;import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target;/** * Created by wuzejian on 2017/5/19. * 數據類型使用Demo */T…

[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…