测试用例

五、测试-六、优化方案

我是研究僧i 提交于 2020-01-26 02:56:31
五、测试 1.单元测试    单元测试的方式是黑盒测试,即通过每个环节的输入输出情况进行测试。程序由四个类组成,对应生成四个测试类,使用Junit5对其中的主要方法进行测试。测试的大致思路是预先设计较为简单的数独用例,生成新的对象,运行方法,并将阶段性的结果与预先计算的结果相比较。    有些方法具有返回值,便于设计测试类,例如对 Main::isNumber()进行测试: //Main::isNumber public static boolean isNumber(String str){ String reg = "^[0-9]+?$"; return str.matches(reg); }//MainTest::testIsNumber @Test final void testIsNumber() { Assert.assertEquals(true, Main.isNumber("100")); Assert.assertEquals(true, Main.isNumber("10a")); Assert.assertEquals(true, Main.isNumber("4.5")); }    对于更多没有返回值的方法,采取验证阶段结果的方法,预测方法执行后对象属性的变化并加以验证。例如对SudokuGenerator::creatFirstBlock()方法的测试

浅谈软件测试之回归测试

泪湿孤枕 提交于 2020-01-25 18:56:37
回归测试的定义: 回归测试是指修改了旧代码后,重新进行测试以确认修改没有引入新的错误或导致其他代码产生错误。 1.回归测试是指重复以前的全部或部分的相同测试。 2.新加入测试的模组,可能对其他模组产生副作用,故须进行某些程度的回归测试。 3.回归测试的重心,以关键性模组为核心。 回归测试的好处: 自动回归测试将大幅降低系统测试、维护升级等阶段的成本。回归测试作为软件生命周期的一个组成部分,在整个软件测试过程中占有很大的工作量比重,软件开发的各个阶段都会进行多次回归测试。 回归测试的存在意义: 在渐进和快速迭代开发中,新版本的连续发布使回归测试进行的更加频繁,而在极端编程方法中,更是要求每天都进行若干次回归测试。因此,通过选择正确的回归测试策略来改进回归测试的效率和有效性是非常有意义的。 回归测试的需求: 对于一个软件开发项目来说,项目的测试组在实施测试的过程中会将所开发的测试用例保存到“测试用例库”中,并对其进行维护和管理。当得到一个软件的基线版本时,用于基线版本测试的所有测试用例就形成了基线测试用例库。在需要进行回归测试的时候,就可以根据所选择的回归测试策略,从基线测试用例库中提取合适的测试用例组成回归测试包,通过运行回归测试包来实现回归测试。保存在基线测试用例库中的测试用例可能是自动测试脚本,也有可能是测试用例的手工实现过程。 测试用例的选择: 对于一个软件开发项目来说

postman进行http接口测试

元气小坏坏 提交于 2020-01-25 02:17:23
HTTP的接口测试工具有很多,可以进行http请求的方式也有很多,但是可以直接拿来就用,而且功能还支持的不错的,我使用过的来讲,还是postman比较上手。 优点: 1、支持用例管理 2、支持get、post、文件上传、响应验证、变量管理、环境参数管理等功能 3、支持批量运行 4、支持用例导出、导入 5、支持云端保存用例【付费用户】 可以说POSTMAN满足了HTTP接口测试的大部分功能,只有少部分的功能不被支持,比如:请求流程的控制;前面说了这么多,接下来我们就看看POSTMAN的安装与使用吧。 1、什么是POSTMAN POSTMAN是一个Chrome的一个插件工具,我们可以通过Chrome的应用商店进行搜索并安装,安装完成会在桌面上显示一个postman的图标,每次点击这个图标就可以启动POSTNA的界面。 启动过后就是上面的界面了,左边是用来管理用例的目录结构,右边是具体某个用例的请求内容的参数及响应内容;默认的postman会自带一个demo的项目叫“POSTMAN Echo”,里面有各种场景的用例demo,对于新上手的同学可以通过查看这些demo用例来学习如何使用POSTMAN。 2、新建一个项目 直接点击左边栏上面的添加目录图标来新增一个根目录,这样就等于新建了一个项目,我们可以把一个项目或一个模块的用例都存放在这个目录之下

postman进行http接口测试

