本回答以ECShop前台应用中用户注册、用户登陆、商品搜索等功能为例介绍测试用例设计活动。
1 用户注册
用户注册功能需求如图1所示。
图1用户注册需求
用户注册需求共涉及4个输入项和1个选择项。针对于输入项,利用等价类及边界值用例设计方法进行设计,选择项则无须设计在步骤中,在测试执行时分别执行勾选与不勾选即可。
01.用户名
用户名共有三个条件:必填、不少于3个字符、不能重复,分别构造有效等价类及无效等价类,具体如表4-1所示。
敏捷测试用例根据实际测试需要,不一定写的非常细致,如“用户名”包含字符类型,此处无须再划分纯字母、纯汉字、特殊符号等,构造数据时可混搭。
02.email
email有两个条件:必填、符合规定格式,分别构造有效等价类及无效等价类,如表4- 2所示。
03.密码
密码有两个条件:必填、不少于6个字符,分别构造有效等价类及无效等价类,如表4- 3所示。
04.确认密码
确认密码有两个条件:必填、与密码一致,分别构造有效等价类及无效等价类,如表4- 4所示。
测试工程师利用禅道设计用例,如图4- 5所示。
图4- 5用户注册功能测试用例
2 .用户登录
用户登陆需求如图4- 6所示。
图4- 6用户登陆需求
用户登陆共有三个字段:用户名、密码、保存登陆信息,其中用户名、密码为输入框,保存登陆信息为选择框。因该需求比较简单,故无须分析过程,直接进行用例设计,如图4- 7所示。
图4- 7用户登陆功能测试用例
3. 商品搜索
商品搜索需求如图4- 8所示。
图4- 8商品搜索需求
通过需求分析,商品搜索功能较为简单,测试用例设计时只需考虑一个搜索条件的测试,测试工程师从搜索功能开发角度考虑。
对于系统而言,如果数据库中存在某个关键字的商品,则应该显示,否则应当提示没有匹配的商品,故搜索用例设计不需要使用复杂的用例设计方法,测试工程师只需根据经验设计用例即可。
对于显示方式,存在显示方式、排序条件、排序方式三种,显示方式又分为小图列表、大图列表、文字,排序条件有按上架时间、按价格、按更新时间,排序方式有升序与降序,如果完全组合则有3*3*2=18种组合,测试工程师可利用正交试验用例设计方法进行设计。
通过分析,共有3个参数,每个参数分别有3、3、2个取值,因此需选择因子数、水平数都3,且试验次数最少的正交表。查询正交表,4因子3水平正交表符合条件,如表4- 5所示。
替换参数,得到表4- 6。
多余因子4舍弃不用,排序方式中的3,可使用升序或降序任意填充,由于4因子3水平表中没有全部取2与3的情况,因此根据经验再补充两条,最终得到表4- 7所示的正交表。
表4- 7优化后的商品显示测试组合
结合搜索条件,利用禅道设计用例如图4- 9所示。
图4- 9商品搜索功能测试用例
通过上述过程,测试工程师完成测试用例的设计工作,评审通过后等待测试版本发布,然后进行测试用例执行、跟踪处理缺陷等活动。
软件测试一般都是大公司装x的,那样显得他们专业,其实一般小公司都不用软件测试,简单介绍一下就是:单独写一个程序来测试准备上线的程序代码的健壮性和检测有无bug。
简单例子:
//准备上线的函数
void look(){
printf("我会看");
}
//look测试函数
void testLook(){
look();//测试look
}