返回到其最上级的主程序模块,或者回到系统的交互状态,甚至退出VisualFoxPro返回到宿主操作系统。
(3)运行环境设置命令。
为使程序正常运行,设置一定的系统运行环境状态是十分必要的。其中除前面的几条命令外大多是一些SET命令,这此SET命令的共同特点是相当于一个状态转换开关,当置为ON时其功能有效,而置为OFF时则该功能无效。
第七章程序的测试、连编与发行
7.1系统的测试与调试
在应用程序设计和创建的过程中,需要不断地对所设计的菜单、表单、报表等科学试验模块进行测试与调试。通过测试发现问题和纠正错误,并逐步加以完善。
软件在运行过程中可能会产生各种各样的问题,也可能带来不同程度的严重后果。软件测试是保证软件质量的最重要的手段。软件测试的概念IEEE定义为:使用人工可自动手段来运行或测定某个系统过程,其目的在于检验它是否满足规定需求或是弄清预期结果与实际结果之间的差别。
VisualFoxPro提供了专门的程序调试器,可用它来设置程序断点、跟踪程序的运行,检察所有变量的值、对象的属性值及环境设置值等。启动程序调试器的方法是执行"工具"菜单下的"调试器"命令,或在命令窗口执行DEBUG命令。
在各程序模块测试达到预定的功能和效果后,就可进行整个程序系统的综合测试与调试。综合测试通过后,便可投入试运行,即把各程序模块连同数据库一起装入指定的应用程序磁盘目录,然后启动主程序开始运行,考察系统的各个功能模块是否能正常运行,是否达到了预定的功能和性能要求,是否能满足用户的需求。试运行阶段一般只需装入少量的试验数据,待确认无误后再输入大批的实际数据。
尽管面向对象技术的基本思想保证了软件应该有更高的质量,但无论采用什么样的编程技术,编程人员的错误都不是可避免的,而且由于面向对象技术开发的软件代码重用率高,更需要严格测试,避免错误的繁衍。因此,软件测试在面向对象编程里更具有它的重要性。典型的面向对向程序具有继承、封装和多态的新特性,这使得传统的测试策略必须有所改变。封装对数据的隐藏,外界只能通过被提供的操作来访问或修改数据,这样降低了数据被任意修改和读写的可能性,降低了传统程序中对数据非法操作的测试。继承是面向对象程序的重要特点,继承使得代码的重用率提高,同时也使错误传播的概率提高。多态性使得面向对象程序对外呈现出强大的处理能力,但同时却使程序内"同一"函数的行为复杂化,测试时不得不考虑不同类型具体执行的代码和产生的行为。
功能测试:测试是否满足开发要求,是否能够提供设计所描述的功能,是否用户的需求都得到满足。功能测试是系统测试最常用和必须的测试,通常还会以正式的软件说明书为测试标准。
强度测试及性能测试:测试系统的能力最高实际限度,即软件在一些超负荷的情况下,功能实现情况,如要求软件某一行为的大量重复、输入大量的数据、对数据库大量复杂性的查询等。测试软件的运行性能,这种测试常常与强度测试结合进行,需要事先对被测试软件提出性能指标,如传输连接的最长时限、传输的错误率、计算的精度、记录的精度、响应的时限和恢复时限等。
安全测试:验证安装在系统内的保护机构确实能够对系统进行保护,使之不受各种非常的干扰。
打印测试:在人工测试中用的是个人复查,当源程序编完以后,由编写人进行检查,但这种测试方法存在不足之处在于有些习惯性的错误不易发现,如果对功能理解有误,不易纠正,所以在个人复查的基础上又用了机器测试中的白盒测试和黑盒测试。白盒测试:也称结构测试,将软件看作一个透明的白盒子,按照程序的内部结构和处理逻辑来选定测试实例,对软件的逻辑路径及过程进行测试,检查它与设计是否相符。在进行白盒测试时,测试人应在完全了解系统功能、内部结构的前提下对系统进行测试,检查实现的功能与想要实现的设计有什么冲突不符,并及时改正。黑盒测试:也称功能测试,将软件看黑盒子,在完全不考虑的内部结构和特性的情况下,测试软件的外部特性,根据软件的需求规格说明书设计测试实例,从程度的输入和输出特性上测试是否满足设定的功能。在进行黑盒测试时,测试人随意无数次的输入符合条件的数据,检查结果是否与预期相符,如果相符则说明程序对输入的条件反映正确,如果不相符则程序有错,需要修改。
7.2系统的连编
一个应用程序设计完毕后,还必须进行连编,以便最后生成一个可执行文件供最终用户使用。连编不仅能将各个分别创建的程序模块有机地组合一起,从而保证整个系统的完整性和准确性,同时还可以增加程序的保密性。
通常可利用VisualFoxPro提供的项目管理器或应用程序生成器来进行连编,为此可先创建一个项目,并将应用程序所包含的各个组件添加到项目管理器中。一个应用程序系统通常对应着一个应用项目,利用VisualFoxPro开发的数据库应用项目实际上是数据、程序、文档、对象等各种相关文件的集合。VisualFoxPro提供了专门的"项目管理器"来对项目进行管理和维护。"项目管理器"以简便的、直观的方式组织和处理项目中所包含的各类文件。它一方面对项目中的数据和文档进行集中的管理,另一方面借助集成环境使得项目的创建和维护更为方便。
7.3系统的发行
在完成应用程序的开发和连编之后,可利用"安装向导"为应用程序创建安装程序和发行磁盘。其主要步骤如下。
(1)建立发布树
首先需要创建并维护一个独立的只包含要安装文件的目录树,称之为"发布树"。其中包含要复制到用户硬盘上去的所有发布文件。
(2)运行"安装向导"
执行"工具"菜单下"向导"子菜单中的"安装"命令,可启动"安装向导"。"安装向导"共有如下7个操作步骤。
①指定"发布树"的位置。
②指定应用程序的各个组件。
③为应用程序指定安装盘类型。
④指定安装过程中的对话框标题以及版权申明等内容。
⑤指定应用程度的默认文件安装目的地。
⑥显示出将安装的文件名、目的地及其他一些选项,允许对其做修改和调整。
⑦最后单击"安装向导"对话框的"完成"按钮后,系统即将"发布树"中的所有文件进行压缩并把它们分解为与安装盘大小相匹配的文件块,同时生成一个setup.exe文件。
第八章程序清单
*ToattachthismenutoyourTop-Levelform,
*callitfromtheIniteventoftheform:
*Syntax:DO
WITH[,|][]
* oFormRef-formobjectreference(THIS)
* cMenuname-nameformenu(thisisrequiredforAppendmenus-seebelow)
* lRename-renamesNamepropertyofyourform
* lUniquePopups-determineswhethertogenerateuniqueidsforpopupnames
* example:
* PROCEDUREInit
* DOmymenu.mprWITHTHIS,.T.
* ENDPROC
*Usetheoptional2ndparameterifyouplanonrunningmultipleinstances
*ofyourTop-Levelform.Thepreferredmethodistocreateanemptystring
*variableandpassitbyreferencesoyoucanreceivetheformnameafter
*theMPRfileisrun.Youcanlaterusethisreferencetodestroythemenu.
* PROCEDUREInit
* LOCALcGetMenuName
* cGetMenuName=""
* DOmymenu.mprWITHTHIS,m.cGetMenuName
* ENDPROC
*ThelogicallRenameparameterwillchangethenamepropertyofyour
*formtothesamenamegiventhemenuandmaycauseconflictsinyour
*codeifyoudirectlyreferencetheformbyname.
*Youwillalsoneedtor
上一篇:宾馆客房管理系统(论文设计)(论文和程序)
下一篇:试析影响公路路面平整度的因素及应采取的施工措施