自动化Java Web应用程序的烟雾,功能和回归测试?

时间:2014-05-21 02:13:31

标签: java automated-tests functional-testing regression-testing smoke-testing

功能测试的 是一个集成测试,用于检查整个完整的应用程序功能部分;减去任何存根,模拟或其他测试双打。对于Web应用程序,这可能会手动检查当用户尝试在登录表单上输入错误凭据时会发生什么。

我对冒烟测试的 是一个快速的一系列功能测试,可用于确定应用是否已正确启动及其主要子系统都在线。对于Web应用程序,这可能是转到运行状况检查URL并确保应用程序已启动,并且它可以到达其所有从属子系统(其数据库,其消息代理等)。

回归测试的理解是它的功能测试,将来用于确定特定功能是否不再按预期工作。由于函数测试是针对新功能编写的,或者是为了修改现有功能而重写的,因此它们会添加到回归测试套件中。从这个意义上讲,回归测试套件是特定Web应用程序的所有有效功能测试的组合。

在我继续前进之前,如果我到目前为止所说的任何内容都是误导或者不是真的,请先纠正我!

假设我或多或少走上正轨:

  1. Selenium WebDriver或BrowserStack等工具在哪里分类?它们是用于吸烟还是回归测试?
  2. 进行这类测试的普遍接受的方法/工具是什么?
  3. 从自动构建(例如Jenkins或Bamboo)启动/运行这些测试的一般公认方法是什么?

1 个答案:

答案 0 :(得分:1)

通常,考虑到web-app的自动化,我们有以下几个阶段

  • Automate the Sanity/Smoke Tests

为此,我们需要确保使用测试自动化工具可以实现完整性测试的自动化标准。使用单一工具实现Web应用程序的所有域的健全性自动化没有硬性规定。一旦理智稳定下来,我们继续下一步。

  • Automate the Release / Regression Suite

发布套件或回归套件的自动化必须具有成本效益,并且测试自动化框架设计在此处起着重要作用,因为测试需要长期维护

如有问题,我的回复如下

  1. 这取决于项目策略。
  2. 我建议在某种程度上选择自动完整性测试,以便快速完成自动化。如果我们在这里开始完全成熟的测试自动化框架开发,我们可能会花更多时间进行智能自动化

    对于Release Automation,仔细规划框架架构,考虑Framework的所有可能性和要求

  3. 我们可以将自动化测试与任何CI服务器(如Jenkins或Bamboo或游轮)集成,这完全取决于自动化策略

  4. 考虑到我的经验,如果我是你,这就是我的工作

    • 首先,确定可通过该域自动化的工具
    • 使用基本框架自动化Sanity,可以运行测试并将报告发送给利益相关者
    • 建立一个CI服务器,并创建一个作业,使其每天运行,所有利益相关者都收到结果
    • 适用于Release Suite的自动化方法,包括测试自动化框架开发