UI 易用性测试 以及自动化实现

2022-08-01  本文已影响0人  82a7fe2508f4

GUI 是指图形用户界面,UI 是指用户界面,对于纯软件系统,这两者没有本质的区别,GUI易用性测试与 UI 易用性测试内容一致。但是如果测试的对象是一个产品,这两者则存在区别,对于产品 UI 则不仅仅包括 GUI,还包括产品硬件部分的测试。

一、UI易用性测试

UI 测试包括两类:软件界面测试和硬件界面测试。就软件界面测试来说,其与 GUI测试一致。硬件界面测试则是指产品的外观,产品外观是用户体验产品最重要的用户界面(如按钮、标识等),优秀外观可以更好地吸引客户的眼球,可以为产品增值。

UI 硬件界面的测试是结构测试中的一部分,外观测试应该注意以下几个问题:

(1)点状与线状测试。

(2)间隙或断差测试。

(3)注塑、丝印、喷涂、电镀测试。

(4)按键、镜片、LCD、LED、显示屏、摄像头、配合类测试。

(5)包装、附件等。

二、 易用性测试的自动化实现

易用性测试主要是针对对象的一些属性进行测试,但如果每个测试版本都去验证对象的属性,效率显然比较低,但是如果不验证,又担心开发工程师修改了对象的属性。而借助自动化测试工具帮助进行易用性测试,显然可以提高测试的效率,但不是所有的属性都可以通过自动化测试来实现,在测试过程中可以有选择地对对象的属性进行自动化测试。

易用性自动化测试实现的步骤如下:

(1)获取实际测试过程中对象的相关属性。

(2)将实际的对象属性与预期对象属性进行比较。

(3)如果不同,测试结果标为 FAIL;如果相同,则结果标为 PASS。

易用性测试内容见表 15-3

在易用性测试表中,列出需要测试的对象名、对象的属性以及各属性的预期结果,在测试过程中,获取实际运行时对象的属性值,并将它填写到表格中。之后再比较预期结果与实际结果的值是否相同,如果相同,则在结果列中标为PASS(字体颜色为绿色),否则标为 FAIL(字体颜色为红色)。

【实例】使用自动化测试工具 QuickTest Professional 测试图 15-20 中 OK 按钮的属性。

图 15-20 易用性测试对象

实现的代码如下:

'———————————————————————————————————

' 函数名:CompareText

'

' 目的:比较预期结果和实际结果单元格的值是否相同

'

' Parameters:

' sheetname:待比较的 sheet

' expectColumn:预期结果列

' actualColumn:实际结果列

' startRow:比较的开始行

' numberOfRows:共需要比较多少行

' trimed:单元格中的值是否包含空格符

' Date: 2011-11-27

'———————————————————————————————————

Function CompareText(sheetname, expectColumn, actualColumn, startRow,

numberOfRows, trimed)

Dim returnVal

Dim cell

returnVal = True

'判断 sheet 对象是否为 nothing

If sheetname Is nothing Then

CompareText = False

Exit Function

End If

'循环读取单元格中的值

For r = startRow to (startRow + (numberOfRows - 1))

Value1 = sheetname.Cells(r, expectColumn)

Value2 = sheetname.Cells(r, actualColumn)

'空格符去掉后再进行比较

If trimed Then

Value1 = Trim(Value1)

Value2 = Trim(Value2)

End If

'比较两个数据是否相等,如果相等将结果标为 PASS 并将字体置为绿色,否则将结果标为 FAIL 并将字体置为红色

Set cell = sheetname.Cells(r,actualColumn+1)

If Value1 <> Value2 Then

sheetname.Cells(r, actualColumn+1).value = "FAIL"

cell.Font.Color = vbRed

returnVal = False

else

sheetname.Cells(r, actualColumn+1).value = "PASS"

cell.Font.Color = vbGreen

returnVal = True

End If

Next

CompareText = returnVal

End Function

Set ExcelApp = CreateObject("Excel.Application")

Set ExcelSheet = CreateObject("Excel.Sheet")

Set myExcelBook1= ExcelApp.WorkBooks.Open("c:\1.xls")

Set myExcelSheet1= myExcelBook1.WorkSheets("Sheet1")

Dialog("Login").WinEdit("Agent Name:").Set "test"

Dialog("Login").WinEdit("Password:").SetSecure

"4ed2314da546f1e8280d3586032611a53dfbed13"

myExcelSheet1.Cells(2,4).value =

Dialog("Login").WinButton("OK").GetROProperty("text")

myExcelSheet1.Cells(3,4).value =

Dialog("Login").WinButton("OK").GetROProperty("nativeclass")

myExcelSheet1.Cells(4,4).value =

Dialog("Login").WinButton("OK").GetROProperty("width")

myExcelSheet1.Cells(5,4).value =

Dialog("Login").WinButton("OK").GetROProperty("height")

myExcelSheet1.Cells(6,4).value =

Dialog("Login").WinButton("OK").GetROProperty("visible")

myExcelSheet1.Cells(7,4).value =

Dialog("Login").WinButton("OK").GetROProperty("enabled")

Dialog("Login").WinButton("OK").Click

Window("Flight Reservation").Close

CompareText myExcelSheet1,3,4 ,2,6,False

myExcelBook1.save

ExcelApp.Quit

Set myExcelSheet1= nothing

Set myExcelBook1= nothing

Set ExcelApp = nothing

Set ExcelSheet = nothing

测试完成后的结果见表 15-4。

图 15-4 易用性自动化测试结果

上例只是一个比较简单的易用性测试自动化的实现过程,在实际工作中可以对该方法进行一定的完善,进一步提高易用性测试的效率。

上一篇下一篇

猜你喜欢

热点阅读