正确答案是:D: When there are emergency changes. 当有紧急变化时。
**专业分析**:
在软件开发和运维的过程中,QA(质量保证)环境用于在生产变更实际应用之前进行测试,以确保系统的稳定性和功能的正确性。然而,在某些情况下,变更可能不经过QA环境的全面测试:
1. **紧急变化(When there are emergency changes)**:
- 紧急变化通常是为了快速修复生产环境中严重的问题,例如安全漏洞或关键功能故障。由于时间紧迫,这些变化可能跳过QA环境的全面测试,以便迅速部署修复措施。如果经过冗长的测试流程可能导致更大的业务损失或安全风险,故在此情况下更可能直接在生产环境中进行实施。
2. **调整数据库(When tuning the database)**:
- 数据库的调整一般来说是为了优化性能,尽管有时也可能绕过QA环境直接在生产环境实施,但依然会在有限范围内进行测试以确保不会对系统造成负面影响。
3. **测试出现问题(When problems occur with testing)**:
- 当测试过程中出现问题时,特定变更可能会被推迟而不是跳过QA测试。测试问题通常需要解决,而不是直接跳过测试流程。
4. **更新数据库软件(When updating the database software)**:
- 更新数据库软件通常是一个重大的变更,涉及到数据结构、兼容性等多方面的考量。通常需要经过详细的QA测试以确保系统在新版本下依然正常运作。
因此,D选项是唯一一种可能在极端情况下会跳过完整QA测试的场景。