发表于: 2018-01-07 17:41:30

3 936


今天完成的事情:学习了解软件的多种测试方法

收获: 冒烟测试 随机测试 本地化测试

            自动化测试  单元测试  集成测试

1.冒烟测试:冒烟测试是自由测试的一种。冒烟测试(smoketest)在测试中发现问题,找到了一个Bug,然后开发人员会来修复这个Bug。这时想知道这次修复是否真的解决了程序的Bug,或者是否会对其它模块造成影响,就需要针对此问题进行专门测试,这个过程就被称为SmokeTest。在很多情况下,做SmokeTest是开发人员在试图解决一个问题的时候,造成了其它功能模块一系列的连锁反应,原因可能是只集中考虑了一开始的那个问题,而忽略其它的问题,这就可能引起了新的Bug。SmokeTest优点是节省测试时间,防止build失败。缺点是覆盖率比较低。

2:随机测试:顾名思义,随机性测试就是随机测试,没有固定测试数据,通过得到的测试结果,归纳分析。

3.本地化测试:就是将软件版本语言进行更改,比如将英文的windows改成中文的windows就是本地化。本地化测试的对象是软件的本地化版本。

   下面对本地化软件的错误的三种典型类型进行分类讨论,探讨错误的表现特征,产生的原因,测试要求,发现错误的方法。

a.功能错误

表现特征
 不能实现设计要求的功能。
 产生与设计要求不符合的结果。
 绝大多数存在于源语言软件和本地化软件,也有仅出现在本地化软件中。

 经常出现在软件的菜单项、工具栏按钮和对话框的功能按钮中。

产生原因
 源语言软件编码错误。
 错误本地化,如将程序中的变量字串名进行了翻译等。
测试要求
 保证输入数据正确,或者打开了正确的测试用例。
 明确正确的输出结果和中间数据数值及格式。
测试方法
 对于菜单项或工具栏按钮,通过全面测试各个选项,认真观察每一步是否正确执行,输出结果(包括格式和数值)是否正确。
 对于对话框,可以逐个执行各按钮,各个列表选项等观察执行结果。
 对于命令行形式的多个并列选项,采用路径跟踪法,按分支顺序测试嵌套的全部子项。
说明
 特别注意不同选项、不同按钮相互操作的影响。

 注意检查快捷键是否遗漏,是否多余,是否不同,是否起作用。

b.国际化错误

表现特征
 控件或对话框中显示不可辩识或无意义的明显错误的字符。
 不支持双字节字符的输入和输出,包括双字节的文件名和路径名。
 与当地不符合的默认打印纸张大小。
 与当地不符合的日期和时间格式。
 本地化软件的列表项排序错误。
 某些没有本地化的字符串。
 仅出现在本地化后的版本中。
产生原因
 源程序在设计时没有正确进行国际化设计,例如,没有提供双字节字符集的支持。
 源程序在设计时没有将可以本地化的字符串与软件代码进行彻底分离。
 软件本地化后,单字节字符向双字节字符转化过程中,由于单字节和双字节之间的差别,可能使得某些本地化后的双字节字符的显示乱码。
测试要求
 本地化后的软件字符显示正确完整,无乱码或明显错别字。
 与本地区域有关的数据类型(日期 / 时间,货币符号,纸张大小,字体,度量单位等)的显示符合本地的格式要求。
测试方法
 执行菜单或按钮,检查对话框中的字符。
 打开帮助文档,检查所有需要翻译的字符。
说明
 注意检查对话框下拉列表中需要拖动滚动条才能显示的内容。

 需要确认源语言软件对应项正确,仅本地化软件存在错误。

c.本地化错误

包括翻译错误和控件大小和位置引起的布局错误。
表现特征
 应该翻译而没有翻译的英文字符。
 不应该翻译而翻译的中文字词。
 错误翻译的字词。
 较多隐含在对话框各控件以及帮助文档中。
 只在本地化版本中存在该类型错误。
 控件相互重叠或排列不均匀。
 控件中字符显示不完整。
 主要出现在本地化版本的对话框中。
产生原因
 翻译人员不熟悉翻译要求。
 翻译人员工作疏漏。
 用户界面的翻译与标准术语表不一致。
 软件本地化后,由于源语言和本地化语言的表达方式不同,本地化后的字符数与源语言不同,每个字符所占空间尺寸不同,使得在英文版本正确显示的控件字符,可能在本地化版本显示不正确。
 在编译本地化软件之前,没有对资源文件对话框及其控件调整大小。
 本地化人员调整软件资源文件不当引起。例如,对话框及其控件高度或宽度的不正确调整。
测试要求
 明确需要翻译和不需要翻译的内容。
 明确正确的翻译方式。
 根据术语表,确认术语翻译的正确性与一致性。
 对话框中控件布局均匀,字符显示完整正确。
 对话框中控件数量相等,没有多余或丢失的控件
测试方法
 主要同时打开中英文版本,执行相同的操作。
 结合标准界面翻译术语表,参照对比。
 执行将要打开对话框的菜单或工具栏按钮,观察打开对话框中的控件布局。
 对比检查源语言软件和本地化软件对应的对话框中控件的数量
说明
 对于对话框,如果含有下拉列表框,要打开列表框查看全部项。
 特别要注意选项中开关类翻译错误。
 可能在执行不同的操作后,如选择了不同单选或复选按钮后,编辑框显示重叠等。
 执行后带省略号的菜单或命令按钮,将会显示对话框。

 一些对话框控件的布局错误如果也存在于源语言软件中,则属于软件设计错误,应该分配给软件供应商处理。

4.自动化测试:广义上来讲,自动化包括一切通过工具(程序)的方式来代替或辅助手工测试的行为都可以看做自动化,包括性能测试工具(loadrunner、jmeter),或自己所写的一段程序,用于生成1到100个测试数据。狭义上来讲,通工具记录或编写脚本的方式模拟手工测试的过程,通过回放或运行脚本来执行测试用例,从而代替人工对系统的功能进行验证。当然,我们更普遍的认识把“自动化测试”看做“ 基于产品或项目UI层的自动化测试”。

自动化测试可分为 自动化性能测试  自动化功能测试。

  1. 性能测试主要是使用测试工具,Loadrunner、Jmeter等,对软件进行压力负载、负载测试、强度测试等等,因为这些无法用手工进行代替,所以必须自动化。

  2. 自动化功能测试:包括单元测试、接口测试、UI测试。主要是编写代码、脚本,让软件自动运行,发现缺陷,代替部分的手工测试。但一般只有大的项目才需要进行自动化,中小型项目不太适合使用自动化测试。

  3. 5.单元测试:单元测试(unit testing),是指对软件中的最小可测试单元进行检查和验证。对于单元测试中单元的含义,一般来说,要根据实际情况去判定其具体含义,如C语言中单元指一个函数,Java里单元指一个类,图形化的软件中可以指一个窗口或一个菜单等。总的来说,单元就是人为规定的最小的被测功能模块。单元测试是在软件开发过程中要进行的最低级别的测试活动,软件的独立单元将在与程序的其他部分相隔离的情况下进行测试。

  4. 6.集成测试:集成测试主要是针对程序内部结构进行测试,特别是对程序之间的接口进行测试。集成测试对测试人员的编写脚本能力要求比较高。测试方法一般选用黑盒测试和白盒测试相结合。

  5. 明天计划:巩固已学历了解的软件测试方法和学习了解新的软件测试方法。



返回列表 返回列表
评论

    分享到