首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >软件自动化测试演示思想?

软件自动化测试演示思想?
EN

Stack Exchange QA用户
提问于 2017-03-22 02:52:41
回答 4查看 5.6K关注 0票数 7

我为一些三年级的大学生制作了一个软件自动化演示,内容包括:

  1. 为什么我们需要自动化。(为了在几个小时内测试100's的高优先级TC,我们需要测试自动化等等)
  2. 测试自动化的好处。
  3. 在执行任何自动化任务之前,我们需要更好地了解以下内容:
    • 什么是自动化的,哪些不是自动化的。
    • 什么时候自动化,什么时候不自动。
    • 能自动完成多少。

  4. 软件测试自动化的一个过程。
  5. 一些自动化工具的样本。

还有其他重要的事情我错过了吗?

更新:我关于测试过程、自动化和Selenium的介绍是这里

EN

回答 4

Stack Exchange QA用户

发布于 2017-03-22 03:28:22

为什么我们需要自动化。(为了在几个小时内测试100个高优先级TC,我们需要测试automation....etc)

  • 手动测试速度慢、成本高,对于快速部署来说,测试自动化是必须具备的。
  • Facebook、Uber每天都会发布很多次软件,如果没有测试自动化,Facebook和Uber就永远不会变成今天的样子。

测试自动化的好处。

  • 从长远来看更便宜。
  • 可重复的。
  • 能更好地利用时间和空间,例如在下班后运行测试自动化。

在执行任何自动化任务之前,我们需要对这些事情有一个更好的了解:什么是自动化的,哪些不是自动化的。什么时候自动化,什么时候不自动。能自动完成多少。

  • 对于涉及自然语言解释、GUI解释的任务,很难将它们自动化,因为它们是为人类设计的。
  • 重复任务是自动完成的,特别是处理数字的任务。
  • 测试自动化有间接费用,如果预算太小或者期限太紧,您应该避免它。
  • 测试自动化不能有创造性,手工测试/探索性测试是一个必须找到随机错误的方法。

软件测试自动化的一个过程。

  • 太多了,谷歌吧。它基本上是一个软件开发过程。

一些自动化工具的示例。

  • 单元测试框架,Junit,unittest
  • BDD框架,机器人框架
  • Jenkins,免费集成工具
  • Github,版本控制
票数 4
EN

Stack Exchange QA用户

发布于 2017-03-22 06:36:48

此外,我还将展示/谈论以下主题:

票数 4
EN

Stack Exchange QA用户

发布于 2019-05-02 21:18:08

除了上面提到的内容外,如果我介绍一下自动化,我还想补充以下几点-

自动化如何适应功能测试?

与自动化相关的一个常见误解是,它是手动测试的替代品。相反,它实际上是整个测试过程的一部分,手动和自动化测试是测试过程的一部分。它们相辅相成,而不是替代。

以上所述,理解在何种情况下自动化测试可能是一个很好的选择是很重要的。这里有一些用例-

  • 自动执行实际耗时的普通/可重复任务
  • 在DevOps环境中工作,从SDLC开始就需要自动化;直到发布和生产监控阶段。
  • 在签入新代码时(实现了新功能)以获得对系统的快速反馈。我们将有自动测试,为每一个代码签入自动触发。
  • 每天运行几个测试,以确保系统的旧功能仍按预期工作,以创建用于手工探索性测试的测试数据,否则手工测试将花费时间
  • 使用数据驱动测试用数百个数据集测试不同的字段
  • 为了进行加载/压力测试,我们同时模拟成千上万的用户使用应用程序,否则将很难手动完成。

如何想出一个很好的自动化测试策略?

建立一个良好的测试自动化策略的第一步是与整个团队一起集思广益-

  • 我们用自动化来解决什么问题?
  • 是否有足够数量的熟练资源可用于自动化?堆栈skilled成本与自动化的价值?
  • 您的应用程序可测试性如何?
  • 自动化的目标是什么?
  • 如何使自动化更加明显?
  • 自动化需要什么类型的工具?
  • 我们是选择开源工具还是供应商工具?
  • 自动化任务需要遵循什么过程?
  • 您是否有足够的利益相关者支持,以成功地实现自动化?

以上问题有助于明确项目中何时何地需要自动化。一旦我们决定更进一步并开始构建我们的测试自动化框架,为了帮助构建更健壮的自动化框架和编写更好的测试,需要考虑的一些事情是:

  1. 创作与执行
  2. 稳定性
  3. 可重用性
  4. 扩展性
  5. 维护
  6. 故障排除
  7. 报告
  8. CI/CD集成

自动化的良好实践是什么?

在构建自动化框架和编写自动化代码时,我们可能需要考虑一些与自动化良好实践相一致的事情。它们如下-

  • 有专门的自动化团队,有一定的编程经验(如果可能的话)来完成自动化。他们可以帮助指导其他非技术人员,让他们参与自动化过程。
  • 将自动化任务视为单独的故事,就像我们如何将不同的特性作为故事的一部分实现一样。这使得团队尊重自动化任务,并且它们更容易管理。
  • 使用模式来确保在使用开源框架时ids、可重用函数和实际测试是分开的。如果使用供应商工具,这些复杂的大部分都是由工具本身处理的。
  • 积极对待在CI/CD管道中运行自动化测试的方法。使用Maven或Ant构建脚本来帮助这项工作。使用Jenkins、Travis CI、TeamCity等构建工具,在每个代码检查中调用您的测试,以建立与编码实践、PR评审、自动化特性排序等相关的整个团队所遵循的过程。
  • 通过仪表板,整个团队都可以看到自动化结果。在日常的起立会议,回顾会议和其他团队会议中解决这些问题。
  • 对整个团队进行充分的培训,帮助他们更好地实现自动化。让他们参加会议和会议,把外界的知识带入团队。

-Raj

票数 1
EN
页面原文内容由Stack Exchange QA提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://sqa.stackexchange.com/questions/26293

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档