dc.SetBkColor(m_HI_BColor);
dc.TextOut(m_X_Blank, j, m_Pos_Flag, 4); //\● \or \
dc.TextOut(m_X_Start, j, m_Blank_String); dc.TextOut(m_X_Start, j, m_Sentence[i]);
}
else if(m_Sentence_Flag[i]=='A') //判断数组是否等于A { dc.SetBkColor(m_HI_TColor); dc.SetTextColor(m_HI_TColor);
dc.TextOut(m_X_Blank, j, m_Pos_Flag, 4); //\● \
dc.SetBkColor(m_BK_Color);
dc.SetTextColor(m_Text_Color);
dc.TextOut(m_X_Start, j, m_Blank_String); dc.TextOut(m_X_Start, j, m_Sentence[i]);
} j += m_Y;
}
dc.SetBkColor(m_HI_TColor); dc.SetTextColor(m_HI_TColor);
dc.TextOut(m_X_Blank, j, m_Pos_Flag, 4); //\● \ dc.TextOut(m_X_Start, j, m_Blank_String);
// Do not call CWnd::OnPaint() for painting messages
3.4 resource.h的实现 //{{NO_DEPENDENCIES}}
// Microsoft Developer Studio generated include file. // Used by DFSearch.rc
#define IDCANCEL2 3 #define IDD_DFSEARCH_DIALOG 102 #define IDR_MAINFRAME 128
\or
#define IDD_GRAPH_DIALOG 129 #define ID_EDIT_POINT 1000 #define IDC_SINGLE_STEP 1001 #define ID_EDIT_EDGE 1001 #define IDC_AUTO_STEP 1002 #define ID_OK 1002 #define IDC_END_SHOW 1003 #define IDC_GRAPH_CREAT #define ID_SHOW_GRAPH #define IDC_CODE_SHOW #define IDC_STACK_SHOW #define IDC_VALUE_SHOW1 #define IDC_VALUE_SHOW2 #define IDC_VALUE_SHOW3 #define IDC_MOVE_SHOW // Next default values for new objects #ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE #define _APS_NEXT_COMMAND_VALUE #define _APS_NEXT_CONTROL_VALUE #define _APS_NEXT_SYMED_VALUE #endif
#endif
1003 1004 1005 1006 1007 1008 1009 1010 130 32771 1000 101
第4章 软件测试
4.1 系统测试
系统测试是在假定系统中有错误的前提下进行的,通过测试来尽可能地发现在系统分、系统设计和系统实施中存在的错误,也就是系统测试的目的是为了发现和解决系统中可能存在的错误。测试包括对系统的基本功能、系统的效率、系统的可靠性和可操作性等问题所进行的测试。系统测试的目的体现在系统调试的各个步骤中。程序测试,是为了发现程序设计中错误。也就是说,越是早期的错误,往往越是到最后才能发现。所以要非常重视早期的系统分析、系统设计工作,决不能草率行事,不然一旦出现错误,将使系统的开发工作大量返工,造成工期的延误和人力资源的浪费。
系统测试的方法主要有两种: (1)黑箱法:
黑箱法是指测试人员不考虑程序模块的内部结构如何,而只用测试程序来验证程序是否符合功能的要求,是否会发生异常现象。
(2)白箱法:
白箱法是指测试人员根据模块内部的结构来导出测试数据,使模块中的所有测试路径都被测试到。
系统的测试很明显在程序测试中要用白箱法,在系统的统调试中要用白箱法。但是在具体实践中是要互相结合运用的,因为无论是“黑箱法”还是“白箱法”都是无法将系统中的所有错误都测试出来。
在系统测试完成后,进行用户的验收测试,它是用户在实际应用环境中所进行的真实数据测试。
在具体的测试中,一般应遵循以下原则:由程序设计者之外的人进行测试;测试用例应由两部分组成:输入数据和预期输出结果;应选用不合理的输入数据与非法输入测试;不仅要检验程序是否实现预期功能,还应检查程序是否做了不应该做的工作;集中测试容易出错的程序模块[11];对程序修改以后,必须重新进行测试。
在开发本系统时,为了使系统能够稳定运行,对本系统进行了有针对性的全面测试,采取的方式是:
菜单项测试:为了保证每一项下拉菜单能够正确实现系统设计的功能,我把相关的基础数据,基本上全部输入到本系统中,并对每一个菜单项反复进行了增
加、删除、修改等操作,从而保证了菜单级功能的正确实现。数据跟踪:完成菜单项测试后,我又对系统内的每一个数据进行了跟踪。
4.2 日常功能演示
通过运行系统,能够很好的演示算法的执行过程,使用者首先进入演示系统。如图4.1 进入演示系统
图4.1进入演示系统