数据管理的困难
数据监控
流程管理
总结
数据管理的困难
作为对《自动化数据准备方法(银行业)》的一个补充,记录一下今天下午与同事在讨论数据管理时的一些内容。没有统一的解决方案,只是作为探讨进行记录。
在测试项目中所遇到的数据管理的困难,我认为是来源于被测系统与测试工具分离比较大,而测试数据又是被测系统中的一部分,测试工具无法对数据进行直接的管理,导致数据在被测系统中所有的状态变化,测试工具是不可知的。下午举了一个例子,如果一个员工管理系统,员工上下班都不在系统中进行登记,甚至都不和系统打招呼,那么员工管理系统也完全管理不了员工的上下班。数据管理系统现在就面临着这样的困难。
那么就分为流程管理与监控两种方式。用员工管理的思路来说,流程管理就是员工上下班都需要进行报告,系统来记录这些信息,对于数据管理来说,就是在选择测试数据时和测试数据消耗后,都需要上报给数据管理系统,系统来进行登记。监控的方式就是员工上下班也都不需要进行登记,但是通过摄像头等方式,记录下来员工的活动,来完成员工管理,对于数据管理来说,就是记录下来测试数据状态的变化。
下面也会根据这两种方式来进行讨论,如何产生符合条件的数据,属于数据准备过程,并不属于数据管理的过程,数据管理只需要根据条件,挑选出对应的数据即可。
数据监控
如果可以监控数据的状态的变化,那么我们就可以达到数据管理的目标了。数据监控主要难点在于如何使用技术手段来完成监控。
首先是记录数据的变化,假设数据存储在关系型数据库库当中,如何监控所有的表,在产生变化的时候能够察觉到变化,并且将变化记录下来。之前只有过小半天讨论过这种方法,没有形成解决办法,但是讨论过思路。首先是触发器等手段来监控,其次是通过一个中转服务,接收来自应用程序的数据库请求,进行记录后再转发到数据库。
其二是被测环境中,一定是多人在对数据进行操作。如何知道哪一些数据是对应哪一个用户的哪一个行为,也是非常困难的,并没有什么标志信息,可以说明数据库操作的来源。
这些做法的技术难度都比较大,据说有商用的软件,可以对数据进行非常详尽的管理。这种解决办法困难度较大,很难进行解决。但是数据监控的方式如果成功,无论是通过什么渠道来对程序进行过操作,都可以非常精确的来跟踪数据的变化,也可以精确的对数据进行状态还原。
流程管理
这种方法也是短期可以实现,相对有效的方法,就是在使用数据的时候进行登记,使用结束后对数据进行作废。这样的数据管理办法,主要集中在测试执行的管理当中,需要使测试人员在使用测试数据的时候,都能通过测试执行来进行登记和记录,否则数据的有效性会越来越差。
既然需要控制测试执行过程,那么流程管理主要的思路是来提高程序的易用性,只有使易用性达到一个较高的程序,测试执行人员才能够比较愿意通过系统来获取测试数据来进行执行。增加易用性的手段,比如在选择案例的时候,可以很好的将案例所使用的测试数据进行展示,使测试人员可以比较轻松的选择到自己的测试数据。
这样的方法的弊端就是只能够记录到在系统中使用数据的情况,不能够记录下来未通过系统而进行的操作,需要通过管理方式,来规范数据的使用,比如发布通告等方式。
总结
现阶段可行性比较强的方式也是通过流程管理来完成数据管理的内容。如果工具平台可以打通整个测试周期,那么这种管理方式的有效性就越强,因为更多的操作通过平台来做,行为就基本可以通过平台记录的信息来还原,这样就可以大大减少由于非平台类操作导致数据有效性低的问题。
领取专属 10元无门槛券
私享最新 技术干货