📅  最后修改于: 2020-12-07 05:25:54             🧑  作者: Mango
在敏捷项目中,测试人员负责以下日常任务-
支持开发人员进行编码,并阐明系统的预期行为。
帮助开发人员创建有效的单元测试。
开发自动化脚本。
通过持续集成集成自动化测试工具/脚本,以进行回归测试。
为了有效,快速地执行这些任务,大多数敏捷项目中都使用了支持代码CI和测试组件CI的持续集成(CI)系统。
敏捷项目中的测试人员和开发人员可以从各种工具中受益,这些工具可以管理测试会话以及创建和提交缺陷报告。除了用于敏捷测试的专用工具之外,敏捷团队还可以从测试自动化和测试管理工具中受益。
注意-记录和回放,最后一次测试,重量级和测试自动化解决方案不灵活,因为-
这种工具鼓励的最后测试工作流程不适用于敏捷团队。
使用此类工具创建的无法维护的脚本成为更改的障碍
这样的专用工具需要测试自动化专家,因此容易产生孤岛
广泛使用的工具是-
S.No. | Tool & Purpose |
---|---|
1 |
Hudson CI Framework |
2 |
Selenium Functional Testing – Integrated with Hudson |
3 |
CruiseControl CI Framework |
4 |
Junit Java Unit Test |
5 |
Nunit .Net Unit Test |
6 |
Cobertura / JavaCodeCoverage / JFeature / JCover / Java Test Coverage |
7 |
Jester Java – Mutation Testing/ Automated Error Seeding |
8 |
Gretel Java Test Coverage Monitoring Tool |
9 |
TestCocoon C/C++ or C# – reduces the amount of Tests by finding redundant Tests and finds Dead Code |
10 |
JAZZ Java – Branch, Node, and Defuse Coverage and implements a GUI, Test Planners, Dynamic Instrumentation, and a Test Analyzer |
11 |
Ant Java – Automation Build |
12 |
Nant .Net – Automation Build |
13 |
Bonfire Agile Testing add-on for JIRA |
有效的敏捷测试自动化工具支持-
使用“测试优先”方法的早期测试自动化。
使用真实语言,领域特定语言编写测试自动化代码。
关注系统的预期行为。
将测试的本质与实现细节分开,从而使其与技术无关。
促进协作。
自动化单元测试(使用Junit或NUnit)支持测试优先的编码方法。这些是白盒测试,可确保设计合理且没有缺陷。此类测试由开发人员在测试人员的支持下构建,并且可以独立于所需的功能。这导致交付的产品可能不符合客户要求,因此没有商业价值。
通过自动化由客户,其他利益相关者,测试人员和开发人员共同编写的验收测试,可以解决此问题。自动验收测试由客户或产品所有者/业务分析师编写,以反映产品的预期行为。开发人员的参与可确保按要求生成代码。但是,如果测试仅专注于验收,则生成的代码可能仍不可扩展。
因此,自动单元测试和自动验收测试是互补的,并且在敏捷开发中都需要。
支持自动验收测试的敏捷工具和框架是-
Ward Cunningham开发了可用于验收测试自动化的Fit工具。适合允许-
客户或产品负责人提供使用Microsoft Word和Microsoft Excel的产品行为的示例
程序员可以轻松地将这些示例转换为自动化测试。
Fit 1.1支持Java和.NET。
FitNesse是一种Wiki,是一种Web服务器样式,它允许任何访问者进行任何编辑,包括更改现有页面和创建新页面。使用简单的标记语言,您可以轻松地创建标题,使文本变为粗体,下划线和斜体,创建项目符号列表以及进行其他类型的简单格式化。
在FitNesse中,验收测试自动化如下-
将测试表示为输入数据和预期输出数据的表格。
使用FitNesse将测试表放在您可以编辑的页面上。
或者,将测试表放在Microsoft Excel中,复制到剪贴板,然后使用Spreadsheet to FitNesse命令使FitNesse正确格式化表格
运行测试
您可以通过对测试表中的单元格进行颜色编码来获得测试结果
绿色单元格表示已获得期望值
红细胞表示获得的值与预期值不同
黄色单元格表示已引发异常
Cucumber是基于行为驱动开发(BDD)框架的工具。关键特征是-
用于编写Web应用程序的验收测试。
允许以易于理解和理解的格式(如普通英语)自动进行功能验证。
在Ruby中实现,然后扩展到Java框架。两者都支持Junit。
支持其他语言,如Perl,PHP, Python,.Net等。
可与Selenium,Watir,Capybara等一起使用。