测试技术和保护技术在计算机软件的应用探讨
2017-06-30邓平邓豪
邓平 邓豪
摘 要:对计算机软件进行测试是要找出软件中存在的不足,以及其中出错的地方,并对其进行改正。而对计算机软件进行保护,则是要避免软件的版权被盗取,软件遭到破坏。本文分别就测试技术和保护技术在计算机软件中的应用进行探讨,希望能促进计算机软件的发展。
关键词:测试技术 保护技术 计算机软件
中图分类号:TP311 文献标识码:A 文章编号:1003-9082(2017)06-0005-01
随着计算机技术的不断发展,计算机软件所具备的功能也在不断的增加。因此,为确保计算机软件的稳定性和可靠性,就需要加强对软件的测试和保护。测试技术和保护技术确保软件质量的重要技术,有利于促进计算机软件行业的发展。
一、测试技术
1.静动态测试
在计算机软件测试中,测试的类型主要有两种,一种是静态测试,一种是动态测试。静态测试是指在计算机软件程序不运行的情况下,对软件进行测试,测试的对象为计算机中的各类文档,包括需求文档和设计文档,以及一些程序的源代码。通过读取这些文档中的信息,并对其加以分析和检查,找出其中存在的错误。动态测试是指在计算机软件程序运行的情况下,对测试用例进行选择,并执行所选择的测试用例,将预期输出和实际输出进行对比,以确定出其中存在的问题或者错误。
2.白盒测试
白盒测试是要确保计算机软件内部的功能能够符合设计要求,在计算机软件设计内部中存在许多接口,每个部分的接口都是测试的对象,且每个部分的运行方向也是测试的重点,要确保其与设计方向能保持一致性。因此,通过白盒测试,在发现计算机软件出现问题时,能准确的判断出问题的所在,从而提升软件运行的稳定性和可靠性,使其在运行中不会出现问题。此外,利用白盒测试,还能使计算机软件的开发效率得到较大幅度的提升。
3.黑盒测试
黑盒测试主要是对计算机软件的功能进行测试,将被测软件视为一个不能打开的黑盒。但是,在黑盒的外部存在输入端和输出端,黑盒测试就是利用输入、输出端来进行的。因此,这种测试方法本身就比较局限,不能检测到软件内部的結构,也无法追溯到软件出现问题的原因,所以面对计算机软件出现的问题,就不能采取有效的措施解决问题。黑盒测试能够检测的范围也有一定的限制,当计算机软件存在错误、功能有缺失、初始化或终端有问题时,才能将这些问题检测出来。黑盒测试会测试全部可能的输入方式,这样才能尽可能的找出计算机软件中存在的所有问题,并针对这些问题对软件进行优化。但在实际的测试中,要对软件进行全面的测试,基本是不可能的。所以,需要对不同的测试方法进行整合,每种测试方法所能测试的软件功能是不同的,将这些测试方法综合起来,经过反复的测试,才能保证优化后的软件具备全面的功能。而在利用黑盒测试时,不仅要找出软件可能会出现的问题,还要对这些问题进行量化,以确保其在后续的使用中能够少出问题。利用不同的测试方法对软件进行综合测试,能够实现这以目标。
二、保护技术
1.基于软件的保护方式
基于软件的保护方式主要有以下几种:第一,序列号。目前,大部分共享的软件都是通过设置序列号来进行保护的,如office软件。当用户需要使用这类软件时,必须将自己的信息提供给软件,再由软件将用户信息传输至软件开发商。而软件开发商在核对用户信息并确定其是真实有效的,就会将序列号提供给用户用户只需要输入序列号就能正常使用软件。这种保护方式虽然比较简单,但却能创造较高的经济效益,这也是大家都比较能接受的方式。第二,时间限制。时间限制的方式有三种,一种是对使用天数进行限制,一种是对使用次数进行限制,还有一种就是对软件每次的运行时间进行限制,当软件的使用时间达到限制时间时,就无法再继续使用软件,从而达到对软件进行保护的目的。第三,功能限制。这种保护方式会先放出一个DEMO版,但软件中的功能只有部分能正常使用。这种保护方式的风险比较大,软件中的代码容易被人破译,从而威胁到软件的安全性,因此这种方法并不常用。
2.基于硬件的保护方式
在计算机软件保护技术中,基于硬件的保护方式主要有两种:第一,光盘和软盘保护。这种保护方式主要是将被保护的软件部分信息存储起来,存储工具就是光盘或者软盘,而在存储过程中要对这些信息进行加密处理,最常用的是密钥。如果光盘或软件被损坏,储存在其中的信息就会被破坏,从而使整个软件都无法再正常的运行,以实现对软件的保护。比如,单机光盘游戏,就是将游戏程序刻入光盘中的,一旦光盘被损坏,游戏程序就无法正常运行。利用这种方式对计算机软件进行保护,能确保光盘中内容的安全性,避免有不法分子剽窃其中的内容。但是,这种保护方式也有一定的局限,只能保证不会将被保护软件泄漏出去,光盘的损坏与软件的破坏是同步的,并不能真正的保护软件,且要破解这种保护方式并没有多大的技术难度。第二,加密狗。这种保护方式能对实体产品进行加密,并可通过不同的方式与电脑相连接,包括串口、USB接口等,通过连接能对软件进行加密,从而达到保护软件的目的。
结束语
综上所述,随着计算机软件数量和功能的不断增加,软件是否能正常运行,其质量是否能得到保障就面临着巨大的考验。利用静动态测试、白盒测试、黑盒测试等技术,能检测出软件中的问题和错误,并对其加以修正。而基于软件、硬件的保护技术,则能够以不同的方式对软件进行保护,从而确保软件的安全性。
参考文献
[1]蒋峰. 分层技术在计算机软件开发中的应用探讨[J]. 电脑编程技巧与维护,2015,18:21-22.
[2]孙靖. 我国软件测试技术的应用与发展趋势[J]. 工业设计,2015,10:144+146.
[3]马泽锋. 软件测试技术在金融软件中的应用分析[J]. 电子制作,2016,04:53.