发明内容
本发明实施例的目的在于提供一种应用程序测试方法,旨在解决现有的应用程序测试阶段均在真实的运营环境中进行,导致开发效率低下的问题。
本发明实施例是这样实现的,一种应用程序测试方法,所述方法包括:
构建沙箱环境,所述沙箱环境用于模拟所述应用程序运行的真实环境;
加载所述应用程序的测试版本至所述沙箱环境中运行,以使用户在所述沙箱环境中完成对所述测试版本的功能测试和调试;
当用户完成对所述测试版本的功能测试和调试后,通过预设的数据接口将调试完成的应用程序接入真实环境以运行。
本发明实施例的另一目的在于提供一种应用程序测试装置,包括:
构建单元,用于构建沙箱环境,所述沙箱环境用于模拟所述应用程序运行的真实环境;
加载单元,用于加载所述应用程序的测试版本至所述沙箱环境中运行,以使用户在所述沙箱环境中完成对所述测试版本的功能测试和调试;
接入单元,用于当用户完成对所述测试版本的功能测试和调试后,通过预设的数据接口将调试完成的应用程序接入真实环境以运行。
在本发明实施例中,通过构建模拟真实运营环境的沙箱环境,将应用程序开发的测试阶段放入沙箱环境中进行,并通过提供相应的数据接口,在测试完成后直接将所有数据接入正式运营环境中运行,有效地提高了应用程序开发效率,降低了开发人员的开发难度。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
在本发明实施例中,通过构建模拟真实运营环境的沙箱环境,将应用程序开发的测试阶段放入沙箱环境中进行,并通过提供相应的数据接口,在测试完成后直接将所有数据接入正式运营环境中运行,有效地提高了应用程序开发效率,降低了开发人员的开发难度。
图1示出了本发明第一实施例提供的应用程序测试方法的实现流程,详述如下:
在步骤S101中,构建沙箱环境,所述沙箱环境用于模拟所述应用程序运行的真实环境。
在本实施例中,可以通过分析测试开发过程所需的业务关键流程,将线上的完整流程裁剪之后部署在一个独立的环境中来完成沙箱环境的构建,以保证应用程序开发过程中测试环境的交互模式与真实环境一致。具体的沙箱环境构建方法并非本发明的重点,在此不赘述。
具体地,构建的沙箱环境必须支持应用程序运行过程中所涉及到的所有功能。以具备支付功能的应用程序,例如手机话费充值程序为例,构建的沙箱环境必须支持用户账户登录、无限金额次数的充值行为、支付结果查询、应用程序用户界面(User Interface,UI)和平台UI结合效果展示等应用程序基础功能。
在步骤S102中,加载所述应用程序的测试版本至所述沙箱环境中运行,以使用户在所述沙箱环境中完成对所述应用程序的功能测试和调试。
在本实施例中,应用程序由开发人员根据相关的标准及技术文本进行开发后,生成应用程序的测试版本,通过在沙箱环境中加载应用程序的测试版本,使得该测试版本在沙箱环境中运行起来。
由于沙箱环境模拟真实的运营环境构建,因此,用户能够在沙箱环境中完成对应用程序各功能的测试,包括账户登录测试、支付测试、查询功能等等,并在沙箱环境中及时对测试过程中出现的问题进行调试,直至应用程序的测试版本调试成功。
在步骤S103中,当用户完成对所述测试版本的功能测试和调试后,通过预设的数据接口将调试完成的应用程序接入所述真实环境以运行。
在本实施例中,将应用程序由沙箱环境接入真实环境的主要流程如下:
1、开发者完成开发后,通过相应的管理页面进行应用程序上线申请;
2、***自动封版本,将版本快照传输至真实环境;
3、应用进入正式环境的白名单测试;
4、测试完毕向全部用户发布。
用户通过在沙箱环境中对开发出的应用程序进行测试和调试,利用沙箱环境所提供的基础功能支持来测试开发出的应用程序的各项功能,从而完成对应用程序的调试。对于完成了调试的应用程序,通过预设的数据接口将该应用程序直接接入真实的运营环境以运行。
作为本发明的一个实施例,在将调试完成的应用程序接入真实的运营环境之后,可以将应用程序在沙箱环境中的各项设置同步到真实环境中,开发人员即可将各种开发成果转入真实环境运行,无需繁琐的转换操作。
同时,在真实的运营环境中,可以开放预设数量的白名单用户以对该应用程序进行白名单测试,进一步提高测试的反馈效果。由于应用程序在沙箱环境中已得到了充分的测试,此时再开放白名单测试,可以确保一些低级的程序错误不在白名单测试阶段出现,使得白名单测试的反馈效果更具有实质性和针对性。
在本实施例中,构建模拟真实运营环境的沙箱环境,将应用程序开发的测试阶段放入沙箱环境中进行,在支付功能等环节的测试上简化了测试的步骤,且能够一边测试一边调试,大大提高了应用程序的开发效率。
图2示出了本发明第二实施例提供的应用程序测试方法的实现流程,本实施例是对图1所示步骤的细化,详述如下:
在执行步骤S103之前,在步骤S203中,检测并记录用户对所述测试版本的功能测试和调试,生成监控日志,以使运营人员根据所述监控日志判断应用程序是否符合预设的接入条件。
在本实施例中,开发人员在测试过程中的每次功能操作和调试都会被沙箱环境所检测和记录,并生成相应的监控日志。所述监控日志由沙箱***自动分析之后产生的相应报表,用于方便运营人员跟进应用程序的测试进程,监控应用程序的开发是否符合规范,同时,也方便了运营人员根据该监控日志对开发人员进行相应的开发指导。
相应地,图1的步骤S103被细化为步骤S204:当用户完成对所述测试版本的功能操作和调试操作,且根据所述监控日志判断所述应用程序符合预设的接入条件时,通过预设的数据接口将调试完成的应用程序接入所述真实环境以运行。
通过该监控日志,运营人员会根据预设的接入条件判断该应用程序是否允许被接入真实的运营环境。其中,预设的接入条件包括但不限于界面风格符合设计规范、没有弹出窗口、已在沙箱环境完成共享登录测试、已在沙箱环境完成支付测试、已在沙箱环境完成支付回调测试、已在沙箱环境完成通知查询测试等等。只有应用程序符合预设的接入条件,才能被允许接入真实的运营环境中,若不符合预设的接入条件,则由运营人员通知开发人员进行应用程序的修改,直到应用程序符合预设的接入条件。
作为本发明的一个实施例,也可以定时扫描生成的用户的监控日志,并根据预设的规则对监控结果进行统计及存储,例如,对每个生成的监控日志是否符合预设的接入条件进行分类统计并存储。在用户申请接入真实运营环境时,则根据存储的统计结果,做出通过申请或者阻止申请的动作,且当申请被阻止时,运营人员可以根据监控日志的统计结果向用户返回不符合预设的接入条件的相关信息,以保证开发人员进行及时纠正,在开发的每个阶段都能符合平台的相关规范。
作为本发明的一个实施例,还会在应用程序的测试版本加载进沙箱环境之前,为每个测试版本分配相应的测试账号,每个测试账号在初始时均具备进行测试的资金等测试条件,以方便开发人员开发调试。
图3示出了本发明第三实施例提供的应用程序测试装置的结构框图,该装置用于实现本发明图1和图2所示的应用程序测试方法。为了便于说明,仅示出了与本实施例相关的部分。
参照图3,该装置包括:
构建单元31,构建沙箱环境,所述沙箱环境用于模拟所述应用程序运行的真实环境。
加载单元32,加载所述应用程序的测试版本至所述沙箱环境中运行,以使用户在所述沙箱环境中完成对所述测试版本的功能测试和调试。
接入单元33,当用户完成对所述测试版本的功能测试和调试后,通过预设的数据接口将调试完成的应用程序接入真实环境以运行。
还包括:
白名单获取单元34,获取预设数量的白名单用户,以使所述白名单用户对接入真实环境的调试完成的应用程序进行白名单测试。
还包括:
监控日志生成单元35,检测并记录用户对所述测试版本的功能测试和调试,生成监控日志,以使运营人员根据所述监控日志判断调试完成的应用程序是否符合预设的接入条件。
相应地,此时,接入单元33用于当调试完成的应用程序符合预设的接入条件时,执行所述当用户完成对所述测试版本的功能测试和调试后,通过预设的数据接口将调试完成的应用程序接入真实环境以运行的步骤。
在本发明实施例中,通过构建模拟真实运营环境的沙箱环境,将应用程序开发的测试阶段放入沙箱环境中进行,并通过提供相应的数据接口,在测试完成后直接将所有数据接入正式运营环境中运行,有效地提高了应用程序开发效率,降低了开发人员的开发难度。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。