框架(参考web框架)
以实例进行说明:
编写app自动化测试用例的流程:第一步,手工测试(设计用例)
优化方向:更好用;更易懂;维护更方便;更通用;扩展性强。
没有使用PO模式前:
from common.native_page import NativePage
def test_login_failed(app):
"""登录用例
测试用例步骤:
1.启动app
2.点击我的柠檬,id=com.lemon.lemonban:id/navigation_my
3.点击头像登录,id = com.lemon.lemonban:id/fragment_my_lemon_avatar_title
4.输入手机号,id=com.lemon.lemonban:id/et_mobile
5.输入密码,id=com.lemon.lemonban:id/et_password
6.点击登录,id=com.lemon.lemonban:id/btn_login
"""
page = NativePage(app)
# 我的柠檬 首页
locator_my = ('id', 'com.lemon.lemonban:id/navigation_my')
# 我的头像 user
locator_avator = ('id', 'com.lemon.lemonban:id/fragment_my_lemon_avatar_title')
# 手机号 login
locator_mobile = ('id', 'com.lemon.lemonban:id/et_mobile')
# 密码 login
locator_pwd = ('id', 'com.lemon.lemonban:id/et_password')
# 登录按钮 login
locator_btn = ('id', 'com.lemon.lemonban:id/btn_login')
page.touch(locator_my)
page.touch(locator_avator)
page.type(locator_mobile, '111')
page.type(locator_pwd, '123')
page.touch(locator_btn)
# 获取toast信息,断言 login
assert page.get_toast_text() == '手机号码格式不正确'
def test_login_success(app):
"""登录用例
测试用例步骤:
1.启动app
2.点击我的柠檬,id=com.lemon.lemonban:id/navigation_my
3.点击头像登录,id = com.lemon.lemonban:id/fragment_my_lemon_avatar_title