📜  黑盒测试中的状态转换技术

📅  最后修改于: 2021-01-10 15:56:11             🧑  作者: Mango

状态转换技术

状态转换的一般含义是,相同情况的不同形式,并且根据含义,状态转换方法执行的操作也相同。当不同的输入值赋给同一函数时,它用于捕获软件应用程序的行为。

我们都使用自动柜员机,当我们从中提款时,它会最后显示帐户详细信息。现在,我们再次进行另一笔交易,然后再次显示帐户明细,但是第二笔交易后显示的细节与第一笔交易不同,但是这两个细节都是使用ATM的相同函数显示的。因此,此处使用了相同的函数,但是每次输出不同时,这称为状态转换。在测试软件应用程序的情况下,此方法将测试函数是否在输入不同的输入时遵循状态转换规范。

这适用于提供特定次数的尝试访问应用程序的那些类型的应用程序,例如在指定次数的错误尝试后被锁定的应用程序的登录函数。让我们详细看看,在登录函数,我们使用电子邮件和密码,它给出了特定次数的访问应用程序的尝试,超过了错误消息将其锁定的最大尝试次数之后。

让我们在图中看到:

应用程序有一个登录功能,该函数最多可提供三个尝试次数,超过三个尝试次数后,将被定向到错误页面。

状态转换表

STATE LOGIN VALIDATION REDIRECTED
S1 First Attempt Invalid S2
S2 Second Attempt Invalid S3
S3 Third Attempt Invalid S5
S4 Home Page
S5 Error Page

在上面的状态转换表中,我们看到状态S1表示第一次登录尝试。当第一次尝试无效时,将引导用户进行第二次尝试(状态S2)。如果第二次尝试也是无效的,则用户将被引导到第三次尝试(状态S3)。现在,如果第三次也是最后一次尝试无效,那么将把用户定向到错误页面(状态S5)。

但是,如果第三次尝试有效,那么它将被定向到首页(状态S4)。

让我们看一下第三次尝试是否有效的状态转换表:

STATE LOGIN VALIDATION REDIRECTED
S1 First Attempt Invalid S2
S2 Second Attempt Invalid S3
S3 Third Attempt Valid S4
S4 Home Page
S5 Error Page

通过使用上面的状态转换表,我们可以执行任何软件应用程序的测试。我们可以通过确定所需的输出来制作状态转换表,然后使用软件系统检查其是否给出了所需的输出。