我们公司对DB特权设置了严格的规则,而QA测试人员几乎只具有查看/读取所有表的特权。
有时候,测试人员需要在数据库中进行更改,对于快速/灵活的测试活动,最好设置更好的特权(平均写),然后查看特定表(如果不是完整的数据库)可能是一件好事。
还有独立的部门负责数据库更改。对于灵活的测试,要求进行这种更改非常不舒服(不灵活)。
所以我的问题是:
如果有任何规则如何设置由质量检查文档设置的数据库特权,还是严格取决于公司政策? (ISTQB,ISO?)
关于如何争论为测试环境所有者授予QA部门更好的DB特权,是否有什么有力的论据?
主要参数应该是什么?
#1 楼
这取决于您的流程设置。对生产环境具有只读访问权限以进行调查是有意义的。QA是否拥有自己的用于集成测试的系统副本(与开发系统分开)?在此质量检查系统中,质量检查应能够进行任何更改。但是即使在这里,将建议的更改由DBA和/或开发人员进行审核也是很明智的,因为(取决于系统的设计)可能很容易进行手动更改,而使用系统时则无法进行手动更改”正确”使用服务,数据库将以难以预测的方式被破坏。 sysadmin)以提高生产力,并为我们的客户提供最大的价值以节省时间?如果某些流程要求使您(QA)的工作效率降低而又无法防止错误和交付价值,则应重新考虑,修改或放弃这些要求。
但这并不意味着QA应该能够在QA系统中做任何他们想做的事情:例如,如果他们节省了一些时间却为DBA做了更多的工作,那么DBA有一个有效的观点,那就是这种做法降低整个团队的生产力。
不能替代常识和善意行事。
#2 楼
任何人都应该拥有一切适当的方法来正确完成您的工作。这意味着质量检查人员应该拥有调查已知和待发现问题的工具和访问权限。
基本上需要:
以某种方式对产品的完全访问权限(例如,可以正确反映生产环境的测试环境-硬件和软件);
进行工作的适当时间;
进行工作所需的支持。
关于数据库访问,两个方面很重要:
完全可以控制并易于恢复对镜像测试环境的访问;
有权访问生产环境的人员的帮助,以创建工作所需的测试数据(模糊/模糊的数据库转储)。
我会提出这些问题并逐一攻击它们,从而创建有效地解决生产/严格访问环境中的问题的方法。 (自动化和持续集成?)
#3 楼
这确实是公司特定的问题。也许您的测试环境真的很复杂并且被很多人使用。在这种情况下,最好不要给所有人(只有经验丰富的人)写权限。同时添加其他测试环境并使它们分开。在其他情况下,我认为。这是一个TEST环境,让测试人员可以做他们想做的任何事情,甚至也不应该有任何争论。如果公司认为测试人员无能为力,无法在测试环境中信任他们,那么这不是您要工作的公司。
#4 楼
是的,您应该拥有完全控制的自己的(QA)环境。您还应该具有一种机制,可以在重置环境状态时将其弄乱。测试需要对测试数据进行大量更改,等待其他人为您进行更改只会降低速度,并导致您无法运行某些测试。#5 楼
满足您用户的需求在此特定方面和过程的一部分中,您的用户是...安全人员。
因此,考虑为他们的用户提供解决方案需求。例如,考虑为特殊角色或组或帐户(而非共享帐户)提供充分的理由,以便为特定用户中的特定用户组提供粒度级别的访问权限环境。 “说明”您要确保既可以跟踪(用于审核)又可以出于安全原因立即中断访问。他们已经知道这一点,但是您渴望表现出对这些方面的尊重会很好。只是不要屈从于或过分解释,而要投入一些“大家显然都知道的”来减轻事情的影响。
使用这些论点进行论证可能比强力强调产生更大的影响。您更迫切的需求通常会成为安全人员不可忽视的噪音。
评论
如果您由于不完全了解系统而中断了DB,那么也许这是值得学习的一课?如果我对数据的工作方式有基本的误解,那么我如何才能确信我的测试是全面的?
–David Cain
16年8月23日在19:06
我同意。但是,一个傻瓜也会在一小时内造成混乱,专家需要一个星期才能清理干净。而且这些错误绝不是您的客户可能会遇到的错误,因此这种“学习”可能会浪费时间。正如我所说,使用常识。
–Peter M.-代表莫妮卡(Monica)
16年8月23日在19:31