如题~目前公司有个预研项目,web 这块是作为 App 的后台运营管理系统。
因为项目时间比较宽松,整个系统也比较简单,所以考虑把自动化这块做起来。
不过项目组之前没有自动化的经验,测试部门这边五个人,具备一定编程能力的就我一个。
目前的情况:
通过 Page Object 的模式,对每个功能页面构建对应的 page Object,如以下代码所示

class Login_page(App_page_object):
    def __init__(self,selenium_driver,root_url,login_url):
        super(Login_page,self).__init__(selenium_driver,root_url,login_url)
        self.url = 'login!doNotNeedSession_index.do'
        self.account_box = {'id':'cname'}
        self.password_box = {'id':'cpwd'}
        self.confirmCode_box = {'id':'confirmCode'}
        self.remenber = {'class':'checkbox'}
        self.button = {'class':'signup'}
        self.alert_msg = {'id':'myModalErrorMsg'}
        self.translate = {u'登录账号':self.account_box, u'密码':self.password_box, u'验证码':self.confirmCode_box,
                          u'记住密码':self.remenber, u'立即登录':self.button,u'提示':self.alert_msg}

对应的测试用例形式如以下所示:考虑到编写和管理方便都是在 Excel 表里边

进入 登录页面
点击 登录账号
输入 zh_app_admin
点击 密码
输入 1234567
点击 验证码
输入 1234
点击 立即登录
检查 提示=用户名或密码错误

执行测试时,通过解析函数提取每步操作方式和操作对象,依次执行测试步骤并在最后进行指定的检查,每步操作完成后,会进行截图。

昨天自己尝试写了一些用例,感觉这种方式还是太死板,目前的疑惑主要是如何比较好的进行数据驱动,把用例和数据分离开来,希望大家提供宝贵建议!


↙↙↙阅读原文可查看相关链接,并与作者交流