谁都会走 提交于 2020-01-24 04:54:14
HTTP的接口测试工具有很多,可以进行http请求的方式也有很多,但是可以直接拿来就用,而且功能还支持的不错的,我使用过的来讲,还是postman比较上手。 优点: 1、支持用例管理 2、支持get、post、文件上传、响应验证、变量管理、环境参数管理等功能 3、支持批量运行 4、支持用例导出、导入 5、支持云端保存用例【付费用户】 可以说POSTMAN满足了HTTP接口测试的大部分功能,只有少部分的功能不被支持,比如:请求流程的控制;前面说了这么多,接下来我们就看看POSTMAN的安装与使用吧。 1、什么是POSTMAN POSTMAN是一个Chrome的一个插件工具,我们可以通过Chrome的应用商店进行搜索并安装,安装完成会在桌面上显示一个postman的图标,每次点击这个图标就可以启动POSTNA的界面。 启动过后就是上面的界面了,左边是用来管理用例的目录结构,右边是具体某个用例的请求内容的参数及响应内容;默认的postman会自带一个demo的项目叫“POSTMAN Echo”,里面有各种场景的用例demo,对于新上手的同学可以通过查看这些demo用例来学习如何使用POSTMAN。 2、新建一个项目 直接点击左边栏上面的添加目录图标来新增一个根目录,这样就等于新建了一个项目,我们可以把一个项目或一个模块的用例都存放在这个目录之下

软件测试的类型:具有详细信息的不同测试类型

我的未来我决定 提交于 2020-01-24 00:58:39
#1)Alpha测试 它是软件行业中最常用的测试类型。该测试的目的是在将其发布到市场或用户之前,确定所有可能的问题或缺陷。 Alpha测试在软件开发阶段的最后但Beta测试之前进行。尽管如此,作为此类测试的结果,可能会进行较小的设计更改。 Alpha测试是在开发人员的网站上进行的。可以为这种类型的测试创建内部虚拟用户环境。 #2)验收测试 的验收测试是由客户端和验证结束系统的流量到底是否是按照业务需求或不执行,如果是按照最终用户的需求。仅当所有功能部件均按预期工作时,客户端才接受该软件。 这是测试的最后阶段,此后该软件将投入生产。这也称为用户验收测试(UAT)。 #3)临时测试 名称本身表明该测试是在临时基础上执行的,即不参考测试用例,也没有针对此类测试的任何计划或文档。 该测试的目的是通过执行应用程序的任何流程或任何随机功能来发现缺陷并破坏应用程序。 临时测试是一种发现缺陷的非正式方法,项目中的任何人都可以执行。没有测试用例就很难识别缺陷,但是有时可能无法使用现有的测试用例来识别临时测试期间发现的缺陷。 #4)辅助功能测试 可访问性测试的目的是确定残疾人是否可以访问该软件或应用程序。 在这里,残疾是指聋哑,色盲,智障,盲人,老年和其他残疾群体。进行各种检查,例如用于视觉障碍的字体大小,用于色盲的颜色和对比度等。 #5)Beta测试 Beta测试是由客户执行的正式类型的软件测试

postman基本使用

廉价感情. 提交于 2020-01-22 19:13:36
一、安装     官网:https://www.getpostman.com/     Postman是一个Chrome的一个插件工具,我们可以通过Chrome的应用商店进行进行搜索并安装,安装完成会在桌面上显示一个postman图标。    二、优点     1)支持用例管理     2)支持get、post、文件上传、响应验证、变量管理、环境参数管理等功能     3)支持批量运行     4)支持用例导入导出     5)支持云端保存用例【付费用户】    三、默认的postman会自带一个demo的项目叫“POSTMAN Echo”,里面有各种场景的用例demo    四、使用    4.1、新建项目   直接点击左边上面的添加目录图标来新增一个根目录,相当于新建了一个项目,我们可以把一个项目或一个模块的用例都存放在这个目录之下,并且在根目录之下我们还可以在建立子目录来进行功能用例的细分,具体见下图:    4.2、新建用例   点击右侧区域的+号,新增一个空用例的模板,也可以通过复制一个已有用例来达到新建一个用例的目的,2种方法见下:    4.3、添加请求信息   新建的用例请求为空,需要添加请求信息   1)选择一个请求方法,如:get或post   2)填写请求的url,如:http://www.baidu.com   3)如果是get则请求参数直接写在url后,用

软件测试------用例篇

怎甘沉沦 提交于 2020-01-22 19:08:32
软件测试用例总结 测试用例的基本要素 测试用例的设计方法 基于需求的设计方法 等价类 边界值 因果图 正交排列 场景设计法 错误猜测法 测试用例的有效性 测试用例的粒度和评价 测试用例的基本要素 回归测试的的概念 :测试用例是为了实施测试而向被测试系统提供的一组集合,这组集合包含:测试环境、操作步骤、测试数据、预期结果等要素。 (好的测试用例是一个不熟悉业务的人也能依据用例来很快的进行测试) 评价测试用例的标准: 用例表达清楚,无二义性 用例可操作性强 用例的输入与输出明确,一条用例只有一个预期结果 用力的可维护性好 用例对需求的覆盖性高 暴露程序Bug的能力强 测试用例给我们带来的好处 * 测试执行者的依据 * 使得工作可重复,自动化测试的基础 * 评估需求的覆盖率 * 用例的复用 * 积累测试的方法思路以供后续借鉴 使用中带来的困扰 测试用例的设计是费时费力的工作,往往设计测试用例所花费的时间比执行所花费的时间还多 解决如下问题 测试的覆盖率无法衡量;对新版本的重复测试很难实施 不确定是否较全面的测试了所有功能;存在大量冗余测试影响测试效率 测试用例的设计方法 基于需求的设计 RBT是基于需求的测试方法,会使测试更加高效,因为它使测试专注于质量问题产生的根源,即 需求 。 基于需求的测试是一种最根本的软件测试,重点关注于以下两个关键问题: 验证需求是否正确、完整、无二义性

