自动化测试设计规范V1
- 格式:doc
- 大小:764.50 KB
- 文档页数:28
自动化测试用例规范一、引言自动化测试用例规范是为了保证测试用例的一致性、可读性和可维护性而制定的标准文档。
本规范旨在提供一个统一的格式和结构,以便测试团队成员能够理解和执行测试用例,确保测试过程的高效性和准确性。
二、测试用例命名规范1. 测试用例的名称应该简明扼要,能够准确描述被测试功能或者需求。
2. 使用动词开头,描述测试的行为或者动作,如“登录”,“添加商品”,“提交定单”等。
3. 避免使用缩写和简写,确保用例名称易于理解和识别。
三、测试用例结构1. 用例编号:每一个测试用例都应该有一个惟一的编号,用于标识和索引。
2. 用例名称:用于描述被测试功能或者需求。
3. 前置条件:描述执行该用例之前需要满足的条件,如登录、进入特定页面等。
4. 测试步骤:按照逻辑顺序描述测试的步骤,每一个步骤应该清晰明确。
5. 预期结果:描述每一个步骤执行后的期望结果,包括页面显示、错误提示等。
6. 测试数据:如果测试需要使用特定的数据,应该在此处明确指定。
7. 测试环境:描述执行该用例所需的测试环境,包括操作系统、浏览器、设备等。
8. 用例优先级:根据重要性和紧急程度,分为高、中、低三个级别。
9. 用例状态:用于标识用例的执行状态,包括未执行、通过、失败等。
四、用例编写规范1. 用例应该具有独立性,每一个用例应该只测试一个功能或者需求。
2. 用例应该尽量覆盖所有可能的情况,包括正常情况和异常情况。
3. 用例应该具有可重复性,任何人都应该能够按照用例的描述执行测试。
4. 用例应该具有可读性,用简洁明了的语言描述测试步骤和预期结果。
5. 用例应该具有可维护性,当被测试功能或者需求发生变化时,用例应该能够及时更新。
五、用例执行和管理1. 执行用例前,应该先确认测试环境是否满足前置条件。
2. 执行用例时,应该按照测试步骤逐一执行,并记录实际结果。
3. 如果用例执行失败,应该及时记录失败原因,并通知相关人员进行修复。
4. 用例执行完成后,应该及时更新用例的执行状态和实际结果。
自动化测试用例规范一、引言自动化测试用例规范是为了确保测试用例的一致性、可读性和可维护性而制定的一套规范。
本文档旨在定义自动化测试用例的编写规则、命名规范、结构规范以及编写要求,以便测试团队成员能够编写高质量的自动化测试用例。
二、编写规则1. 用例编号:每一个用例都应有惟一的编号,用于标识和检索。
编号格式为“TC-模块编号-用例编号”,例如“TC-001-001”。
2. 用例标题:用于简要描述用例的目标和功能。
标题应该简明扼要,准确描述用例的主要功能。
3. 前置条件:描述用例执行前的环境和条件,包括必要的数据准备、系统状态等。
4. 测试步骤:按照逻辑顺序描述用例的测试步骤,每一个步骤都应该清晰明了,简单易懂。
步骤应该具有可执行性,即可以直接在自动化测试框架中执行。
5. 预期结果:描述每一个测试步骤的预期结果,即用例执行后的期望结果。
预期结果应该具体、明确,以便与实际结果进行对照。
6. 附件:如果用例需要附带一些额外的文件或者数据,应在用例中明确指出,并提供相应的附件。
7. 备注:用于记录一些额外的说明或者备注信息,如用例的优先级、相关的bug编号等。
三、命名规范1. 用例文件命名:用例文件应该以模块名称或者功能名称作为前缀,以便于组织和检索。
文件名应该使用小写字母,多个单词之间使用下划线分隔,例如“login_test_cases.py”。
2. 用例函数命名:用例函数应该以“test_”作为前缀,后面跟上具体的功能或者操作。
函数名应该使用小写字母,多个单词之间使用下划线分隔,例如“test_login_success”。
3. 用例类命名:如果用例需要组织成类的形式,类名应该使用大写字母开头的驼峰命名法,例如“LoginPageTest”。
4. 用例变量命名:用例中的变量名应该使用小写字母,多个单词之间使用下划线分隔,例如“username”、“password”。
四、结构规范1. 模块划分:根据系统的功能或者模块进行用例的划分,每一个模块对应一个用例文件。
自动化测试用例规范引言概述:随着软件开辟的快速发展,自动化测试在软件开辟过程中扮演着越来越重要的角色。
自动化测试用例规范是确保测试用例的一致性和可维护性的关键因素。
本文将详细阐述自动化测试用例规范的重要性以及如何编写符合规范的自动化测试用例。
正文内容:1. 测试用例命名规范1.1 使用故意义的名称:测试用例名称应该能够清晰地描述被测试的功能或者特性。
1.2 使用统一的命名规则:采用统一的命名规则可以提高测试用例的可读性和可维护性。
例如,可以使用动词开头来描述测试的行为,使用名词来描述被测试的对象。
2. 测试用例结构规范2.1 清晰的前置条件:在测试用例中,明确指定测试执行前需要满足的前置条件,以确保测试的准确性和可重复性。
2.2 具体的测试步骤:测试用例应该包含具体的测试步骤,以确保测试人员能够按照规定的流程进行测试。
2.3 明确的预期结果:每一个测试用例都应该明确指定预期结果,以便测试人员能够验证测试是否通过。
3. 测试用例数据规范3.1 使用合适的测试数据:测试用例应该使用适当的测试数据来覆盖各种情况,包括正常情况和异常情况。
3.2 数据驱动测试:对于需要进行大量数据测试的场景,可以采用数据驱动的方式,将测试数据从外部源导入测试用例中,以提高测试效率和可维护性。
3.3 数据清理:在测试用例执行完毕后,应该清理测试过程中产生的数据,以确保下一次测试的准确性。
4. 测试用例注释规范4.1 添加必要的注释:测试用例中应该添加必要的注释,以解释测试的目的、特殊要求或者注意事项。
4.2 注释风格一致:统一注释的风格和格式,以提高测试用例的可读性和可维护性。
4.3 避免冗余注释:注释应该精简明了,避免冗余或者无用的注释,以减少不必要的维护工作。
5. 测试用例管理规范5.1 版本控制:对测试用例进行版本控制,以确保每一个版本的测试用例都能够被追溯和管理。
5.2 定期审查和更新:定期审查测试用例,及时更新和维护测试用例,以适应软件开辟的变化。
自动化测试脚本编写规范引言概述:自动化测试脚本编写规范是保证测试脚本质量和可维护性的重要指导原则。
遵循规范可以提高脚本的可读性、可靠性和可扩展性,从而提升测试效率和准确性。
本文将介绍自动化测试脚本编写规范的五个大点,并详细阐述每个大点的小点。
正文内容:1. 编码规范1.1 选择合适的编程语言:根据被测试系统的特性和测试需求,选择合适的编程语言进行脚本开发。
1.2 命名规范:使用有意义的变量名、函数名和类名,遵循驼峰命名法,提高代码可读性。
1.3 注释规范:在关键代码处添加注释,解释代码的作用和实现逻辑,方便其他开发人员理解和维护。
1.4 缩进和格式化:统一使用合适的缩进和代码格式化风格,提高代码的可读性。
2. 结构规范2.1 模块化设计:将测试脚本拆分为多个模块,每个模块负责不同的功能或测试场景,提高代码的可维护性和复用性。
2.2 测试数据分离:将测试数据与测试脚本分离,使用外部文件(如Excel、CSV)存储测试数据,方便测试数据的维护和更新。
2.3 错误处理和异常处理:在脚本中添加适当的错误处理和异常处理机制,保证测试脚本的稳定性和可靠性。
2.4 日志记录:在关键步骤和测试结果处添加日志记录,方便排查问题和分析测试结果。
3. 定位方式规范3.1 使用唯一标识:选择合适的定位方式,如ID、class、XPath等,确保定位元素的准确性和稳定性。
3.2 避免使用绝对路径:尽量使用相对路径进行元素定位,避免因页面结构变化导致脚本失效。
3.3 使用等待机制:在元素定位之前,添加适当的等待机制,确保页面加载完成或元素可见后再进行操作。
3.4 使用断言:在操作元素后,使用断言验证操作结果,确保脚本执行的准确性。
4. 数据处理规范4.1 数据清理:在测试脚本执行完毕后,清理测试过程中产生的测试数据,保持测试环境的干净和稳定。
4.2 数据驱动:使用数据驱动的方式进行测试,将测试数据和测试逻辑分离,提高测试用例的复用性和可维护性。
自动化测试用例规范标题:自动化测试用例规范引言概述:随着软件开辟行业的不断发展,自动化测试在软件测试领域中扮演着越来越重要的角色。
而规范的自动化测试用例是确保测试工作高效进行的关键。
本文将介绍自动化测试用例规范的重要性以及如何编写符合规范的测试用例。
一、测试用例命名规范1.1 使用故意义的命名:测试用例的命名应该清晰、简洁,并能准确描述测试的目的和内容。
1.2 避免使用特殊字符:在命名测试用例时应避免使用特殊字符和空格,以免造成混淆。
1.3 使用统一的命名规范:团队成员应遵守统一的命名规范,以便于管理和维护测试用例。
二、测试用例设计规范2.1 单一职责原则:每一个测试用例应该只测试一个功能或者一个场景,避免将多个测试目标混在一个用例中。
2.2 易于维护和扩展:测试用例应该易于维护和扩展,避免浮现重复的测试步骤或者硬编码的数据。
2.3 考虑边界条件和异常情况:在设计测试用例时应考虑各种边界条件和异常情况,以确保系统的稳定性和可靠性。
三、测试用例编写规范3.1 清晰的前置条件:在编写测试用例时应明确指定测试的前置条件,以确保测试环境的准备工作。
3.2 详细的测试步骤:测试用例应包含详细的测试步骤和预期结果,以便于执行测试和验证测试结果。
3.3 合理的断言和验证:在测试用例中应包含合理的断言和验证方法,以确保测试结果的准确性和可靠性。
四、测试用例执行规范4.1 自动化执行:尽可能使用自动化测试工具执行测试用例,以提高测试效率和减少人为错误。
4.2 记录测试结果:在执行测试用例时应及时记录测试结果和问题,以便后续分析和修复。
4.3 定期回顾和更新:定期回顾和更新测试用例,确保测试用例与系统需求和功能保持一致。
五、测试用例管理规范5.1 版本控制:测试用例应进行版本控制,确保团队成员使用的是最新的测试用例。
5.2 集中管理:测试用例应集中管理在统一的测试用例管理工具中,方便团队共享和查阅。
5.3 定期审核和优化:定期对测试用例进行审核和优化,以确保测试用例的质量和有效性。
自动化测试脚本编写规范一、引言自动化测试脚本是在软件开发过程中,为了提高测试效率和准确性而编写的一种脚本。
编写规范的自动化测试脚本能够提高脚本的可读性、可维护性和可扩展性,从而更好地支持软件测试工作。
本文将介绍自动化测试脚本编写的规范,包括命名规范、注释规范、代码规范和测试数据规范等。
二、命名规范1. 脚本文件命名:脚本文件应该以有意义的名称命名,使用小写字母和下划线的组合,例如:login_test.py。
2. 函数和方法命名:函数和方法应该以动词开头,使用驼峰命名法,例如:click_button。
3. 变量命名:变量应该使用有意义的名称,避免使用单个字母或数字作为变量名,例如:username。
三、注释规范1. 文件注释:每个脚本文件应该包含文件注释,用于描述脚本的用途、作者、创建日期等信息。
2. 函数和方法注释:每个函数和方法应该包含函数注释,用于描述函数的功能、参数、返回值等信息。
3. 行内注释:在代码行的末尾添加注释,用于解释代码的作用或特殊处理。
四、代码规范1. 缩进:使用4个空格进行缩进。
2. 行长度:每行代码的长度不应超过80个字符。
3. 空行:在函数和方法之间添加空行,以提高代码的可读性。
4. 异常处理:对可能出现异常的代码进行适当的异常处理,避免程序崩溃。
5. 避免使用硬编码:将可变的数据和配置信息提取到配置文件或者全局变量中,避免在代码中直接使用硬编码的值。
五、测试数据规范1. 测试数据的准备:在编写自动化测试脚本之前,应该准备好测试数据,包括正常数据和异常数据。
2. 数据驱动:使用数据驱动的方式进行测试,将测试数据从外部文件中读取,并将测试结果写入到测试报告中。
3. 数据清理:在测试结束后,及时清理测试数据,以保持测试环境的干净和稳定。
六、总结编写规范的自动化测试脚本对于提高测试效率和准确性非常重要。
通过遵循命名规范、注释规范、代码规范和测试数据规范,可以使脚本更易读、易维护和易扩展。
软件自动化测试的的设计标准摘要:软件测试是目前用来验证软件是否能够完成所期望的功能的唯一有效的方法。
以往的软件测试一直采用手工测试,但随着软件日益复杂和庞大,手工软件测试设计的大量的重复性的工作,将耗费更大量的时间和人力,软件测试的开销将不断增大,如何更有效的进行测试就成为一个新的讨论热点,因而诞生了软件自动化测。
软件自动化测试的设计要符合一定的标准,其使用也有着特定的适用范围。
关键词:软件危机;软件测试;系统测试软件危机是软件界的热门话题。
由于软件中的错误会导致软件开发在成本、进度和质量上的严重失控,所以保证软件质量的测试在软件生命周期中占据了及其重要的地位。
软件测试是目前用来验证软件是否能够完成所期望的功能的唯一有效的方法。
软件测试是一种以受控的方式执行被测试的软件,以验证或者证明被测试的软件的行为或者功能符合设计该软件的目的或者说明规范。
所谓受控的方式应该包括正常条件和非正常条件,即故意的去促使错误的发生,也就是事情在不该出现的时候出现或者在应该出现的时候没有出现。
以往的软件测试一直采用手工测试,但随着软件日益复杂和庞大,手工软件测试设计的大量的重复性的工作,将耗费更大量的时间和人力,软件测试的开销将不断增大,如何更有效的进行测试就成为一个新的讨论热点,因而诞生了软件自动化测。
现在,软件测试自动化已成为人们日益关注的一个焦点。
所谓软件自动化测试就是执行用某种程序设计语言编制的自动测试程序,控制被测软件的执行,模拟手动测试步骤完成全自动或半自动测试。
全自动测试过程中,不需要人工干预,由程序自动完成测试的全过程;而半自动测试就是指在自动测试过程中,需要由人工手动输入测试用例或选择测试路径,再由自动测试程序按照人工指定的要求完成自动测试。
软件测试自动化不能解决测试中的所有问题,也不意味着任何软件测试都可以自动化。
要成功地实现软件测试自动化,需要周密的计划和大量艰苦的工作,软件测试自动化的开发人员必须清楚地认识到该自动化什么。
自动化测试标准自动化测试是一种使用计算机软件来模拟人类测试任务的高效有效的测试方法。
它包括对软件或硬件系统的功能、性能和稳定性进行有效测试。
自动化测试可以帮助企业快速发现应用或系统中的问题,从而改善软件质量并降低测试成本。
自动化测试的标准包括:(1)技术要求:自动化测试系统应具备完备的功能,可以满足数据库、应用服务器以及接口测试等不同类型的测试用例。
测试系统应支持相应的数据格式,如XML,JSON等,并且能够理解测试用例中的技术概念。
(2)数据准备:自动化测试系统需要提供丰富的数据准备资源,从而能够为每一个测试用例准备合适的测试数据。
(3)可维护性:自动化测试系统支持可维护的测试用例,以便在发现缺陷或测试用例变更时可以及时进行修改、调整和更新。
(4)报告分析:自动化测试系统应能够实时分析测试结果,并以图表的形式报告统计信息,实现质量分析及性能分析等测试结果可视化。
(5)安全性:自动化测试系统应设有安全策略,以确保测试环境和测试数据的安全。
(6)可定制性:自动化测试系统支持可定制的测试用例,满足特定测试需求。
(7)可靠性:自动化测试系统应具备足够的可靠性,能够持续高质量地完成测试工作。
(8)弹性:自动化测试系统应具备良好的弹性,能够快速反应测试用例的变化,并在短时间内完成测试工作。
在当今越来越复杂的软件开发环境中,有效的测试活动和可靠的质量保证是至关重要的。
近年来,自动化测试已经成为软件开发中不可或缺的一部分,而自动化测试标准也正在不断发展壮大。
正是基于这些标准的质量保证手段,企业才能实现快速、高效的软件产品开发和质量提升。
自动化测试脚本编写规范自动化测试脚本是软件测试过程中的重要组成部份,它能够提高测试效率、减少人工测试的工作量,并且可以在短期内执行大量的测试用例。
为了保证自动化测试脚本的可维护性和可扩展性,制定一套规范是非常必要的。
本文将介绍自动化测试脚本编写的规范要求。
一、命名规范1. 脚本文件名应具有描述性,能够清晰地表达脚本的功能和作用。
2. 脚本文件名应使用小写字母和下划线,不得包含空格和特殊字符。
3. 脚本文件名应具有一定的层次结构,可以使用文件夹来组织脚本。
二、注释规范1. 每一个脚本文件的开头应包含脚本的名称、作者、创建日期等基本信息。
2. 在每一个函数或者方法的开头应添加注释,描述该函数或者方法的功能和输入输出参数的含义。
3. 在关键的代码段落或者逻辑判断处添加注释,解释代码的意图和目的。
三、代码规范1. 使用可读性强的变量和函数名,能够准确地表达其含义。
2. 代码缩进使用四个空格,不得使用制表符。
3. 代码行的长度不得超过80个字符。
4. 代码中不得浮现无用的注释、空行和多余的空格。
5. 使用异常处理机制,对可能浮现的异常进行捕获和处理。
四、测试数据规范1. 测试数据应与测试用例分离,以便于维护和修改。
2. 测试数据应使用变量或者配置文件的形式存储,不得直接硬编码在脚本中。
3. 测试数据应包含正常数据、边界数据和异常数据,以覆盖不同的测试场景。
五、日志规范1. 使用日志记录脚本的执行过程和结果。
2. 日志级别应根据需要进行设置,包括DEBUG、INFO、WARNING、ERROR 等级别。
3. 日志应包含时间戳、脚本名称、函数名等信息,便于问题定位和分析。
六、断言规范1. 使用断言来验证测试结果,确保测试脚本的正确性。
2. 断言应具有描述性,能够清晰地表达期望的结果。
3. 断言应尽量简洁明了,避免浮现复杂的逻辑判断。
七、版本控制规范1. 使用版本控制工具对测试脚本进行管理,确保脚本的版本可追溯和回滚。
自动化测试脚本编写规范一、引言自动化测试脚本编写规范旨在确保测试团队编写的自动化测试脚本具有一致的风格和结构,提高脚本的可读性、可维护性和可扩展性。
本文将详细介绍自动化测试脚本编写规范的各个方面。
二、命名规范1. 脚本文件名应以有意义的名称命名,使用小写字母、数字和下划线,避免使用特殊字符。
2. 脚本文件名应反映被测试功能的名称或描述,以便于识别和查找。
3. 脚本文件名应使用有意义的单词或简短的缩写,避免使用过长的文件名。
三、文件结构1. 脚本文件应按照功能模块或测试场景进行组织,方便管理和维护。
2. 脚本文件应包含必要的注释,清晰描述脚本的功能和使用方法。
3. 脚本文件应包含必要的导入语句,引入所需的库和模块。
四、代码风格1. 使用统一的缩进方式,推荐使用四个空格进行缩进。
2. 使用有意义的变量名和函数名,避免使用单个字母或无意义的命名。
3. 在代码中使用适当的空行和注释,提高代码的可读性。
4. 避免使用过长的代码行,推荐每行不超过80个字符。
5. 避免使用全局变量,尽量使用局部变量和参数传递数据。
五、测试用例设计1. 每个测试用例应具有唯一的标识符和描述,以便于区分和理解。
2. 测试用例应包含预置条件、测试步骤和预期结果,确保测试过程清晰明确。
3. 测试用例应尽量独立,避免依赖于其他测试用例的执行结果。
4. 测试用例应包含异常处理和错误信息输出,确保测试结果准确可靠。
六、断言和日志1. 使用适当的断言来验证测试结果,确保测试的准确性。
2. 断言语句应具有清晰的描述和合理的判断条件。
3. 在关键的测试步骤和断言语句处添加日志输出,方便排查问题和分析测试结果。
七、异常处理1. 在脚本中合理处理可能出现的异常情况,避免脚本中断或异常退出。
2. 使用try-except语句捕获异常,并在except块中进行适当的处理或错误提示。
八、数据驱动1. 使用数据驱动的方式设计测试用例,将测试数据和测试逻辑分离。
自动化测试设计规范V1.0(仅供内部使用)For internal use onlyPrepared by拟制陈玉梅37906 Date日期2010-12-15Reviewed by 评审人孟咏喜00137435顾江00118951张杰飞00101597Date日期2010-12-16Approved by批准Date日期yyyy-mm-ddAuthorized by签发Date日期yyyy-mm-ddHuawei Technologies Co., Ltd.华为技术有限公司All rights reserved 版权所有侵权必究Revision record 修订记录Date 日期Revision Version 修订版本CR ID / Defect ID CR 号SectionNumber 修改章节Change Description修改描述 Author 作者2010-12-16 1.00 初稿完成 陈玉梅 379061 前言本规范适用于指导基于AutoSpace 自动化测试平台的自动化测试设计活动,目的是通过规范性指导提升自动化测试设计质量。
自动化测试设计的活动流程如图所示:自动化测试分析AW 设计开始自动化用例设计 结束数据规划测试工程设计TSE 、测试骨干自动化测试工程师自动化测试设计活动角色主要分为两种:✧自动化设计人员(如TSE、测试骨干)负责自动化用例设计前的设计活动,包括自动化测试分析、AW设计、数据规划、测试工程设计等✧自动化测试工程师负责自动化用例设计本文将按照自动化测试设计流程,分别介绍各个活动的设计规范和指导原则。
2自动化测试分析自动化测试分析过程,重点分析产品特性哪些适合自动化、哪些特性应优先实现自动化。
适合自动化的范围包括:1.产品特性相对比较稳定,变化不是非常大2.产品特性重要程度高,每轮版本测试、回归测试基本都是必测的3.自动化投入成本在接受范围内,最好已有技术储备通过如上三个维度分析自动化实现的优先级,应优先实现投入产出比收益明显的产品特性,即自动化较易于实现、且需要频繁测试的重要特性。
3AW设计AW是自动化用例设计的基础,应易于理解、好用,便于测试人员快速掌握,降低学习成本,提高用例设计效率。
AW设计的基本原则是基于业务进行抽象、设计粒度合理,尽可能覆盖自动化用例。
对于底层AW(如协议AW),应封装为类似“开户”、“用户认证”、“拨号”等业务逻辑,降低用例设计难度和接口变更时对用例的影响,提升自动化用例的重用性。
3.1 可用性3.1.1AW及AW参数命名清晰,有明确的含义AW命名要简洁、易懂,便于测试人员一眼便知其大概含义,降低学习成本。
AW命名格式可参考:命名格式举例说明主语+ 动词+ 名词用户订购产品动词+ 名词检查话单名称+ 动词数据库检查、拨号同样,AW参数命名应易于理解,例如:手机型号3.1.2AW命名风格应统一,避免中英文混用不规范示例:3.1.3AW及AW参数应定义别名AW和AW参数定义别名(Alias),避免因修改AW或AW参数而引起自动化用例脚本不兼容性问题。
别名建议英文化,同时命名含义明确,便于AW开发实现。
规范示例:不规范示例:3.1.4AW及AW参数说明信息应尽量详细AW及AW参数说明信息应尽量详细,方便指导测试设计人员快速掌握AW的使用,降低AW的学习成本。
规范示例:图:AW说明信息规范样例图:AW参数说明信息规范样例3.1.5AW参数值建议采用人性化的语言描述例如:AW参数“预期结果”,建议用“成功”、“失败”作为参数值,而不是数字“0”、“1”规范示例:不规范示例:3.1.6AW参数值有多个取值时,应置为枚举值AW参数有多个取值时,应在ValuePool中设置枚举值,便于用例设计时快速选择。
规范示例:图:AW参数置为枚举值示例图:用例设计时AW参数值的选择示例3.1.7AW参数的常用值应设置为默认值若AW参数值有常用值,应将常用值设置为AW参数的默认值,减少用例设计的AW参数值输入,提高用例设计效率。
规范示例:3.1.8AW参数可通过分组,保证参数结构的清晰规范示例:3.1.9AW可通过分组,保证A W结构的清晰按照产品特性对AW进行合理分组保持结构清晰,让自动化用例设计时方便选择AW。
规范示例:3.1.10正确区分“必填”和“可填”的AW参数AW参数中,有的参数值不允许为空即必须填写,有的参数填写是可选的。
在AW设计时,AW参数应正确设置“Can Empty”选项值,明确该参数是否必填。
规范示例:图:AW参数置为不允许为空的示例图:用例设计时必填和可填参数以图标区分的示例3.1.11AW参数个数不宜太多,可将复杂参数设计为外挂参数AW参数个数不宜太多,否则用例设计时填写AW参数值很不方便。
复杂的AW参数可设计为外挂参数,通过外挂对话框辅助输入。
规范示例:图:AW参数置为外挂参数示例图:用例设计时通过外挂对话框辅助参数输入的示例3.2 Logic封装业务封装的基本原则:基于业务封装,Logic参数应体现业务,屏蔽具体底层实现细节。
业务逻辑封装的好处:✧Logic体现测试的业务,测试人员设计用例时不用关心底层细节、上手容易✧Logic参数一般不多,测试人员设计用例方便,提高用例设计效率✧业务或接口变更时,往往只要修改Logic内部逻辑,而不用维护大量的自动化用例脚本,提升自动化用例的重用性规范示例:示例1:图:基于协议的业务封装示例示例1中将Soap协议细节封装在Logic,Logic对外的参数是ServiceID、ServiceName 等业务参数,测试人员不用关心Soap协议的WSDL文件、Soap消息体的结构等内部细节。
示例2:图:基于Web控件基本操作的业务封装示例示例2中将Web控件的基本操作封装在Logic中,Logic对外的参数是控件名称、日期等业务参数,测试人员在用例设计时不用关心每个控件的基本操作,减少用例步骤,降低用例设计难度,提升用例的重用性。
不规范示例:示例中业务逻辑参数没有体现业务,仍是协议层面的实现细节。
示例中,Logic的参数体现的仍是底层协议细节,封装粒度不合理,应该基于业务进行抽象和封装。
3.3 公共AW使用公共AW使用应遵循两个基本原则:✧尽量使用AutoSpace平台提供的公共AW,避免重复设计和开发✧公共AW应使用引用方式,不应将公共AW直接合并到自定义AW文件中公共AW采用引用方式的好处有:✧引用的公共AW无法编辑,避免误操作✧公共AW升级时可自动升级,无需手工升级规范示例:不规范示例:4数据规划根据产品特性,应事先规划自动化测试需要的基础业务数据。
这些预先规划好的数据,可以在测试环境搭建时预置到被测系统中。
自动化用例设计时可直接使用这些数据,简化用例的数据准备,一定程度上可提高用例执行效率。
数据规划举例:一个网上银行系统,实现用户之间的汇款业务。
用户分为两种:✧VIP用户:汇款不收手续费✧普通用户:汇款收手续费用户信息定义如下:字段名字段含义类型取值范围UserName 用户名Char[16] 1~16Account 帐号Char[16] 16个字符,’0’~’9’字母组成的字符串Password 密码Char[8] 4~8个字符isVIP 是否VIP用户int [0,1]0: 普通用户1: VIP用户Balance 余额int [0,100000],单位为“元”自动化测试设计时,应考虑普通用户和普通用户、普通用户和VIP用户、VIP用户和VIP用户之间的汇款是否正确扣手续费用。
因此,我们可以规划如下基础的用户数据:UserName Account Password isVIP BalancenormalUser1 6222999999993333 123123 0 5000normalUser2 6222999999995555 123123 0 0VIPUser1 6222999999998888 321321 1 100000VIPUser2 622299999999999 Abcd12 1 50005测试工程设计测试工程是自动化执行需要的所有文件的集合,包括:AW定义文件、Replace文件、AW实现体文件、外挂文件、AW实现体的配置文件等。
5.1 所有工程文件应放在工程目录中规范示例:5.2 工程文件的路径应置为相对路径工程文件的路径应设置为相对路径,且相对于工程目录。
规范示例:图:工程目录下所有文件都置为相对路径示例图:AW实现体文件置为相对路径的示例图:参数外挂文件置为相对路径的示例5.3 Repalce文件定义测试环境的数据(如IP地址、端口号等)、基础业务数据,可以作为全局变量定义在Replace文件中。
用例设计时使用这些变量,实现用例脚本和数据分离,提升用例的重用性。
定义的变量应易于理解、好用,方便自动化用例设计。
5.3.1变量命名应清晰、有明确含义Replace变量命名规则为:V AR_xxx其中xxx为变量名称,其命名应清晰、有明确含义。
规范示例:5.3.2变量含义说明应清晰、易懂变量定义时应给出变量的含义说明,要求清晰、易懂,方便自动化用例设计时正确使用。
规范示例:5.3.3变量较多时,应通过分组保证结构清晰按照环境部件、业务数据类型,对Replace变量进行合理分组,保持结构清晰、提高文件的维护效率。
规范示例:6自动化用例设计自动化用例设计应遵循四个基本原则:基本原则描述用例的独立性✧尽量降低用例和用例之间耦合性,即单个用例重复执行或单独执行,不会对其他测试用例有任何影响;✧自动化用例批量执行时,避免用例间干扰导致用例执行失败用例的重用性✧测试环境变更时,只需要修改环境数据配置,即可进行自动化执行,无需修改自动化用例脚本✧接口变更时,只需要修改封装的业务逻辑,即可进行自动化执行,无需修改自动化用例脚本用例的可读性添加必要的注释或分组,保证用例结构清晰,提升用例可维护性用例的健壮性多AW集并发执行、时延性AW等,应做好同步处理,避免因异步导致用例执行的不稳定6.1 用例的独立性6.1.1用例申请的资源应在本用例的Aftershell中及时释放,避免用例间的干扰用例常见的申请或改变的资源类型包括:序号资源类型申请与释放资源方式1 Socket Preshell中申请Socket资源,Aftershell中释放Socket资源2 服务状态改变Preshell中启动应用服务,Aftershell中停止应用服务3 配置项的改变Preshell 中修改配置文件中配置项,Aftershell中恢复配置文件中配置项4 业务数据(如开户)Preshell中申请开户,Aftershell中申请销户注:资源释放应放在用例的AfterShell中,不建议在下一个用例的Preshell中。