四川人自己的亲朋棋牌 当前位置:首页>四川人自己的亲朋棋牌>正文

四川人自己的亲朋棋牌

发布时间:2019-02-18

原标题:robotframework自动化系列:新增流程

robotframework自动化系列:新增流程


刚接手项目的时候,要求所有流程在上线之前必须确保正向操作是正确的;这个时候又有新的模块需要测试,所以引入自动化测试是非常有必要的!通过对比,尝试使用RF进行自动化的回归测试。
测试中最常见的操作就是增删改查,所以对于自动化最简单的就是数据模块的增删改查人手进行操作。
这里先看一下web测试中的新增用例的测试点,如图所示
添加/修改测试点
对于一个新增操作,我们这里以账号新增为例进行操作展示,账号新增页面元素显示如图所示
账号新增页面展示
先说明一下,各个元素的定位方法:

输入用户名
[Arguments]    ${username}
Wait Until Element Is Visible    id=username
clear element text    id=username
input text    id=username    ${username}    #账号管理中的用户名和密码共用

输入密码
[Arguments]    ${password}
Wait Until Element Is Visible    id=password
input text    id=password    ${password}    #账号管理中的用户名和密码共用

再次输入密码
input text  id = ppassword  ${ppassword}    

手机号码
[Arguments]    ${phone}
clear element text    id = phone
sleep    5
input text    id = phone    ${phone}    #用户信息共用此定位,账号信息中也共用

邮箱
[Arguments]    ${email}
clear element text    id=email
input text    id=email    ${email}

选择用户组
click element    xpath = .//*[@id="unTbl"]/tbody/tr[1]/td[1]/i

用户所属机构
[Arguments]    ${organization_id}
Comment    select from list    id = organization_id    机构养老一    #账号中的所属机构共用此定位
#随机选择所属机构
${count}    get matching xpath count    .//*[@id="organization_id"]/option
${sale_pattern_temp}    evaluate    random.randint(0,${count}-1)    random
${sale_pattern}    Convert To String    ${sale_pattern_temp}
select from list by index    organization_id    ${sale_pattern}

数据权限
#账号新增中的全选按钮
click element    xpath = .//*[@id="orgs"]/li/input

账号保存
click button    xpath = html/body/div[1]/div/div[2]/form/div[10]/div/button[1]
Comment    click button    xpath = html/body/div[1]/div/div[2]/form/div[10]/div/button[1]
sleep    10

账号名称检查
${account}    get text    xpath=.//*[@id="tb_guardian"]/tbody/tr[1]/td[2]
[Return]    ${account}

而新增账号页面中元素的定位已经确定,接下来就是用例步骤:

用例目的:新建账号-成功

步骤:

  1. 使用管理账号登录系统
  2. 打开新建账号的页面,此处需要使用select window来切换tab到新建账号的页面
  3. 输入符合的用户名、密码、确认密码、手机号码、邮箱、选择用户组、用户所属机构和全部数据权限
  4. 点击保存

断言:

  1. 当前页面的url是否是query的页面
  2. 当前显示的首行账号名称是否和新增的账号名称一致

接下来就是使用RF进行用例的编写~(≧▽≦)/~
根据用例步骤一步步来编写用例,这里将登录和关闭浏览器2个操作封装之后,分别在setup和teardown中进行设置了,如图所示

用例前置操作

账号添加用例代码展示如图

[Documentation]    用例目的:新建账号-成功
...    步骤:
...    1.打开新建账号的页面,此处需要使用select window来切换tab到新建账号的页面
...    2.输入符合的用户名、密码、确认密码、手机号码、邮箱、选择用户组、用户所属机构和全部数据权限
...    3.点击保存
...    断言
...    1.当前页面的url是否是query的页面
...    2.当前显示的首行账号名称是否和新增的账号名称一致
[Setup]    login
打开页面    ${GuardianEdit}
Take Screenshot    guardian
账号跳转
Take Screenshot    guardian
${username}=    gen chars    10
输入用户名    ${username}
输入密码    123456
再次输入密码    123456
${phone}    Evaluate    random.choice(["139","188","185","136","158","151"])+"".join(random.choice("0123456789") for i in range(8))    random
手机号码    ${phone}
邮箱    5645645645656@qq.com
选择用户组
用户所属机构    机构养老一
数据权限
Take Screenshot    guardian
账号保存
sleep    10
#确认显示信息
角色确认
sleep    10
Take Screenshot    guardian
Comment    ${mes}=    Confirm Action
Comment    sleep    10
Comment    Should Be Equal As Strings    ${mes}    保存成功!
Comment    确认保存
Comment    ${Auser}    get text    xpath=.//*[@id="tb_guardian"]/tbody/tr[1]/td[2]    #后期po
#断言当前页面的url
Location Should Be    ${GuardianQuery}
${Auser}    账号名称检查
Should Match    ${Auser}    ${username}    
log    ${username}
log    ${Auser}
[Teardown]    close

代码截图如图所示

新增账号代码截图

这样新增账号成功用例已经完成。而根据web测试点,其他用例设计如图所示

账号用例缩略图

这里整个结构使用了RobotFramework的分层思想:

第一层即用例层,如上图所示

第二层是页面元素封装,如图所示

账号页面元素封装

第三层是元素值的变量集合,如图所示

变量集合

到此,账号新增模块的整个用例设计已经完成(^o^)/~

当前文章:http://neomi.cn/bazipeidui/

发布时间:2019-02-18 00:00:00

31棋牌游戏 沈阳四冲娱网棋牌官网 免费赚钱棋牌兑换现金 四喜娱乐棋牌官网 宝博斗地主网址是多少 送10金币棋牌可提现金 金德胜棋牌官网 联众世界下载 沈阳娱网棋牌手机下载安装 长鸿433棋牌原778

39814 72135 33428 39505 56032 6863351411 96604 12889

责任编辑:建顺公杜

随机推荐