【华为云技术分享】【测试微课堂】DevOps敏捷测试之道

无人久伴 提交于 2020-01-22 18:57:04
本文介绍企业在敏捷和DevOps的逐步转型过程中,测试如何应对挑战,有的放矢进行测试,建立适合产品自身发展阶段、产品特点的敏捷测试能力。 敏捷和DevOps 敏捷和DevOps转型始终是被业务目标和客户需求驱动的。市场竞争环境越来越激烈,新商业模式的创新和变现时间窗口越来越短,催生更多的企业采取精益创业的方式,捕捉市场需求后,尽量缩短TTM产品面世时间,快速推出MVP产品并快速响应客户需求迭代产品。 以华为为例,在2008年左右的时候,华为的项目还是采用传统的交付方式,例如在年初开始一个项目,在项目立项之初就会把客户的需求全部收集好,包括一些用户的反馈,并把需求做了全年的排序。年中的时候发布产品给用户,两个月之后再出一个补丁,最终年底出一个正式的版本。当时版本交付的节奏还是比较慢的,但是对质量要求比较强。因为产品发布给客户以后,下一个补丁需要两个月,如果用户在这个期间发现产品问题,他们只能再等两个月,而在这期间如果用户不接受我们的产品,会导致项目前功尽弃,所以就对产品的质量有严格的要求。 产品逐渐向敏捷方向发展,这时有一部分研发工具平台已经陆续转到云上去了,一些测试类的工具也需要转型。之前产品的交付是半年、两个月发一次,转型之后变成一个月,甚至两周发一次,但这时的转变并不彻底,与客户的交付过程仍然存在一些问题。后来越来越多的工具向平台化、服务化方向转型

每周一个 Python 标准库 | unittest

自作多情 提交于 2020-01-22 03:41:04
技术博客: https://github.com/yongxinz/tech-blog 同时,也欢迎关注我的微信公众号 AlwaysBeta ,更多精彩内容等你来。 unittest 是 Python 自带的单元测试框架,可以用来作自动化测试框架的用例组织执行。 优点:提供用例组织与执行方法;提供比较方法;提供丰富的日志、清晰的报告。 unittest 核心工作原理 unittest 中最核心的部分是:TestFixture、TestCase、TestSuite、TestRunner。 下面我们分别来解释这四个概念的意思,先来看一张 unittest 的静态类图: [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-i73bqGc5-1579601045102)(D:\work\article\unittest.png)] 一个 TestCase 的实例就是一个测试用例。什么是测试用例呢?就是一个完整的测试流程,包括测试前准备环境的搭建(setUp),执行测试代码(run),以及测试后环境的还原(tearDown)。元测试(unit test)的本质也就在这里,一个测试用例是一个完整的测试单元,通过运行这个测试单元,可以对某一个问题进行验证。 而多个测试用例集合在一起,就是 TestSuite,而且 TestSuite 也可以嵌套 TestSuite。

文本框测试用例

江枫思渺然 提交于 2020-01-21 21:48:22
一、文本框: 在 WEB测试中,表单输入框有两种,一种是数值型文本框,一种是字符型的普通文本输入框。 普通的文本输入框 通常要检查以下几点: 1、输入中英文空格 2、输入超长字符 3、输入字符串中间含空格 4、输入首尾空格 5、输入特殊字符 6:输入全角/半角特殊字符(特别是单引号) 7、输入特殊字符串NULL,null 8、输入正常字符串 9、输入的字符串之间含空格 10:输入全角、半角空格 11:输入全角/半角,大写/小写英文字符 12:输入全角/半角数字 13:输入中文字符(默认全角) 14:输入英文字符(默认全角) 15:输入Javascrīpt函数:<b>Hello</b>,alert("hello") 16:高危词,违禁词,敏感词 17:输入日文字符(很少校验此字符) 18:输入特殊字符串NULL、null、 空格的转义字符;<scrīpt></scrīpt>;<br>;<tr>;<td>;< /tr>;</td>;</html>;</body>;</table>等 针对费用类的数值型输入框: 条件: demcial(x,y) ,界面显示小数点到y位 通常要检查以下几点: 1、输入英文空格 2、输入中文空格 3、输入字符中含有A~Z或a~z或者~!@#$%^&*()_+|\=-`{}[];’”:,./?<> 4、输入整数首位为0 5、输入整数末位为0 6、输入正数值 7