测试自动化框架是一组用于执行自动化软件测试的工具。测试自动化框架比手动测试具有显著优势,通常用于快速软件开发。这些框架允许软件开发人员创建测试,执行测试并分析测试结果。测试自动化框架可能由代码、数据、图形...
测试自动化框架是一组用于执行自动化软件测试的工具。测试自动化框架比手动测试具有显著优势,通常用于快速软件开发。这些框架允许软件开发人员创建测试,执行测试并分析测试结果。测试自动化框架可能由代码、数据、图形用户界面(GUI)或这些内容的组合驱动。

人工控制计算机测试自动化框架是为了满足快速软件开发的需要,在经典的瀑布式软件开发生命周期中,软件测试是在实现或编码之后进行的一个离散的阶段,人执行测试是典型的,许多开发团队已经用各种敏捷软件开发方法取代了瀑布模型,这些方法通常需要快速、迭代的开发快速开发产生了对快速测试的需求。测试自动化框架允许软件团队在代码库上执行频繁的自动化测试。例如,使用测试自动化框架的团队可能会选择在夜间运行一整套测试,而不是在开发后需要单独的测试阶段,以及在对源代码进行更改时全天进行较小的自动测试块最常用的框架类型是代码驱动框架,用于执行白盒测试。代码驱动框架要求开发人员以单元测试的形式编写小代码片段,以测试软件功能或性能。使用代码驱动框架的开发人员必须注意在其中编写软件一种可测试的方法,也就是说,代码必须模块化,这样单元测试就可以调用一段代码并验证结果。这些框架通常包括一个xUnit的实现,其中"x"根据所测试的编程语言而变化GUI驱动的测试框架用于执行黑盒测试,用户可以像用户一样使用软件工具,通过鼠标和键盘输入。它们可能由开发人员编写的用于执行一系列功能的脚本组成,也可能由工具生成的脚本组成,例如录制和回放脚本。这些框架的一个潜在缺点是每当GUI更改时,脚本都会中断。一些GUI自动化框架可能会生成一个脚本,在GUI发生更改时,开发人员可以对其进行编辑,而其他框架可能需要用户创建新的录制和回放会话数据驱动的测试框架使用数据执行软件测试,这些测试通常使用指定输入和输出的数据表。数据可以保存在不同的位置,例如数据库,电子表格或文本文件。可以编写脚本来执行以输入为参数的软件方法,并根据输出验证软件方法的返回值任何其他可以改变的东西,例如测试执行的环境,也可以与数据一起存储,并与测试脚本分离,这些框架的一个优点是数据和逻辑分离,这通常导致较低的长期维护。