怎么查看网站的空间商,给公司做网站的费用入什么科目,wordpress添加产品,全屋定制加盟品牌加盟网#x1f4e2;专注于分享软件测试干货内容#xff0c;欢迎点赞 #x1f44d; 收藏 ⭐留言 #x1f4dd; 如有错误敬请指正#xff01;#x1f4e2;交流讨论#xff1a;欢迎加入我们一起学习#xff01;#x1f4e2;资源分享#xff1a;耗时200小时精选的「软件测试」资… 专注于分享软件测试干货内容欢迎点赞 收藏 ⭐留言 如有错误敬请指正交流讨论欢迎加入我们一起学习资源分享耗时200小时精选的「软件测试」资料包 最困难的时候也就是我们离成功不远的时候 在日常工作中我们经常使用到黑盒测试和白盒测试。今天我们就将结合实例共同探讨黑盒测试的主要测试方法。话不多说上干货 最常见黑盒测试方法包括边界值、等价类、错误推测法、场景法、因果图法、判定表组成法、正交实验设计。注黑盒测试仅需知道系统的【输入】和【输出】不需要知道代码是怎么写的。所以代码部分就不赘述了哈 一、边界值测试 经实践总结大量的软件缺陷发生在输入域和输出域的边界上。所以在设计测试用例的时候应该重视边界。 例1 有一个输入条件时可以这么选取测试用例。以坐标轴举例。以红点表示测试用例 例2 当有两个输入条件的时候可以这么选取测试用例。以红点表示测试用例 小结 边界值测试是一种最基本的黑盒测试方法它是“等价类划分”这种测试方法的良好补充。但该方法会有较大的冗余和漏洞。边界值测试对布尔型无效因为布尔型不是“true”就是“false”不存在边界值的概念。当然边界值测试并非黑盒测试独有它也可以应用在白盒测试比如数组边界的测试、对循环次数边界的测试……。 二、等价类划分 1、划分等价类 要做到穷尽测试是不可能的所以在设计测试用例时往往要先划分等价类再选取“人大代表”。划分的子集应该满足如下因素 1每个子集内部所有的数据都是等价的 2子集之间互不相交 3所有子集的并集是整个输入域或输出域 PS 1【有效等价类】是相对于规格说明合理的、正确的、有意义的输入数据构成的集合。 2【无效等价类】是相对于规格说明不合理的、错误的、无意义的输入数据构成的集合。举例说明。 例1 如网站注册用户名的时候输入框要求“用户名由字母开头后跟字母或数字的任意组合且长度8”。 例2 每个学生可选修1-3门课程。 2、缺陷相关性假设 针对缺陷相关性假设可将等价类测试分为【弱等价类测试】和【强等价类测试】。在现实情况中由于缺陷的可能情况非常多一个子集中的数据对某种缺陷是等价的但对另外一种缺陷可能又是不等价的。 ①弱一般等价类WN测试考虑单缺陷假设测试用例使用每个等价类中的一个值。 ②强一般等价类SN测试考虑多缺陷假设测试用例集合为等价类笛卡儿积。 例1 弱等价类 弱等价类是考虑某个单一缺陷情况下的等价情况子集里所有数据在这种缺陷假设下是等价的并且划分成的几个等价类能够覆盖整个测试空间的单一缺陷。比如以下一段程序 我们可以将数据划分为两个等价类0~10为1个等价类大于10的数据为1个等价类在考虑“”号误写成“”号这种缺陷的情况下这两个等价集中的数据都是等价的比如010这个等价类中使用0或使用10来进行测试都能发现缺陷。这两个等价类中各自抽取一个测试数据进行测试都能代表其他数据揭示出“”号误写成“”号这种缺陷来因此整个测试空间都被覆盖了。 例2 强等价类是在多个缺陷假设前提下各个等价类中的可测数据在单个或多个缺陷假设下是等价的并且划分的各个等价子集中各自取一个测试数据可以覆盖整个测试空间的多个缺陷情况。 再考虑前面弱等价类中的例子程序出错的可能性有哪些呢 除了大于号会错写成小于号外实际上还有可能写成大于等于号10有可能写成1或100等大于10或小于10的数。(PS为方便描述以错写成1和100为例) ①考虑010这个集合在误写成中间一列条件中情况下里面的数据并不等价比如误写成x1的情况下使用1做测试和使用2做测试揭示缺陷是不同的使用1做测试发现不了缺陷但使用2测试就能发现缺陷。 ②在判断条件误写成x10条件下10和0~9中的任一数据也不等价并且使用大于10的数据也无法揭示出条件错写成x10这个缺陷因此整个测试空间的多个缺陷无法被已划分的两个等价类来覆盖10需要单独划分成一个等价类。 ③这样将数据划分成三个等价类{09}、{10}、{大于10的数据}再看看这三个等价类是否可以覆盖表中各种出错情况显然在x100和x100两种情况下大于10的数据集合中的数据是不等价的使用大于100的数据不能揭示出缺陷但使用大于10小于100的数据却能揭示出缺陷因此需要对大于10的数据再划分等价类实际上只要将边界值{11}划一个单独的等价类就可以了。 ④这样总共得到四个等价类{09}、{10}、{11}、{大于11的数据}从这四个等价类中各取一个数据的话就可以将以上列出的所有可能的缺陷情况都揭示出来但是各个等价类并不是对所有缺陷都等价的这种划分的等价类由于可以将各种缺陷情况覆盖到把它叫做强等价类。 小结 等价类测试可以处理布尔型和逻辑型的问题。建议在划分等价类后对每个等价类进行编号这样可看起来会更清晰。 三、因果图 基于因果图的测试方法要考虑如下问题 1规格说明书有哪些原因 2规格说明书有哪些结果 3规格说明书中各种原因之间的关系怎么样 4规格说明书中各种结果之间的关系怎么样 5规格说明书中原因和结果之间的约束条件怎么样 6如何从规格说明书中的原因和结果设计测试用例 因果图 【a】恒等若c1为1则e1也为1。若c1为0则e1也为0 【b】非若c1是1则e1是0。若c1为0则e1是1 【c】或若c1与c2中有一个是1或者两个都为1则e1是1。若c1和c2都为0则e1是0 【d】与当且仅当c1和c2都是1则e1为1否则e1为0。 E约束(异异或)ab最多有一个可能为1不能同时为1。 I约束(或包含)abc中至少有一个必须为1不能同时为0。 O约束(惟一)a和b必须有一个且仅有一个为1。 R约束(要求)a是1时b必须是1即a为1时b不能为0。 M约束对输出条件的约束若结果a为1则结果b必须为0。 举例 某个软件的规格说明书中规定第一个字符必须是A或B第二个字符必须是一个数字字符在此情况下进行文件的修改。但如果第一个字符不正确则给出信息L如果第二个字符不正确则给出信息M。 可按照如下步骤设计测试用例 原因 C1第一个字符是A C2第一个字符是B C3第二个字符是一个数字字符。 结果 E1给出信息L E2修改文件 E3给出信息M 转化成决策表 小结 因果图可以用于描述输入与输出的相互关系。但是其绘制过程比较繁琐。因果图可以转化成决策表。建议直接绘制决策表。 四、决策表 举例 已知a、b、c三边判断是否能构成三角形如果是三角形的话是什么哪种三角形 解答决策表的建立步骤 1、列出所有的条件桩和动作桩 2、填入条件项 3、填入动作项制定初始判定表 4、简化、合并相似规则或者相同动作。 小结 决策表测试仅适合对输入域展开分析不适合对输出域展开测试。 五、错误推测法 错误推测法凭借的是测试人员的直觉和经验推测系统中可能出现的各种缺陷。常常是列举出系统中所有【可能的缺陷和容易发生缺陷】的特殊情况并根据它们来设计测试用例。 举例 测试一个对线性表比如数组进行排序的程序可推测列出以下几项需要特别测试的情况 小结 优点充分发挥个人的经验和潜能命中率高 缺点覆盖率难以保证过多的依赖于个人的经验。 边界值测试 软件的工作流程往往对应着现实生活的场景。应该从更高些的视角来把握系统的业务流程了解功能模块。在熟悉流程的基础上才能讨论局部细节的测试设计。场景法的核心是事件流和场景。 举例 有一个在线购物的实例用户进入一个在线购物网站进行购物选购物品后进行在线购买这时需要使用帐号登录登录成功后进行付钱交易交易成功后生成订购单完成整个购物过程。 解答 step1确定基本流和备选流 step2根据基本流和备选流来确定场景 step3设计用例。对于每一个场景都需要确定测试用例。可以采用矩阵或决策表来确定和管理测试用例。下面显示了一种通用格式其中各行代表各个测试用例而各列则代表测试用例的信息。 step4设计用例设计数据把数据填入上面的用例表中。 PS测试用例只是购物的一部分测试用例应该还可以继续补充以达到比较好的覆盖。 行动吧在路上总比一直观望的要好未来的你肯定会感谢现在拼搏的自己如果想学习提升找不到资料没人答疑解惑时请及时加入群里面有各种测试开发资料和技术可以一起交流哦。 最后 下方这份完整的软件测试视频教程已经整理上传完成需要的朋友们可以自行领取 【保证100%免费】 软件测试面试文档
我们学习必然是为了找到高薪的工作下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料并且有字节大佬给出了权威的解答刷完这一套面试资料相信大家都能找到满意的工作。