界面测试之关键点.doc
【精品文档】如有侵权,请联系网站删除,仅供学习与交流界面测试之关键点.精品文档.软件测试中有关界面测试经验总结1、验证界面显示内容的完整性:a) 所有有数据展现的界面(如统计、查询、编辑录入、搜索等),必须使测试数据的记录数超过一屏/一页,以验证满屏/页时其窗体是否有横向、纵向滚动条或换页显示,界面显示是否正常。b)报表显示时应考虑数据显示宽度的自适应或自动换行。2、验证界面显示内容的一致性:a) 如有多个系统展现同一数据源时,应保证其一致性。b)弹出的提示信息格式、展现方式应该保持一致。c)按钮点击之前、点击中、点击后的状态区分保持一致。3、验证界面显示内容的准确性:a) 统计数据、登录用户名、字段元素显示是否正确。b)提示信息、界面元素信息、输入信息中英文、特殊符号的情况等都应该进行验证其是否正确。4、验证界面显示内容的友好性:a) 对统计的数据应按用户习惯进行分类、排序。b) 某些重要信息在输入、修改、删除时应有“确认”提示信息;二次确认。c) 界面内容更新后系统应提供刷新功能。是否提供实时更新。d) 用户在退出系统后重新登陆时应考虑是否需要自动返回到上次退出系统时的界面。e)各界面之间是否便于交互,关闭提示信息后该回退到哪个界面。5、应验证界面提示信息的指导性:a) 在多个业务功能组成的一个业务流程中,如果各个功能之间的执行顺序有一定的制约条件,应通过界面提示用户。b) 用户提示信息应具有一定的指导性,在应用程序正在进行关键业务的处理时,应考虑在前台界面提示用户应用程序正在进行的处理,以及相应的处理过程,在处理结束后再提示用户处理完毕。c) 在某些数据输入界面,如果要求输入的数据符合某项规则,应在输入界面提供相应的规则描述,当输入数据不符合规则时应提示用户是否继续。d) 在对任何配置信息修改后,都应该在用户退出该界面时提示用户保存(如果用户没有主动保存的情况下)。e)在需要网络连接才能进行操作的时候,网络连接失败、网络中断应该给予用户指导。6、验证界面显示内容的合理性:a) 在对某些查询功能进行测试时,应考虑查询条件的设置的合理性以及查询结果的互补性。如某些后台处理时间不应该作为查询条件。b) 界面测试时,应考虑某一界面上按钮先后使用的顺序问题,以免用户对此产生迷惑。例如只能在查询成功后显示执行按钮。c) 界面测试时,应验证窗口与窗口之间、字段与字段之间的浏览顺序是否正确。7、界面测试时,应考虑用户使用的方便性:a) 在某些对数据进行处理的操作界面,应考虑用户可能对数据进行处理的频繁程度和工作量,考虑是否可以进行批量操作。如删除。8、界面测试时,应考虑界面显示及处理的正确性:a) 界面测试时应验证所有窗体中的对象状态是否正常,是否符合相关的业务规则需要。b) 应验证各种对象访问方法(menu、home、back等)是否可正常使用。c) 界面测试不光要考虑合理的键盘输入,还应考虑是否可以拷贝粘贴输入。e) 对界面上的任何对象进行拖拉,然后进行查询、搜索等,应保证结果不变;9、界面测试时,应考虑数据显示的规范性:a) 确保数据精度显示的统一。b) 确保时间及日期显示格式的统一。c) 确保相同含义属性/字段名的统一。 d) 对所有可能产生的提示信息界面内容和位置进行验证,确保所有的提示信息界面应居中。一、文本框、按钮等控件测试如何对文本框进行测试a,输入正常的字母或数字;b,输入已存在的文件的名称;c,输入超长字符。例如在“名称”框中输入超过允许边界个数的字符,假设最多255个字符,尝试输入 256个字符,检查程序能否正确处理;d,输入默认值,空白,空格;e,若只允许输入字母,尝试输入数字;反之;尝试输入字母;只能输入数字的,输入首字母为0;f,利用复制,粘贴等操作强制输入程序不允许的输入数据;g,输入特殊字符集,例如,NUL及n等;输入程序敏感字符,如sql,#;h,输入超过文本框长度的字符或文本,检查所输入的内容是否正常显示;文本框是否会变形i,输入不符合格式的数据,检查程序是否正常校验,如,程序要求输入年月日格式为yy/mm/dd,实际输入yyyy/mm/dd,程序应该给出错误提示;录入界面1、输入字段要完整,且要与列表字段相符合(参照数据库进行检查)2、必填项一律在后面用*表示(必填项为空在处理之前要有相关的提示信息)3、字段需要做校验,如果校验不对需要在处理之前要有相关的提示信息(1) 长度校验(2) 数字、字母、日期等等的校验(3) 范围的校验4、录入字段的排序按照流程或使用习惯,字段特别多的时候需要进行分组显示5、下拉框不选值的时候应该提供默认值6、相同字段的录入方式应该统一(手动输入 、点选 、下拉选择、参照)7、录入后自动计算的字段要随着别的字段修改更新(如单价变后,金额也变)8、日期参照应该既能输入,又能从文本框选择界面格式1、字体颜色、大小、对齐方式(根据字段的性质确定)、加粗的一致性2、文本框、按钮、滚动条、列表等控件的大小、对齐、位置的一致性3、所有新增、修改、查看页面加上页面说明(如:XXX新增、XXX编辑、XXX查看等说明字样),(弹出的)界面要有标题,标题与内容要一致4、不同界面显示相同字段的一致性(如列表界面和编辑界面)5、界面按钮显示要求(查询、新增、删除顺序)6、列表的顺序排列应该统一(按照某些特定条件排序)7、下拉框中的排列顺序需要符合使用习惯或者是按照特定的规则排定8、所有弹出窗口居中显示或者最大化显示9、信息列表中如果某个字段显示过长用“”或者分行显示10、人员、时间的缺省值一般取当前登录人员和时间11、对于带有单位的字段,需要字段的标签后面添加如下内容:“(单位)”功能问题1、按钮功能的实现(如返回按钮能否返回)2、信息保存提交后系统给出“保存/提交成功”提示信息,并自动更新显示3、所有有提交按钮的页面都要有保存按钮(每个界面风格一致)4、凡是点选或者下拉选择的界面,如果一旦选择完了无法回到不选择的情况,需要加上“清除选择”功能按钮5、没有选择记录点击删除/修改按钮要提示“请先选择记录”6、选择记录后点击删除按钮要提示“确实要删除吗?”7、需要考虑删除的关联性,即删除某一个内容需要同时删除其关联的某些内容8、界面只读的时候(查询、统计、导入)等,应该不能编辑查询问题1、查询条件缺少一些可以查询的字段2、有些查询条件需要支持模糊查询3、需要考虑有些查询条件本身的关联性(即某个查询条件的取值范围是依赖于其它查询条件的取值)4、查询条件名称与信息列表及信息编辑页面相应的字段名称完全统一5、不同模块相同字段的查询方式应该统一(手动输入 、点选 、下拉选择)6、出报表的时候,查询条件需要显示在报表标题的下面,这样看报表的时候知道数据的依据是什么7、对于范围的查询采用全闭的形式在测试过程中所用到的测试方法:1,输入非法数据;2,输入默认值;3,输入特殊字符集;4,输入使缓冲区溢出的数据;5,输入相同的文件名;命令按钮控件的测试测试方法:a,点击按钮正确响应操作。如,单击确定,正确执行操作;单击取消,退出窗口;b,对非法的输入或操作给出足够的提示说明,如,输入月工作天数为32时,单击”确定“后系统应提示:天数不能大于31;c,对可能造成数据无法恢复的操作必须给出确认信息,给用户放弃选择的机会;单选按钮控件的测试测试方法:a,一组单选按钮不能同时选中,只能选中一个。b,逐一执行每个单选按钮的功能。分别选择了“男”“女”后,保存到数据库的数据应该相应的分别为“男”“女”;c,一组执行同一功能的单选按钮在初始状态时必须有一个被默认选中,不能同时为空;updown控件文本框的测试测试方法:a,直接输入数字或用上下箭头控制,如,在“数目”中直接输入10,或者单击向上的箭头,使数目变为10;b,利用上下箭头控制数字的自动循环,如,当最多数字为253时,单击向上箭头,数目自动变为1;反之亦适用;c,直接输入超边界值,系统应该提示重新输入;d,输入默认值,空白。如,“插入”数目为默认值,点击“确定”;或,删除默认值,使内容为空,单击“确定”进行测试;e,输入字符。此时系统应提示输入有误。组合列表框的测试测试方法:a,条目内容正确,其详细条目内容可以根据需求说明确定;b,逐一执行列表框中每个条目的功能;c,检查能否向组合列表框输入数据;复选框的测试测试方法:a,多个复选框可以被同时选中;b,多个复选框可以被部分选中;c,多个复选框可以都不被选中;d,逐一执行每个复选框的功能;列表框控件的测试测试方法:a,条目内容正确;同组合列表框类似,根据需求说明书确定列表的各项内容正确,没有丢失或错误;b,列表框的内容较多时要使用滚动条;c,列表框允许多选时,要分别检查shift选中条目,按ctrl选中条目和直接用鼠标选中多项条目的情况;滚动条控件的测试要注意一下几点:a,滚动条的长度根据显示信息的长度或宽度及时变换,这样有利于用户了解显示信息的位置和百分比,如,word中浏览100页文档,浏览到50页时,滚动条位置应处于中间;b,拖动滚动条,检查屏幕刷新情况,并查看是否有乱码;c,单击滚动条;d,用滚轮控制滚动条;e,滚动条的上下按钮。各种控件在窗体中混和使用时的测试a,控件间的相互作用;b,tab键的顺序,一般是从上到下,从左到右;c,热键的使用,逐一测试;d,enter键和esc键的使用;在测试中,应遵循由简入繁的原则,先进行单个控件功能的测试,确保实现无误后,再进行多个控件的的功能组合的测试。ps:密码输入框测试时要特别注意进行字母大小写输入的测试。查找替换操作案例演示:打开word中的"替换"对话框测试本功能有通过测试和失败测试两种情况通过测试:1,输入内容直接查找,或查找全部2,在组合框中寻找已经查找过的内容,再次查找并确认文档的内容正确,如,已经查找过"测试用例",再次进入不用重新输入查找内容,直接在文档中搜寻就可以.失败测试:1,输入过长或过短的查询字符串.如,假设查询的字符串长度为1到255,那么输入0,1,2,256,255和254进行测试;2,输入特殊字符集,如,在word中.g代表图片,代表分栏符,可以输入这类特殊字符测试;替换测试大体相同.关于编辑操作窗口的功能测试的用例:1,关闭查找替换窗口.不执行任何操作,直接退出;2,附件和选项测试.假如,设定"精确搜寻","向后"搜索等附件选项等等来测试;3,控件间的相互作用.如,搜寻内容为空时,按钮"搜寻全部","搜寻","全部替换","替换"都为灰色.4,热键, Tab键.回车键的使用.插入操作1,插入文件测试的情况a,插入文件;b,插入图像;c,在文档中插入文档本身;d,移除插入的源文件;e,更换插入的源文件的内容;2,链接文件测试方法:a,插入链接文件;b,在文档中链接文档本身;c,移除插入的源文件;d,更换插入的源文件的内容.3,插入对象要测试的内容a,插入程序允许的对象,如,在word中插入excel工作表;b,修改所插入对象的内容.插入的对象仍能正确显示;c,卸载生成插入对象的程序,如,在word中插入excel工作表后卸载excel,工作表仍正常使用.编辑操作编辑操作包括剪切,复制,粘贴操作.测试剪切操作的方法a,对文本,文本框,图文框进行剪切;b,剪切图像c,文本图像混合剪切复制操作方法与剪切类似.测试时,主要是对粘贴操作的测试,方法是:a,粘贴剪切的文本,文本框及图文框;b,粘贴所剪切的图像;c,剪切后,在不同的程序中粘贴d,多次粘贴同一内容,如,剪切后,在程序中连续粘贴3次;e,利用粘贴操作强制输入程序所不允许输入的数据.界面测试用例的设计方法1,窗体测试窗体的方法:a,窗体大小,大小要合适,控件布局合理;b,移动窗体.快速或慢速移动窗体,背景及窗体本身刷新必须正确;c,缩放窗体,窗体上的控件应随窗体的大小变化而变化;d,显示分辨率.必须在不同的分辨率的情况下测试程序的显示是否正常;进行测试时还要注意状态栏是否显示正确;工具栏的图标执行操作是否有效,是否与菜单栏中图标显示一致;错误信息内容是否正确,无错别字,且明确等等;2,控件测试方法:a,窗体或控件的字体和大小要一致;b,注意全角,半角混合c,无中英文混合.菜单进行测试时要注意a,选择菜单是否可以正常工作,并与实际执行内容一致;b,是否有错别字:c,快捷键是否重复;d,热键是否重复;e,快捷键与热键操作是否有效f,是否存在中英文混合g,菜单要与语境相关,如,不同权限的用户登陆一个应用程序,不同级别的用户可以看到不同级别的菜单并使用不同级别的功能;h,鼠标右键快捷菜单特殊属性1,安装界面应有公司介绍或产品介绍,有公司的图标2,主界面及大多数界面最好有公司图标3,选择"帮助"->"关于"命令,应看见相关版权和产品信息界面是软件与用户交互的最直接的层,界面的好坏决定用户对软件的第一印象。而且设计良好的界面能够引导用户自己完成相应的操作,起到向导的作用。同时界面如同人的面孔,具有吸引用户的直接优势。设计合理的界面能给用户带来轻松愉悦的感受和成功的感觉,相反由于界面设计的失败,让用户有挫败感,再实用强大的功能都可能在用户的畏惧与放弃中付诸东流。目前界面的设计引起软件设计人员的重视的程度还远远不够,直到最近网页制作的兴起,才受到专家的青睐。而且设计良好的界面由于需要具有艺术美的天赋而遭拒绝。目前流行的界面风格有三种方式:多窗体、单窗体以及资源管理器风格,无论那种风格,以下规则是应该被重视的。1:易用性:按钮名称应该易懂,用词准确,屏弃模论两可的字眼,要与同一界面上的其他按钮易于区分,能望文知意最好。理想的情况是用户不用查阅帮助就能知道该界面的功能并进行相关的正确操作。易用性细则:1):完成相同或相近功能的按钮用Frame框起来,常用按钮要支持快捷方式。2):完成同一功能或任务的元素放在集中位置,减少鼠标移动的距离。3):按功能将界面划分区域块,用Frame框括起来,并要有功能说明或标题。4):界面要支持键盘自动浏览按钮功能,即按Tab键、回车键的自动切换功能。5):界面上首先要输入的和重要信息的控件在Tab顺序中应当靠前,位置也应放在窗口上较醒目的位置。 6):同一界面上的控件数最好不要超过10个,多于10个时可以考虑使用分页界面显示。7):分页界面要支持在页面间的快捷切换,常用组合快捷键Ctrl+Tab8):默认按钮要支持Enter及选操作,即按Enter后自动执行默认按钮对应操作。9):可寫控制項檢測到非法輸入後應給出說明並能自動獲得焦點。10):Tab键的顺序与控件排列顺序要一致,目前流行总体从上到下,同时行间从左到右的方式。11):核取方塊和選項框按選擇幾率的高底而先後排列。12):核取方塊和選項框要有默認選項,並支援Tab選擇。13):選項數相同時多用選項框而不用下拉清單框。14):界面空间较小时使用下拉框而不用选项框。15):选项数較少时使用选项框,相反使用下拉列表框。16):专业性强的软件要使用相关的专业术语,通用性界面则提倡使用通用性词语。2: 规范性:通常界面设计都按Windows界面的规范来设计,可以说:界面遵循规范化的程度越高,则易用性相应的就越好。小型软件一般不提供工具箱。 规范性细则:1):常用菜单要有命令快捷方式。2):完成相同或相近功能的菜单用横线隔开放在同一位置。3):菜单前的图标能直观的代表要完成的操作。4):菜单深度一般要求最多控制在三层以内。5):工具栏要求可以根据用户的要求自己选择定制。6):相同或相近功能的工具栏放在一起。7):工具栏中的每一个按钮要有及时提示信息。8):一条工具栏的长度最长不能超出屏幕宽度。9): 工具栏的图标能直观的代表要完成的操作。10):系统常用的工具栏设置默认放置位置。11):工具栏太多时可以考虑使用工具箱。12):工具箱要具有可增减性,由用户自己根据需求定制。13):工具箱的默认总宽度不要超过屏幕宽度的1/5。14): 状态条要能显示用户切实需要的信息,常用的有:目前的操作、系统状态、用户位置、用户信息、提示信息、错误信息等,如果某一操作需要的时间较长,还应该显示进度条和进程提示。15):滚动条的长度要根据显示信息的长度或宽度能及时变换,以利于用户了解显示信息的位置和百分比。16):状态条的高度以放置五好字为宜,滚动条的宽度比状态条的略窄。17):菜单和工具条要有清楚的界限;菜单要求凸出显示,这样在移走工具条时仍有立体感。18):菜单和状态条中通常使用5号字体。工具条一般比菜单要宽,但不要宽的太多,否则看起来很不协调。19): 右键快捷菜单采用与菜单相同的准则。1. 页面链接检查:每一个链接是否都有对应的页面,并且页面之间切换正确。可以使用一些工具,如 LinkBotPro、File-AIDCS、HTML Link Validater、Xenu等工具。LinkBotPro不支持中文,中文字符显示为乱码;HTML Link Validater只能测试以Html或者htm结尾的网页链接;Xenu无需安装,支持asp、do、jsp等结尾的网页,xenu测试链接包括内部链接和外部链接,在使用的时候应该注意,同时能够生成html格式的测试报告。如果系统用QTP进行自动化测试,也可以使用QTP的页面检查点检查链接。2. 相关性检查:功能相关性:删除/增加一项会不会对其他项产生影响,如果产生影响,这些影响是否都正确,常见的情况是,增加某个数据记录以后,如果该数据记录某个字段内容较长,可能会在查询的时候让数据列表变形。数据相关性:下来列表默认值检查,下来列表值检查,如果某个列表的数据项依赖于其他模块中的数据,同样需要检查,比如,某个数据如果被禁用了,可能在引用该数据项的列表中不可见。3. 检查按钮的功能是否正确:如新建、编辑、删除、关闭、返回、保存、导入,上一页,下一页,页面跳转,重置等功能是否正确。常见的错误会出现在重置按钮上,表现为功能失效。4. 字符串长度检查: 输入超出需求所说明的字符串长度的内容, 看系统是否检查字符串长度。还要检查需求规定的字符串长度是否是正确的,有时候会出现,需求规定的字符串长度太短而无法输入业务数据。5. 字符类型检查: 在应该输入指定类型的内容的地方输入其他类型的内容(如在应该输入整型的地方输入其他字符类型),看系统是否检查字符类型。6. 标点符号检查: 输入内容包括各种标点符号,特别是空格,各种引号,回车键。看系统处理是否正确。常见的错误是系统对空格的处理,可能添加的时候,将空格当作一个字符,而在查询的时候空格被屏蔽,导致无法查询到添加的内容。7特殊字符检查:输入特殊符号,如、#、$、%、!等,看系统处理是否正确。常见的错误是出现在% 这几个特殊字符8. 中文字符处理: 在可以输入中、英文的系统输入中文,看会否出现乱码或出错。9. 检查信息的完整性: 在查看信息和更新信息时,查看所填写的信息是不是全部更新,更新信息和添加信息是否一致。要注意检查的时候每个字段都应该检查,有时候,会出现部分字段更新了而个别字段没有更新的情况。10. 信息重复: 在一些需要命名,且名字应该唯一的信息输入重复的名字或ID,看系统有没有处理,会否报错,重名包括是否区分大小写,以及在输入内容的前后输入空格,系统是否作出正确处理。11. 检查删除功能:在一些可以一次删除多个信息的地方,不选择任何信息,按“delete”,看系统如何处理,会否出错;然后选择一个和多个信息,进行删除, 看是否正确处理。如果有多页,翻页选,看系统是否都正确删除,并且要注意,删除的时候是否有提示,让用户能够更正错误,不误删除。12. 检查添加和修改是否一致: 检查添加和修改信息的要求是否一致,例如添加要求必填的项,修改也应该必填;添加规定为整型的项,修改也必须为整型.13. 检查修改重名:修改时把不能重名的项改为已存在的内容,看会否处理,报错.同时,也要注意,会不会报和自己重名的错.14. 重复提交表单:一条已经成功提交的纪录,返回后再提交,看看系统是否做了处理。对于Web系统来说,可以通过浏览器返回键或者系统提供的返回功能。15. 检查多次使用返回键的情况: 在有返回键的地方,返回到原来页面,重复多次,看会否出错。16. 搜索检查: 有搜索功能的地方输入系统存在和不存在的内容,看搜索结果是否正确.如果可以输入多个搜索条件,可以同时添加合理和不合理的条件,看系统处理是否正确,搜索的时候同样要注意特殊字符,某些系统会在输入特殊字符的时候,将系统中所有的信息都搜索到。17. 输入信息位置: 注意在光标停留的地方输入信息时,光标和所输入的信息会否跳到别的地方。18. 上传下载文件检查:上传下载文件的功能是否实现,上传文件是否能打开。对上传文件的格式有何规定,系统是否有解释信息,并检查系统是否能够做到。下载文件能否打开或者保存,下载的文件是否有格式要求,如需要特殊工具才可以打开等。上传文件测试同时应该测试,如果将不能上传的文件后缀名修改为可以上传文件的后缀名,看是否能够上传成功,并且,上传文件后,重新修改,看上传的文件是否存在。19. 必填项检查:应该填写的项没有填写时系统是否都做了处理,对必填项是否有提示信息,如在必填项前加 “*”;对必填项提示返回后,焦点是否会自动定位到必填项。20. 快捷键检查:是否支持常用快捷键,如Ctrl+C、 Ctrl+V、 Backspace等,对一些不允许输入信息的字段,如选人,选日期对快捷方式是否也做了限制。21. 回车键检查: 在输入结束后直接按回车键,看系统处理如何,会否报错。这个地方很有可能会出现错误。22刷新键检查:在Web系统中,使用浏览器的刷新键,看系统处理如何,会否报错。23回退键检查:在Web系统中,使用浏览器的回退键,看系统处理如何,会否报错。对于需要用户验证的系统,在退出登录后,使用回退键,看系统处理如何;多次使用回退键,多次使用前进键,看系统如何处理。24直接URL链接检查:在Web系统中,直接输入各功能页面的URL地址,看系统如何处理,对于需要用户验证的系统更为重要。如果系统安全性设计的不好,直接输入各功能页面的URL地址,很有可能会正常打开页面。25空格检查:在输入信息项中,输入一个或连串空格,查看系统如何处理。如对于要求输入整型、符点型变量的项中,输入空格,既不是空值,又不是标准输入。26输入法半角全角检查:在输入信息项中,输入半角或全角的信息,查看系统如何处理。如对于要求输入符点型数据的项中,输入全角的小数点(“。”或“”,如);输入全角的空格等。27密码检查:一些系统的加密方法采用对字符Ascii码移位的方式,处理密码加密相对较为简单,且安全性较高,对于局域网系统来说,此种方式完全可以起到加密的作用,但同时,会造成一些问题,即大于128的Ascii对应的字符在解密时无法解析,尝试使用 “uvwxyz”等一些码值较大的字符作为密码,同时,密码尽可能的长,如17位密码等,造成加密后的密码出现无法解析的字符。28用户检查:任何一个系统,都有各类不同的用户,同样具有一个或多个管理员用户,检查各个管理员之间是否可以相互管理,编辑、删除管理员用户。同时,对于一般用户,尝试删除,并重建同名的用户,检查该用户其它信息是否重现。同样,提供注销功能的系统,此用户再次注册时,是否作为一个新的用户。而且还要检查该用户的有效日期,过了有效日期的用户是不能登录系统的。容易出现错误的情况是,可能有用户管理权限的非超级管理员,能够修改超级管理员的权限。29系统数据检查:这是功能测试最重要的,如果系统数据计算不正确,那么功能测试肯定是通不过的。数据检查根据不同的系统,方法不同。对于业务管理平台,数据随业务过程、状态的变化保持正确,不能因为某个过程出现垃圾数据,也不能因为某个过程而丢失数据。30系统可恢复性检查:以各种方式把系统搞瘫,测试系统是否可正常迅速恢复。31确认提示检查:系统中的更新、删除操作,是否提示用户确认更新或删除,操作是否可以回退(即是否可以选择取消操作),提示信息是否准确。事前或事后提示,对于Update或Delete操作,要求进行事前提示。32数据注入检查:数据注入主要是对数据库的注入,通过输入一些特殊的字符,如“”,“/”,“-”等或字符组合,完成对SQL语句的破坏,造成系统查询、插入、删除操作的SQL因为这些字符而改变原来的意图。如select * from table where id = and name = ,通过在id输入框中输入“12-”,会造成查询语句把name条件注释掉,而只。同样,对于update和delete的操作,可能会造成误删除数据。当然还有其它一些SQL注入方法,具体可以参考SQL应用高级SQL注入.doc,很多程序都是基于页面对输入字符进行控制的,可以尝试跳过界面直接向数据库中插入数据,比如用Jmeter,来完成数据注入检查。33刷新检查:web系统中的WebForm 控件实时刷新功能,在系统应用中有利有弊,给系统的性能带来较大的影响。测试过程中检测刷新功能对系统或应用造成的影响(白屏),检查控件是否回归默认初始值,检查是否对系统的性能产生较大影响(如每次刷新都连接数据库查询等)。34事务检查:对于事务性操作,断开网络或关闭程序来中断操作,事务是否回滚。35时间日期检查:时间、日期验证是每个系统都必须的,如2006-2-29、2006-6-31等错误日期,同时,对于管理、财务类系统,每年的1月与前一年的12月(同理,每年的第1季度与前一年的第4季度)。另外,对于日期、时间格式的验证,如2006 年2月28日、2006-2-28、 20060228等。日期检查还要检查日期范围是否符合实际的业务,对于不符合时间业务的日期,系统是否会有提示或者有限制36多浏览器验证:越来越多的各类浏览器的出现,用户访问Web程序不再单单依赖于Microsoft Internet Explorer,而是有了更多的选择:Maxthon、Firefox、Tencent Traveler等,考虑使用多种浏览器访问系统,验证效果。37安装测试:对于C/S架构的系统,安装程序的测试是一个重要方面,安装程序自动化程度、安装选项和设置(验证各种方案是否都能正常安装)、安装过程中断测试、安装顺序测试(分布式系统)、修复安装及卸载测试。38文档测试:主要是对用户使用手册、产品手册进行测试,校验是否描述正确、完整,是否与当前系统版本对照,是否易理解,是否二义性等。39测试数据检查:事实告诉我们,测试数据比代码更有可能是错的,因此,当测试结果显示有错误发生的时候,怀疑代码错误前要先对测试数据检查一遍。40请让我的机器来运行:在某些项目中,出现一个病态的问题:系统没有问题呀,它在我的机器上是能够通过的。这就说明了其中存在着和环境相关的BUG。“是否所有的一切都受到了版本控制工具的管理?”、“本机的开发环境和服务器的环境是否一样?”、“这里是否存在一个真正的BUG,只不过是在其他的机器里偶然出现?”。所有的测试必须在所有系统要求的机器上运行通过,否则的话,代码就可能存在问题。(1)环境的统一,如语言方面,开发机器上是简体中文,测试机器上也应该是简体中文;(2)测试流程是不是确定一样?有时候会造成思维定势,忘记了在进行操作之前系统所处的状态。41Ajax技术的应用:Ajax有很多优点,但也有很多缺点,如果利用优点、避免缺点,是我们对新的 Web2.0应用的一个挑战。而Ajax的应用最直接的问题就是用户体验,用户体验的效果直接关系到是否使用Ajax技术。“会做,并不意味着应该做、必须做”,这就是对Ajax技术的很重要的注解。42Ajax技术的应用:Ajax采用异步调用的机制实现页面的部分刷新功能,异步调用存在异常中断的可能,尝试各种方法异常中断异步的数据调用,查看是否出现问题。在这里遇到的一个问题就是对日期控件的操作,以及如果页面数据较多的时候的刷新。43脚本错误:随着Ajax、IFrame等异步调用技术的发展,Javascrpt技术也越来越受到开发人员的重视,但Javascrpt存在调试困难、各浏览器存在可能不兼容等问题,因此在Web系统中,可能会出现脚本错误。同时,脚本错误造成的后果可大、可小,不能忽视。