菏泽做网站建设的公司,wordpress 发文章,百度浏览器广告怎么投放,精品网站建设费用 尖端磐石网络您是否认为仅仅是因为您的Web应用程序在过渡环境中以鲜艳的色彩通过了#xff0c;您的生产环境也将是相同的吗#xff1f; 您可能需要重新考虑#xff01; 特别是#xff0c;如果我们指的是跨浏览器测试 #xff0c;则需要确保跨各种操作系统#xff0c;运行在不同操作系… 您是否认为仅仅是因为您的Web应用程序在过渡环境中以鲜艳的色彩通过了您的生产环境也将是相同的吗 您可能需要重新考虑 特别是如果我们指的是跨浏览器测试 则需要确保跨各种操作系统运行在不同操作系统上的各种浏览器浏览器版本无缝呈现Web应用程序。 毕竟在您实际进行生产测试之前您可能永远都不知道客户会面临哪些错误对吗 但是说起来容易做起来难。 作为敏捷测试人员您每两个月每周甚至每天都会收到新的测试要求。 如果您仅专注于生产中的测试那么谁将负责舞台环境中的测试 这就是为什么要求您在生产环境中以及过渡环境中进行测试的原因。 从经验中我知道如果手动完成这可能是一个艰苦而艰巨的旅程。 幸运的是我们拥有Selenium测试自动化来支持我们。 怎么样 这正是我将在今天的文章中讨论的内容。 本文将帮助您了解为什么生产中的硒测试自动化对于您的下一个版本至关重要 那么什么是生产测试TiP 如果您刚刚开始测试人员的旅程那么很有可能您可能不知道SDLC软件开发生命周期并且可能会对生产是什么感到好奇。 我们在生产中要测试什么 嗯每个Web应用程序都在不同的环境中克隆。 一种用于开发人员一种用于测试人员另一种用于您的客户。 与客户进行交互的Web应用程序称为生产环境而其他应用程序称为暂存环境。 因此每当新的增强功能进入发布周期时便会首先将其部署在属于开发人员的阶段环境中以便他们可以对更改进行单元测试。 确认更改后将更改推送到测试人员所属的登台环境中他们可以在其中执行详细的集成和回归测试以验证代码更改。 一旦测试团队通过了签字这些更改就会在生产环境中排队客户可以在其中使用添加到Web应用程序中的最新功能。 尽管测试团队在登台环境中进行了详细的测试但是一旦将更改推送到生产环境中他们就应该执行另一轮详细的测试以确保不会妨碍客户的用户体验。 最后一轮测试称为生产测试。 我们在生产中要测试什么 几乎所有事物。 除了在登台环境中经过验证的测试脚本之外生产中的测试还包括所有在生产环境之前无法识别或预测的测试用例。 但是您已经在舞台上进行了测试那么为什么要在生产中进行测试 您可以根据需要编写任意数量的案例但这不足以复制实时生产环境。 重现客户数据或预测其行为并不容易。 别忘了您的登台环境可能不会像生产环境那样暴露于实时流量中。 同样如果您的暂存环境不是您产品的精确克隆在大多数情况下是正确的那么很有可能在上线时可能错过跨浏览器不兼容CSS属性或更糟糕的是其中。 登台环境对您的组织失败的13个原因 这就是为什么在每个发布周期中都必须在生产环境中进行跨浏览器测试的原因。 但是如果不是单调的话要在数百种浏览器和操作系统上测试Web应用程序肯定会很累。 很多时候由于有紧急中断的夜间修复程序和时间不足您甚至可能最终在第11小时执行浏览器兼容性测试 因此您可能最终只进行了冒烟测试而不是回归测试。 好吧如果真是这样您几乎可以期待浏览器错误将以您的方式出现。 让我们以实时场景来更好地理解这一点。 您的DevOps团队已准备好将最新的代码更改部署到Web应用程序中的管道。 在最终将其投入生产环境之前您需要在多个登台环境中对其进行测试。 在分阶段进行测试时您可以在所有主要的浏览器上进行测试例如去年推出了所有最新版本的Google ChromeMozilla Firefox和其他浏览器。 您进行了快速的烟雾测试一切似乎都正常。 您的Web应用程序上线了您可以坐下来放松身心以为一切都已完成并完成。 这样日子就过去了 您是否发现上述情况出了什么问题 您猜对了 您显然错过了旧版本的浏览器现在旧版本的所有用户可能都疯了。 他们离开了您的Web应用程序停机的数量猛增。 无需惊慌我们已为您服务 我们将成为您的Luke Skywalker的Yoda 要解决此问题您需要确保您已经准备好在零停机时间内在我们的在线Selenium Grid上执行Selenium测试自动化套件。 使用在线Selenium Grid在生产中执行自动浏览器测试可以帮助您清除维护内部Selenium Grid所花费的主要时间障碍并跨不同的操作系统/设备/浏览器分别测试Web应用程序的功能。 这可以帮助您确保在生产中验证产品的跨浏览器兼容性。 长话短说您不能忽视生产中的硒测试自动化。 话虽如此让我们看一下硒测试自动化在生产中的优势。 硒测试自动化在生产中的优势 到目前为止我们知道必须在生产中测试Web应用程序。 但是我们需要自动化吗 Selenium测试自动化的好处是什么让我们看看。 日常监控 借助Selenium测试自动化的便利不仅可以轻松测试您的Web应用程序而且可以每天监控这些测试的结果这变得相当容易。 LambdaTest提供了一个直观的仪表板可帮助您通过我们的在线Selenium Grid分析Selenium测试自动化套件执行的结果。 您可以查看所有时间戳记以及各种日志以帮助您快速调试Selenium测试脚本遇到的任何问题。 查找关键案例以确保可靠的用户体验 硒测试自动化可以帮助您发现生产中的错误然后才能影响任何访客或客户的用户体验。 由于复制实时用户案例场景和用户数据非常困难因此在生产中进行测试有助于识别否则无法识别的独特测试案例。 在高峰时间安排硒测试自动化 生产环境中的硒测试自动化可以帮助您在Web应用程序的高峰时段安排全面的自动浏览器测试。 从而始终确保质量。 减轻回归测试的工作量 硒测试自动化可以帮助您消除回归测试周期中的麻烦。 这样每次将新代码提交给您的产品时您所需要做的就是运行Selenium测试脚本所有内容将自动在不同的浏览器中进行验证。 那还不是全部 利用Selenium测试自动化还可以使您更快地执行Beta程序因此您可以立即获得有关新推出的功能和用户体验的反馈。 利用硒网格加快上市进程 与Selenium WebDriver不同Selenium Grid可以帮助您并行执行测试自动化。 这对于大型和小型公司都至关重要。 每个发布周期都会为您的Web应用程序添加一些新内容这意味着将有更多测试用例可以自动化。 最终如果您依靠Selenium测试脚本执行顺序测试执行您将遇到麻烦。 通过利用Selenium Grid您可以并行运行任意数量的测试用例这可以大大减少测试周期的执行量从而加快上市速度。 如果在生产中进行测试很酷那我们为什么还要犹豫呢 现实情况是在许多公司中测试团队经常会在生产中犹豫甚至忽略测试。 其背后可能有多种原因。 一个是敏捷测试仪的寿命很苛刻每周或每月他们的测试需求只会越来越大。 另一个原因是分阶段环境下的测试周期导致的消耗。 在测试了庞大的测试套件之后在生产环境中测试相同的东西变得令人沮丧。 以及测试清单中的所有新内容。 因此测试人员认为如果可能出现重大问题则以某种方式进行一次烟雾测试会更好然后客户会以任何方式举报。 在生产中执行测试的策略 现在我们已经完成了在生产中进行测试的重点。 接下来的问题是关于实现的问题 如何开始在生产中进行硒测试 我可以使用哪种策略 让我们进一步探讨在生产中执行测试的策略或方法。 蓝绿色部署 在这种策略中部署是在彼此相同的蓝色和绿色两个相似的生产环境中完成的。 在任何时候只有一个环境处于活动状态可以为所有生产提供服务。 在这种情况下蓝色将获得所有生产流量而绿色蓝色的克隆将保持闲置状态。 所有测试均在空闲状态即绿色下进行一旦测试以绿色完成所有流量便路由到该位置并成为新产品。 金丝雀测试 在金丝雀测试中新功能仅向一小部分最终用户推出。 当确保Web应用程序在目标组中运行良好时更改将被汇总到完整的流量中。 A / B测试 在A / B测试中您向最终用户推出了两个不同版本的Web应用程序。 一个版本可以是旧版本另一个版本可以是新推出的功能。 然后在保留性能更好的版本的基础上进一步分析哪个版本性能更好。 自动回滚策略 在此策略中只要发现故障就可以将Web应用程序返回到先前的稳定版本而您仍处于监视阶段。 正确实施后回滚可以帮助您实现以前的稳定应用状态但是实施不当会导致数据丢失。 生产中硒测试自动化的最佳实践 我知道您现在已经准备好使用加速器了迫不及待想为您的生产环境编写Selenium测试自动化套件。 但是作为生产环境中Selenium测试自动化的最佳实践您需要注意一些提示。 查找正确的硒测试工具 选择正确的Selenium测试工具在成功实施测试策略中起着举足轻重的作用从而使其成功或失败。 正确的测试工具以及有效的DevOps流程可以确保从开发到生产的每个阶段都能平稳运行。 召集所有利益相关者并向他们解释生产测试的必要性将至关重要。 诸如LambdaTest之类的Selenium测试工具不仅可以帮助您在超过2000种真实的浏览器上测试Web应用程序。 它还有助于与众多用于CI / CD项目管理即时消息传递无代码自动化等的第三方工具集成。 建立监控流程 仅仅因为您已经部署了自动化策略并不意味着您就可以坐下来放松一下。 即使正确实施了策略和测试方法也总是会遗漏一些错误。 您需要持续监控生产中的测试结果。 密切关注您的Web应用程序如何响应高流量以及服务器和数据库性能。 对应用程序的有效监视可以使您对产品有更深入的了解并有助于识别和缓解不时出现的任何重大错误和问题。 确保主动警报机制 万一生产环境中出现问题请确保在Selenium测试自动化过程中配置了通知或警报系统。 利用詹金斯Jenkins等CI / CD工具该工具可以在发现问题后立即提醒合适的人员您可以尽快找到并解决问题。 如果没有这种自动化错误和缺陷可能会不被注意并妨碍您的用户体验。 使用功能标记 通过使用功能标志可以使用if / then语句包装功能。 通过隔离功能在系统上的效果您可以独立于部署打开/关闭功能从而使您可以更好地控制功能。 这将功能推出与代码部署分开。 一旦使用功能部件标志部署了新代码就可以在实时环境中根据需要对功能部件进行测试。 这使您可以更好地控制该功能及其对代码的影响。 合并POM页面对象模型 页面对象模型通常忽略了它这对于生产中的硒测试自动化是必需的。 您需要使用页面对象模型以便将所有UI元素定位器存储在一个位置这使WebDriver更容易利用Selenium定位器 。 为BDD合并小黄瓜 测试人员常常忽略诸如Gherkin之类的语言解析器因为他们认为单独编写逻辑比编写代码要简单得多。 但是这对于过程中涉及的非编程涉众可能非常有帮助。 他们可以评估Selenium测试自动化脚本如何影响整体系统验证。 始终有执行版本回滚的选项 确保通过更好的稳定性和恢复测试防止任何重大问题。 确保Web应用程序可以从不确定的事件中恢复而不会丢失任何重要功能和关键数据。 如果任何新推出的功能会影响旧功能则需要确保可以有效地将其回滚而不会丢失数据。 总而言之 生产中测试的主要议程是确保Web应用程序在实时环境中稳定。 为了避免中断您需要使测试脚本自动化以确保在所有最新的和旧版浏览器中都对Web应用程序进行了尝试和测试。 硒网格是实现此目标的好方法。 使用Selenium Grid您可以跨所有浏览器自动执行测试脚本。 它不仅可以帮助您自动化重复的测试用例还可以帮助我们并行执行它们。 最终减少测试周期内的总体时间消耗。 万一发生故障请确保您可以选择回滚到Web应用程序的先前部署版本。 祝您测试愉快 翻译自: https://www.javacodegeeks.com/2020/03/why-selenium-automation-testing-in-production-is-pivotal-for-your-next-release.html