如果想改变输入框的输入词,则需要不停的复制case,为了减少冗余,可以做一个简单的分层,把搜索流程剥离成一个关键字,然后再不同的case中调用这个关键字,然后传递不同的参数,以进行不同数据在同一流程下测试。
1.创建User Keyword
选中case中所有的脚本,右键选择Extract Keyword。
此时左边区域会出现“登录测试”User Keyword,该User Keyword在测试套件下,一般测试套件不放置User Keyword,建议User Keyword放置在Resource下。
2.创建Resource
创建一个叫做myresource的txt文件,然后在 External Resource中右键点击 Add resource,把myresource文件加进来,之后把User Keyword都放在该目录下面
3.User Keyword入参设置
由于搜索数据可变,将其作为入参,变量用${}表示,在settings的Arguments设置,若是有多个入参,那么用|分隔,如${入参1}|${入参1}
4.导入resource
需要在测试套件中导入Resource,才能使用该Resource下的User Keyword。
在测试套件下的工作区的右方,点击Resource,在弹出框的name栏输入“myresource.txt”,点击OK即可。
当工作区的Resource那一行蓝色显示,说明导入成功(如果显示红色说明导入不成功,可自行百度解决)。
点击F5快捷键查看,可查看多了一个myresource.txt的库。
5.调用自定义关键字登录测试,输入参数,就可执行登录用例。
6.继续分层,之前是完成了操作步骤与用例的分层,现在来做用例--步骤--数据的分层
(1)创建User Keyword
选中Open Browser那一行,右键选择Extract Keyword。
(2)将User Keyword移至ElementResource.txt下,并为该resource导入selenium2library库。
(3)将“打开浏览器”的入参值由“http://www.baidu.com”改为${url}
此时,登录测试中,打开浏览器的入参输入框显示红色,说明必须有一个入参,可以填写“http://www.baidu.com”。
(4)剩余关键字
剩余关键字重复上述操作。
(5)分层思想:
登录测试用例调用登录模板,在用例中输入参数就可
登录方法里调用各个步骤的方法
各个步骤的方法进行参数化
- 打开浏览器
- 账号
- 密码
- 登录按钮
- 等待
- 校验标题
- 关闭浏览器
(6)执行用例,查看log和report