• macaca 测试web(2)


     还是以博客园登录为例, 可以查看上一篇上一篇      

    这次只测试登录,使用ddt的数据驱动,这里我博客也有记录   地址

    其实我在uiautomator +python 实现安卓自动化 一文当中我已经使用过ddt数据驱动进行编写测试用例,那么我们来看下测试代码

    import unittest
    from macaca import WebDriver
    import time
    import BSTestRunner
    import ddt
    login_data=[
    {'username':'北漂的','password':'li1213456','id':'tip_btn','assert':'该用户不存在'},
    {'username':'','password':'li123456','id':'tip_input1','assert':'请输入登录用户名'},
    {'username':'','password':'','id':'tip_input1','assert':'请输入登录用户名'},
    {'username':'','password':'li123456','id':'tip_input1','assert':'请输入登录用户名'},
    {'username':'北漂的雷子','password':'li123456','id':'tip_btn','assert':'用户名或密码错误'},
    {'username':'北漂的雷子','password':'','id':'tip_input2','assert':'请输入密码'},
    {'username':'北漂的雷子','password':'####','id':'feed_recent','assert':'最新动态'},]
    die_arp={
        'platformName':'Desktop',
        'browserName':'electron'
    }
    server_url={
        'hostname':'localhost',
        'post':3456
    }
    @ddt.ddt
    class BokeyuanTest(unittest.TestCase):
        def setUp(self):
            self.deriver=WebDriver(die_arp,server_url)
            self.deriver.init()
            self.deriver.get('https://passport.cnblogs.com/user/signin')
        def tearDown(self):
            self.deriver.quit()
        @ddt.data(*login_data)
        def test_login(self,login_data):
            self.deriver.element_by_id('input1').send_keys(login_data['username'])
            self.deriver.element_by_id('input2').send_keys(login_data['password'])
            self.deriver.element_by_id('signin').click()
            time.sleep(1)
            self.assertTrue(self.deriver.element_by_id(login_data['id']).text,login_data['assert'])
    if __name__ == '__main__':
        suite = unittest.TestSuite()
        now = time.strftime('%Y-%m%d', time.localtime(time.time()))
        report_dir = r'%s.html' % now
        suite.addTests(unittest.TestLoader().loadTestsFromTestCase(BokeyuanTest))
        re_open = open(report_dir, 'wb')
        runner = BSTestRunner.BSTestRunner(stream=re_open, title='demo by macaca', description='测试结果')
        runner.run(suite)
    

     由于牵涉到个人博客的内容,部分已经屏蔽,那么我来看卡执行结果

    看下测试报告

    实践感觉:Macaca 运行速度就是快,不到一分钟,7个测试用例,不是一般的快,目前定位的地方还是写死的需要在后期修改,在之后的篇章当中会有介绍。

     

  • 相关阅读:
    NO12 useradd-passwd-uname-hostname命令-上传rz下载sz-批量部署- Linux用户相关操作
    NO11 SSH故障排查思路和netstat命令
    NO10 查看Linux操作系统-版本-内核-Linux分区
    NO9 Linux快捷键整理及最常用命令
    NO8 find结合sed查找替换企业案例多方法精讲&命令总结!
    NO7 利用三剑客awk-grep-sed-head-tail等7种方法实践
    python 对比图片相似度
    MonkeyRunner 实现自动点击截屏后与本地图库进行对比输出
    monkeyrunner对比屏幕局部图像.getSubImage()
    锤子便签的 monkeyrunner 测试脚本(转)
  • 原文地址:https://www.cnblogs.com/leiziv5/p/7484285.html
Copyright © 2020-2023  润新知