在生产代码/服务器上运行测试

2024-05-23

我在单元测试/自动化测试方面相对缺乏经验,所以如果这个问题没有任何意义,请原谅。

我当前正在处理的代码库耦合如此紧密,以至于我需要重构大部分代码才能对其运行单元测试,所以我阅读了一些帖子并发现了 Selenium,我认为它确实是一个很酷的程序。

我的客户希望在我们的生产服务器上每十分钟运行一次特定的自动化测试,以确保我们的网站正常运行,并且某些功能/方面正常运行。

我从来没有真正考虑过对生产服务器运行测试,因为这会给站点增加额外的压力。我一直认为您会针对临时服务器运行所有测试,如果这些测试有效,那么只要托管提供商没有遇到问题,您就可以假设生产站点正在运行。

您对在实际生产服务器上测试生产代码有什么想法吗?

非常感谢大家!


如果您将硒脚本视为“监视”而不是“测试”,也许会有帮助?我希望每个主要网站都进行某种监控,即使只是定期 PING,或者经常加载主页。虽然这种方式可能走得太远,但总体上不要害怕这个概念。那么这种监控/测试会给您和您的客户带来哪些好处呢?

  1. 不知何故,并不是世界上所有最好的测试都可以预测用户会做的奇怪的事情,无论是有意的还是纯粹的数字力量(如果打字机上的 100 万只猴子可以写哈姆雷特,想象一下几百个点击快乐的用户可以做什么?站点可以告诉您它是否已启动,但如果表已损坏并且报告现在失败,则不会告诉您,这一切都是因为用户键入了一个带有元音变音的值。

  2. 虽然您的网站可能在临时服务器上表现良好,但随着时间的推移,它可能会开始降级。如果您正在监控这些硒测试的性能,您就可以领先于缓慢的投诉。当然,正如您提到的,请确保您的监控也不会造成问题!您可能必须说服您的客户,某些测试适合每 X 分钟运行一次,而其他测试则只能每天凌晨 3 点运行一次。

  3. 如果您最终对实时站点进行紧急更改,您会更有信心知道测试正在运行以确保一切正常。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在生产代码/服务器上运行测试 的相关文章

  • 为什么 foreach 这么慢?

    PHPBench com http www phpbench com 在每个页面加载上运行快速基准测试脚本 在 foreach 测试中 当我加载它时 foreach 的运行时间是第三个示例的 4 到 10 倍 为什么本机语言构造明显比执行逻
  • 在Python中复制字典的快速方法

    我有一个经常与字典一起使用的Python 程序 我必须把字典复印数千次 我需要密钥和相关内容的副本 副本将被编辑 并且不得链接到原始文件 例如 副本中的更改不得影响原始文件 键是字符串 值是整数 0 1 我目前使用一个简单的方法 newDi
  • 为什么 size_t 和 unsigned int 比 int 慢?

    我正在 Windows 中的 Visual Studio 项目中使用下面的简单交换排序算法尝试不同的整数类型 处理器是英特尔 该代码是在 Release x64 中编译的 优化设置为 最大化速度 O2 编译设置对应的命令行为 permiss
  • 如何加速数百万个对象的Python实例初始化?

    我定义了一个pythonclass named Edge如下 class Edge def init self self node1 0 self node2 0 self weight 0 现在我必须使用以下命令创建大约 10 6 到 1
  • 长 IN 子句是代码异味吗?

    简单的问题 想知道长 IN 子句是否有代码味道 我真的不知道如何证明它的合理性 除了我认为的味道之外 我无法解释为什么它有味道 select name code capital population flower bird from us
  • 是否有更快的方法来检查 LINQ to XML 中的 XML 元素并解析 bool?

    仅供参考 这与我的上一个问题非常相似 是否有更快的方法来检查 LINQ to XML 中的 XML 元素 https stackoverflow com questions 2065665 is there a faster way to
  • 如何使用 python 子进程杀死性能记录?

    我正在尝试使用性能实用程序 https www brendangregg com perf html监视我的系统 它将在 python 脚本中启动和终止 我创建了一个沙箱 如下所示 extra params F 99 g a record
  • 真实文件对象比 StringIO 和 cStringIO 慢?

    StringIO其代码中有以下注释 Notes Using a real file is often faster but less convenient There s also a much faster implementation
  • Blazor WebAssembly 反序列化比下载慢很多?怎么了?

    在我的 Blazor 应用程序中 我有一个具有类似方法的组件 我已将 GetFromJsonAsync 调用替换为其中的代码 以缩小缓慢部分的范围 private async Task GetData IsLoading true stri
  • SQL Server 2005存储过程性能问题

    我遇到以下问题 当从我的应用程序调用存储过程时 时不时地 例如 1000 次调用中的 1 次 需要 10 30 秒才能完成 通常 存储过程的运行时间不到一秒 这是一个相当简单的过程 只需一个选择即可将几个表连接在一起 所有表名都设置有 NO
  • 我应该在 VS Code 中为“json.maxItemsCompulated”设置什么?

    默认状态为 5000 个符号 这取决于机器的性能还是其他什么 从 VS Code 设置 JSON 计算的最大项目数 计算的轮廓符号和折叠区域的最大数量 由于性能原因而受到限制 这与编辑器中的 GUI 按钮相关 您可以使用它来折叠 JSON
  • 性能 - String.charAt(0) 与 /^.{1}/

    从概念上讲哪个应该更快 String charAt 0 or 1 regex String charAt 0 必须处理和应用正则表达式 速度测试资源 Paul S https stackoverflow com users 1615483
  • RMI 有多快?

    我看到过这样的问题 两个独立的 Java 桌面应用程序之间的通信 https stackoverflow com questions 1680898 communication between two separate java deskt
  • 如何加快编辑距离计算速度

    我正在尝试运行模拟来测试平均值编辑距离 http en wikipedia org wiki Levenshtein distance之间随机 二进制字符串 我的程序是用 python 编写的 但我正在使用这个C扩展 https githu
  • 慢 Eclipse Spring STS 插件

    我是 Spring 新手 安装了 Eclipse STS 插件 使用服务似乎非常慢 CPU 使用率激增 笔记本电脑只会变热 实际上风扇就像喷气发动机一样运行 直接响应服务的启动 停止 虽然下面的内容确实为我解决了 Spring STS 的所
  • 我们可以使用什么方法来重塑非常大的数据集?

    当由于非常大的数据计算将花费很长时间并且因此我们不希望它们崩溃时 事先知道要使用哪种重塑方法是很有价值的 Lately methods for reshaping data have been further developed regar
  • Node.js 有水豚吗?

    有谁知道 Node js 是否有类似 capybara 的东西 怎么样Zombie http zombie labnotes org 僵尸 js 使用 Node js 进行极其快速的无头全栈测试 The Bite 如果你要编写一个速度极快的
  • 使用map.get()时使用java Map.containsKey()是多余的

    一段时间以来 我一直想知道在最佳实践中是否允许避免使用containsKey 方法上java util Map而是对结果进行空检查get 我的理由是 两次查找值似乎是多余的 首先是查找containsKey 然后再次为get 另一方面 大多
  • 在hibernate统计中,load和fetch之间有什么区别

    我主要看EntityStatics http www hibernate org hib docs v3 api org hibernate stat EntityStatistics html http www hibernate org
  • 非阻塞方法中的饥饿

    一段时间以来 我一直在阅读有关非阻塞方法的内容 这是一段所谓的无锁计数器的代码 public class CasCounter private SimulatedCAS value public int getValue return va

随机推荐

  • 用 PHP 截断文件末尾

    我有一个日志文件 我想在 PHP 读取该文件后将其截断 我的代码目前如下所示 fp fopen file r ftruncate fp 125000 fclose fp 但是 这会通过保留first1MB 不过 我想保留last1Mb 的文
  • .NET 正则表达式可匹配任何语言的任何类型的字母

    我可以使用哪种正则表达式来匹配 允许 任何语言的任何类型的字母 我需要匹配任何字母 包括任何变音符号 例如 并排除任何类型的符号 数学符号 货币符号 装饰符号 方框图字符等 和标点符号 我正在使用 ASP NET MVC 2 和 NET 4
  • 融合元组以查找等价类

    假设我们有一个包含 k 个元素的有限域 D d1 dk 我们认为 S 是 D n 的子集 即一组 形式的元组 其中 ai 在 D 中 我们希望使用 S 2 D n 的子集 即一组 形式的元组 其中 Ai 是 D 的子集 来 紧凑地 表示它
  • 仅禁用 resharper 8 (c#) 中的开关片段

    我发现默认的 VS 2013 开关片段比 resharper 的开关片段工作得更好 有什么办法可以禁用它吗 我看到有几种方法可以得到这个 使用 ReSharper IntelliSense 取消选中此处的 开关 ReSharper 模板资源
  • 在设定的时间后从 DOM 中删除元素

    我正在尝试找出在事件触发后从 DOM 中删除元素的 React 方法 我正在尝试发出警报 copySuccess when onClick this props handleCopyFact 被触发 然后在 5 秒后淡出该警报 每个组件的状
  • 为什么 Laravel 中的 .env 文件配置不起作用

    DB CONNECTION mysql DB HOST 127 0 0 1 DB PORT 3306 DB DATABASE DB USERNAME root DB PASSWORD 这是我的 laravel 5 4 配置 但 php ar
  • 如何使用 jQuery 获取 img url?

    是否有可能获得实际的 URL 而不是src使用 jQuery 或 JavaScript 获取当前 DOM 中图像的属性值 即检索 example com foo jpg 而不是 foo jpg 采用因素考虑 还有其他有趣的属性吗 例如 mi
  • Julia Threads.@threads 比单线程性能慢

    我正在尝试求解一维热方程的数值 我正在使用有限差分 并且在 Julia 中使用 threads 指令时遇到一些问题 特别是下面有相同代码的两个版本 第一个是单线程 而另一个使用 threads 除了 thread指令之外 它们是相同的 fu
  • SKScene和SKView的paused属性之间的区别

    我使用以下代码暂停 SKScene self paused YES 然而 根据这个answer https stackoverflow com a 21593852 2043580 by 安德烈 戈尔杰耶夫 https stackoverf
  • 如何将整个 POST 数据转储到 ASP.NET 中的文件中

    我目前正在尝试将一个应用程序从 asp net 移植到 php 但是我遇到了困难 需要有人帮忙 我需要将通过 POST 收到的 aspx 中的所有数据转储到文件中 但我不知道如何执行此操作 有任何想法吗 您可以使用Request 对象的In
  • azure函数或azure逻辑应用程序中是否有Azure文件共享的触发器?

    我在 azure 存储帐户中创建了文件共享 然后使用 Windows 电脑安装了文件共享 接下来 我将文件上传到文件共享驱动器 例如 Z 但每当我将文件上传到 OnPremise 文件共享驱动器时 我想自动触发逻辑应用程序或 azure 功
  • 在反应本机中共享一行的两个按钮

    我有两个看起来像这样的按钮 这是代码 render gt
  • 如何选择列值不不同的每一行

    我需要运行一个 select 语句 返回列值不不同的所有行 例如 EmailAddress 例如 如果表格如下所示 CustomerName EmailAddress Aaron email protected cdn cgi l emai
  • 如何使用 setState 插入 React 的状态数组?

    我正在寻找在反应中修改和数组并在特定索引上插入元素 这就是我的状态 this state arr 我想做的是编译这个arr index random element 反应 js setState 语法 我试图做的是 this setStat
  • NodeJs/WS:如何抛出服务器端在客户端处理的错误?

    当我的 websocket 有超过 2 个连接时 我试图在服务器端抛出错误 我有这个不错的客户端onerror方法 但我无法到达我的代码的那部分 我正在使用 nodeJS 和包ws其中有关于错误处理的最小文档 服务器 js theWebSo
  • Mcrt1.o和Scrt1.o有什么用?

    我坚持使用以下两个文件 即 Mcrt1 o 和 Scrt1 o 谁能帮我知道这两个文件的用途 如何使用它 我们以 gcrt1 o 为例 在使用 pg 选项编译进行性能测试时非常有用 谢谢 表格的文件 crt o总是 C 运行时启动代码 大部
  • 如何提高洪水填充例程的性能?

    我正在我的应用程序中实现四路洪水填充 伪代码如下 Flood fill node target color replacement color 1 If the color of node is not equal to target co
  • 在活动中嵌入一个大小的ListView - android

    我正在看这个教程 http developer android com resources tutorials views hello listview html http developer android com resources t
  • 如何在运行时更改按钮的颜色? [复制]

    这个问题在这里已经有答案了 button1 Button root text A1 width 8 grid row 0 column 0 button2 Button root text A2 width 8 grid row 0 col
  • 在生产代码/服务器上运行测试

    我在单元测试 自动化测试方面相对缺乏经验 所以如果这个问题没有任何意义 请原谅 我当前正在处理的代码库耦合如此紧密 以至于我需要重构大部分代码才能对其运行单元测试 所以我阅读了一些帖子并发现了 Selenium 我认为它确实是一个很酷的程序