自动化负载模型制造技术

技术编号:4140371 阅读:181 留言:0更新日期:2012-04-11 18:40
提供了一种用于测试计算机系统的系统和方法。在一个实现中,所述方法和系统可包括接收脚本足迹,其包括对应于计算机系统维度受脚本影响的次数的维度影响值。还可接收目标信息。目标信息包括对应于每个时间段内每个维度应受影响的期望次数的目标维度值。所述方法和系统可确定在时间段内执行脚本的次数,以便将在每个时间段内维度受影响的实际次数与目标维度值之间的差最小化。所述方法和系统还可以在时间段内使得脚本在计算机系统上执行确定的次数。本发明专利技术涉及自动化负载模型。

【技术实现步骤摘要】

本实施方式涉及计算机性能测试。更具体地,本实施方式涉及优化计算机系统测试的方法和系统。
技术介绍
随着计算机系统的发展,运行在这些系统上的应用的复杂度也增加了。通常,开发 者团队创建这些复杂应用和系统。由于复杂度增加,测试这些系统变得越来越困难。在一 些情况下,应用和系统经历alpha和beta测试。这典型地包括选择几组个人使用系统支持 的各种功能,以尝试识别系统可能具有的任何缺陷。 特征在于大量用户的系统还可经历性能测试,以评价系统的就绪度或真实性能。 这包括确定运行系统的真实操作是否满足设置的预期。为了作出这个判断,被测试的系统 应该1)与被验证的产品系统直接匹配或相关,2)在测试中持续被监控以确定结果是否满 足适当的目标,以及3)在反映真实使用的现实的工作负载下工作。但是,达到这三个要求 可能是有挑战性的。
技术实现思路
为了解决上述问题,提供了一种用于测试计算机系统的方法和系统。在一个实现 中,所述方法可接收脚本足迹,其包括对应于计算机系统维度受脚本影响的次数的维度影 响值。脚本对应于由处理器执行的代码列表,其支持与计算机系统相关的测试功能。脚本 足迹是测量脚本影响计算机系统的一种方式,由每个时间段内脚本进行计算机系统的操作 的次数表示。维度对应于脚本可能进行或不进行的计算机系统执行的操作。例如,鉴权服 务器可执行的操作如身份鉴权、备选身份鉴权、密码更新、组鉴权和/或设置对系统的特权 的操作。目标信息也可被接收。目标信息包括对应于每个时间段内每个维度应受影响的期 望次数的目标维度值。所述方法和系统可确定在时间段内执行脚本的次数,以便将在时间 段内维度受影响的实际次数与目标维度值之间的差最小化。所述方法和系统还可在时间段 内使得脚本在计算机系统上执行已确定的次数。 在本专利技术的一个方面,通过线性最小二乘方算法将维度受影响的实际次数与目标 维度值之间的差最小化。 在本专利技术的另一个方面,加权因子可应用于维度影响值和目标维度值,以便定义 度量的相对重要性和/或平均不同标度度量的影响。加权因子可以对应于最大的目标维度 值的倒数、所有目标维度值的平均值的倒数和/或所有目标维度值之和的倒数。 在本专利技术的另一方面,在目标维度值基于历史数据的情况下,目标维度值可被增 长因子縮放,以提供更为当前的目标维度值。附图说明 图1是根据本专利技术的用于测试计算机系统鲁棒性的测试系统的实施方式; 图2是根据本专利技术的用于测试计算机系统的测试计划的树型结构的实施方式; 图3是根据本专利技术的由负载模型应用的实施方式生成的示例表格的一部分,其中 该负载模型应用支持描述用于测试计算机系统的各种测试脚本的特征; 图4是根据本专利技术的由图3中使用的负载模型应用生成的示例表格的一部分,其 中该负载模型应用支持指定用于组的目标信息; 图5是根据本专利技术的图3的负载模型应用生成的示例结果表格的一部分; 图6是描述图3的负载模型应用的操作的流程图;以及 图7所示为根据本专利技术的使用图3的负载模型应用的计算机系统的一个实施方 式。具体实施例方式图1是用于测试计算机系统鲁棒性的测试系统100。测试系统100包括处理器 115、测试脚本105和负载模型120。 处理器115可对应于任何常规的计算机或支持执行用于验证计算机系统的功能的应用的其他数据处理设备。例如,处理器ii5可对应于基于Inte1⑧、AMD⑧或 PowerPC 的处理器,所述处理器运行例如Microsoft Windows 、 Li皿x或其他基于 Unix⑧的操作系统。处理器115可以适于执行应用(如负载模型应用)和/或负载测试 应用(如HP Load Runner )。负载测试应用根据负载模型执行用于测试计算机系统的 测试脚本。处理器115还可以适于通过接口 (如网络接口)与计算机系统通信。 测试脚本105对应于由处理器115执行的代码列表,其支持测试与各种计 算机系统相关的功能。代码列表可以对应于脚本语言,如Java 和/或Microsof tVisual Basic 。代码列表也可以对应于编程语言,如c或C++。测试脚本105可以包括用 于仿真与有待由测试系统ioo进行测试的各种计算机系统相关的人工交互的代码列表。例如,第一测试脚本可以包括支持仿真与读和写电子邮件消息相关的人工交互的代码。在此 情况下,测试脚本可以包括生成电子邮件消息、选择电子邮件消息的收件人,以及将电子邮件消息传递到电子邮件服务器125的代码。第二测试脚本可以包括支持仿真与浏览web页 面相关的人工交互的代码。例如,脚本可以包括向web服务器130请求web页面、在web页 面上指定字段以及将字段传递回恥b服务器130的代码。第三测试脚本可以包括支持仿真 与数据库交互相关的人工交互的代码。例如,脚本可以包括从数据库服务器135检索和存 储数据的代码。也可以存在用于测试系统的其他系统和脚本。 在操作中,处理器115根据负载模型120执行测试脚本105。负载模型120由负 载模型应用生成,并指定每个时间段内将每个测试脚本105执行多少次。例如,第一脚本可 以每分钟执行159. 24次,而第二脚本可以每分钟执行26. 29次。执行给定脚本的频率由负 载模型应用确定。负载模型应用基于包括维度的各种度量的多种因素来确定脚本的执行速 率。度量对应于与被测试的系统的特定方面相关的维度的集合。维度对应于在该特定的度 量或系统的方面中执行的操作。例如,鉴权度量可以与执行如下操作的鉴权服务器相关, 所述操作诸如是身份鉴权、备选身份鉴权、密码更新、组鉴权和/或设置对系统的特权的操 作。 图2-图4绘出了与负载模型应用相关的各种用户界面和操作。 图2是用于由测试系统100对计算机系统进行测试的测试计划的树形结构220。可以通过上述负载模型应用创建测试计划。树形结构220包括各种组节点225和多个脚本节点210。树形结构220可以用于定义在测试计算机系统的各种脚本之间的关系。负载模型应用的内部功能由脚本的分组引导。通常,脚本之间存在需要考虑的重要关系。这些关系可以与软件或计算机系统操作的方式相符。例如,在很多web应用中,当用户成功登录之后,向用户呈现欢迎屏幕。如果存在2个脚本,一个用于登录而一个用于导航欢迎屏幕,则可以依次运行所述脚本。但是,不受约束的负载模型可能试图打破脚本之间的这种关系,因为它没意识到脚本之间所具有的这种关系。树形结构220支持约束负载模型以便维持这些关系。 组节点225用于对有关脚本和/或其他组进行分组,以及指定用于约束与分组相关的脚本的执行速率的目标信息。例如,测试计划组节点200可以用于指定树形结构220中测试计划组节点200下面的所有脚本的目标信息,其中在此示例中包括管理员应用组组节点205、批处理相关组节点207和客户应用组节点209下面的那些脚本。继而,这些组节点中的每个组节点可以用于指定相应组下面的脚本的目标信息。例如,管理员应用组组节点205可以用于指定管理员应用组节点205下面的所有脚本的目标信息,包括用于由管理员禁止账户、查找账户、更新账户以及登录到账户的脚本节点210。 上述目标信息包括度量列表、每个度量的权重、与每个度量相关的维度值以及每个度量的增长因子。权重用于定义本文档来自技高网...

