图1 一台 ATM 机器的主角和用例


  主角"顾客"在用例执行的第一个实例中是一位有经验的 ATM 用户,但在另一个主角实例中却是一位没有经验的 ATM 用户。有经验的 ATM 主角迅速浏览 ATM 用户界面,他几乎不会花时间来阅读每条提示,而是按照记忆按动按钮。但没有经验的 ATM 主角则要阅读每条提示,并且在作出响应之前要用较多的时间来理解信息。符合实际的性能测试反映了这种差异,从而可确保准确地评估在部署测试对象时的性能行为。

  首先确定以上列出的各个用例的主角。然后确定可能执行各个用例的不同主角原型。在上面的 ATM 示例中,可能有以下主角原型:

  有经验的 ATM 用户

  没有经验的 ATM 用户

  ATM 用户的帐户位于该 ATM 的银行网络"之内"(用户的开户银行为拥有该 ATM 的银行)

  ATM 用户的帐户位于该 ATM 的银行网络之外(其他竞争银行)

  对于每个主角原型,需确定主角属性的不同值,例如:

  思考时间 -主角响应测试对象的各项提示所用的时间

  按键速度 -主角与接口交互的速度

  请求速度 - 主角向测试对象提出请求的速度

  重复次数 - 按顺序重复用例或请求的次数

  交互方法-主角所使用的交互方法,例如使用键盘输入值、切换到某个子段、使用快捷键等,或使用鼠标"指向并单击"、"剪切并粘贴"等。