问题标签 [test-environments]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql-server-2000 - 您如何模拟频繁的数据库活动以进行实际测试?
我正在针对同时有少量记录(大约 5000 条)处于活动状态的数据库构建一个 Web 应用程序。每个活动的工作记录可能会在 4 小时内经历 30 位用户的 50-300 次更改……这就是每分钟数千次更改。
因为我们的测试环境是静态的,所以测试是不现实的,有些问题直到我们打到生产数据库才出现。
我的想法是运行 Profiler,收集 DML 语句,然后在调试应用程序时在测试服务器上重放它们……假设我可以在运行原始文件的相同时间间隔内重放它们。但即使这样也不是一个有效的测试,因为测试人员的更改可能会破坏未来重放的 DML 语句。
有人知道如何模拟实时数据库更改以进行实际测试吗?
谢谢。
BTW-我们的问题不是并发问题。
synchronization - 保持测试和生产服务器环境清洁、同步和一致
我工作的公司似乎一直在与客户的服务器环境作斗争。
具体来说,我们几乎总是会遇到测试服务器和生产服务器的问题,而且它们似乎总是配置不同。当我们测试我们开发的应用程序时,测试服务器以一种方式运行,因此我们调整和配置我们的应用程序以适应该特定行为。但是当我们在生产服务器上安装相同的应用程序时,我们会观察到另一种与测试服务器不一致的行为,从而使我们的调整和配置变得毫无用处。最令人沮丧的是,这种情况一直在发生,而且似乎没有人知道该怎么做。
当然,我们对为什么会发生这种情况有一个大致的了解。每个克隆的环境开始时都是一样的,并且在前几天的工作方式相同,但迟早有人只在一个服务器环境中重新配置某些东西(无论是数据库更新、组件库更新、Web 文件更新,或其他配置),从而导致差异。随着时间的推移,越来越多的差异越来越大。但问题是:我们能做些什么呢?
我试过在网上搜索,但找不到任何关于该做什么的好答案。我也试图自己找出一些解决方案,但我的大多数想法似乎在某种程度上存在问题。新的套路,无论多么严格,都可以规避。定期克隆生产服务器以创建测试服务器是一个乏味且通常非常缓慢的过程。自动复制并不总是可靠的,甚至是不可能的。那么我们究竟应该如何解决这个问题呢?我们如何保证测试时的体验与上线时的体验相匹配?
我想其他人也有这个问题。还是他们?也许只是我的特定公司不称职?你们有没有遇到过这个问题?如果是这样,你做了什么?
真挚地,
Linus,瑞典系统开发人员
load-testing - 严重的测试环境
我们有一个非常复杂的 Web 应用程序,以至于很难准确地模拟生产负载。
我们的应对机制之一是确保测试环境中的硬件总是比我们的生产硬件慢,因此负载和性能问题会更加明显。
其他人在这样做吗,您正在使用哪些其他策略?
networking - 有没有办法在我的本地机器上替换 127.0.0.1 以进行测试?
我知道这听起来可能很愚蠢,但无论如何。也许有什么诀窍?
我只想让本地 Web 服务器接收来自我本地机器的请求,但以某种方式看到不同的 IP 地址?即使是与臭名昭著的 127.0.0.1 不同的单曲也会有很大帮助。
有没有可用的选项?
dynamics-crm - 如何复制 Microsoft Dynamics CRM 4.0 解决方案
我在生产中有一个 CRM 4.0 解决方案,我想复制它,以便我可以将它用作测试服务器。
有什么替代方法可以做到这一点?缺点/优点?
performance-testing - 如何跟踪性能测试
我目前正在对复杂的多层系统进行性能和负载测试,以调查不同更改的影响,但我在跟踪所有内容时遇到了问题:
- 有许多不同程序集的副本
- 最初发布的组件
- 正式发布的修补程序
- 我构建的包含更多附加修复的程序集
- 我构建的包含附加诊断日志记录或跟踪的程序集
- 有许多数据库补丁,上面的一些程序集依赖于正在应用的某些数据库补丁。
- 存在许多不同的日志记录级别,位于不同的层(应用程序日志记录、应用程序性能统计信息、SQL 服务器分析)
- 有很多不同的场景,有时只测试一种场景很有用,有时我需要测试不同场景的组合。
- 负载可以分布在多台机器上,也可以只分布在一台机器上
- 数据库中存在的数据可能会发生变化,例如,一些测试可能会使用生成的数据进行,然后使用从实时系统中获取的数据。
- 每次测试后都会收集大量潜在的性能数据,例如:
- 许多不同类型的特定于应用程序的日志记录
- SQL 事件探查器跟踪
- 事件日志
- 车管所
- 性能计数器
- 数据库有几个 Gb 大小,所以我会使用备份恢复到以前的状态,我倾向于在上次测试后对任何存在的数据库应用更改,这导致我很快就失去了对事物的跟踪。
我尽可能多地收集关于我所做的每个测试的信息(测试的场景,应用了哪些补丁,数据库中有哪些数据),但由于结果不一致,我仍然发现自己不得不重复测试。例如,我刚刚做了一个测试,我认为它与几个月前运行的测试完全相同,但是数据库中的数据已更新。我知道新数据应该会导致性能下降,但结果却恰恰相反!
与此同时,我发现自己花费了不成比例的时间来记录所有这些细节。
我考虑过的一件事是使用脚本来自动收集性能数据等......,但我不确定这是一个好主意 - 不仅花时间开发脚本而不是测试,而且我的脚本中的错误可能会导致我更快地追踪事物。
我正在寻求一些关于如何更好地管理测试环境的建议/提示,特别是如何在收集所有内容和实际完成一些测试之间取得平衡,以免遗漏一些重要的东西?
django - 将 http 请求的副本转发到另一个(测试)环境
我希望我的网络应用程序的所有生产数据也能流经我的测试环境。本质上,我想将生产站点的每个 http 请求转发到测试站点(并且还要让生产站点为它服务!)。
有什么好方法可以做到这一点?我的网站是用 Django 构建的,由 mod_wsgi 提供服务。这最好在应用程序级别 (Django)、Web 服务器级别 (Apache) 还是 mod_wsgi 级别实现?
php - 在PC上构建Web应用程序的测试环境-目录问题
我有一个物理上具有此目录结构的站点。
目录 public_html/conf/ 包含一个名为 conf.php 的文件
此文件包含以下内容
我想复制这个应用程序来测试 PC 来测试它。测试 PC 使用 XAMPP Apache。测试机器上的“根”目录是:C:\xampp\htdocs\
我的问题: 1. 逻辑路径在哪里/home/mydir/" defined
? 2. 我应该采取什么步骤才能让它在我的测试机器上工作,最好是通过服务器配置而不是更改应用程序。
谢谢。(PS 也许这个问题最好在 Server Overflow 站点提出。)
php - PHP 的本地测试服务器,类似于 Django 的 runserver
作为一名主要使用 Django 的 Python 开发人员,我已经习惯于为我的项目配备一个内置的测试服务器,这让我不必为我在本地开发机器上工作的每个项目都设置 Apache。PHP 是否有类似的东西,让我说“将此目录作为 localhost:8080 上的 PHP 项目提供服务”?
我不是在寻找像 XAMPP 或 WAMP 这样的一体化解决方案。
production-environment - 测试和生产环境的最佳实践
在我工作的公司,我们有两个环境:测试和生产。由于成本原因,我们目前没有开始新的环境。
这是我们遵循的过程:业务提出功能请求,开发使其发生并将其部署到测试环境中。然后业务测试它(UAT),如果没问题,该功能将包含在下一个生产部署中。
问题是测试数据库的最佳实践。开发人员将测试环境视为他们的游乐场,有时他们将数据库重置为初始状态以进行测试。另一方面,业务人员认为测试数据库必须是稳定的,不应该重置。我们想解决这个问题,并决定测试环境应该属于开发团队还是业务团队。(开发人员不希望企业将自己的鼻子放在测试环境中,但业务团队正在为服务器付费。)
关于环境的最佳实践是什么?你能推荐一篇关于这个的文章吗?