【技术保护点】
一种用于测试计算机系统的方法,所述方法包括:接收包括维度影响值的脚本信息,每个维度影响值对应于维度受脚本影响的次数;接收目标维度值,每个目标维度值对应于每个时间段内每个维度应受所述脚本影响的期望次数;确定在所述时间段内执行所述脚本的次数,以便将每个时间段内维度受影响的实际次数与目标维度值之间的差最小化;以及在所述时间段内使得所述脚本在所述计算机系统上执行预定的次数。

【技术特征摘要】
US 2008-10-30 12/261,519一种用于测试计算机系统的方法,所述方法包括接收包括维度影响值的脚本信息,每个维度影响值对应于维度受脚本影响的次数;接收目标维度值,每个目标维度值对应于每个时间段内每个维度应受所述脚本影响的期望次数;确定在所述时间段内执行所述脚本的次数,以便将每个时间段内维度受影响的实际次数与目标维度值之间的差最小化;以及在所述时间段内使得所述脚本在所述计算机系统上执行预定的次数。2. 根据权利要求1所述的方法,还包括通过线性最小二乘方算法将维度受脚本影响 的实际次数与目标维度值之间的差最小化。3. 根据权利要求1所述的方法,还包括通过加权因子縮放维度影响值和目标维度值。4. 根据权利要求3所述的方法,其中所述加权因子对应于最大的目标维度值的倒数。5. 根据权利要求3所述的方法,其中所述加权因子对应于所有目标维度值的平均值的 倒数。6. 根据权利要求3所述的方法,其中所述加权因子对应于所有目标维度值之和的倒数。7. 根据权利要求1所述的方法,还包括将目标维度值乘以增长因子。8. 根据权利要求1所述的方法,还包括将维度受影响的实际次数与目标维度值之间的差转换为误差的百分比,以及将所述误差的百分比传递到显示器。9. 一种用于测试计算机系统的方法,所述方法包括接收包括用于多个脚本的维度影响值的脚本信息,每个维度影响值对应于维度受脚本 影响的次数;接收包括目标维度值的目标信息,每个目标维度值对应于每个时间段内每个维度应受 所述多个脚本影响的期望次数;确定在所述时间段内执行所述多个脚本中的每个脚本的次数,以便将每个时间段内维 度受影响的实际次数与目标维度值之间的差最小化;以及在所述时间段内将所述多个脚本在计算机系统上执行预定的次数。10. —种机器可读存储介质,其上存储有包括用于测试计算机系统的至少一个代码段 的计算机程序,机器可执行所述至少一个代码段以便使所述机器执行下列动作接收包括维度影响值的脚本信息,每个维度影响值对应于维度受脚本影响的次数; 接收目标维度值,每个目标维度值对应于每个时间段内每个维度应受所述脚本影响的 期望次数;确定在所述时间段内执行所述脚本的次数,以便将每个时间段内维度受影响的实际次 ...

【专利技术属性】
技术研发人员:DM小赫梅尔
申请(专利权)人:埃森哲环球服务有限公司
类型:发明
国别省市:CH[瑞士]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1