selenium---POM模式,unittest框架

一.POM模式

POM结构:

项目名称文件:

common文件夹:
base.py文件:对selenium二次封装:
1.打开浏览器
2.打开地址
3.元素定位
4.元素操作

page文件夹:
1.对项目每个页面封装

2.page文件夹:将页面分为三层
表现层:页面中可见的元素
操作层:对可见元素的操作
业务层:由操作层组合形成场景/业务

3.page类:
编写内容:
①封装表现层:制作定位器
②封装操作层:对定位器中各个元素操作,将操作形成方法
③page类继承Base

script文件夹:
存放测试用例,使用unittest管理用例
1.只关注操作步骤,如果涉及到测试数据,暂时写成死数据
2.确定断言
3.关注测试数据灵活性

二.unittest框架

1.作用:
规范自动化测试用例编写
管理自动化测试用例的执行

2.基本概念
测试夹具:test fixture 处理测试前的数据准备和测试后的数据清理
测试套件:test suite 批量收集需要执行的测试用例
测试用例:test case 核心部分,编写的测试用例符合unittest框架的要求
测试执行:test runner 执行测试套件收集的测试用例

3.特殊方法
setUp:在一个py文件,在测试用例执行之前先执行,有多少测试用例,执行多少次
tearDown:在一个py文件中,在测试用例执行之后再执行,有多少测试用例,执行多少次
setUpClass:在一个py文件中,在测试类执行之前先执行,需要@classmethod装饰
tearDownClass:在一个py文件中,在测试类执行之后再执行,需要@classmethod装饰

4.用例编写注意事项
①测试用例文件名称以test开头
②测试用例类名称Tset开头
③测试用例方法名称test开头
④测试用例的执行顺序:对用例名称按照ASCII字符集排序

5.断言
语法:

assertEqual(a,b,msg="当断言失败时输出")
#判断a和b是否相等,如果相等则断言成功,反之断言失败-->用例执行失败
assertTrue(x,msg="当断言失败时输出")
#当条件x为True时.断言成功,反之断言失败-->用例执行失败

断言的添加位置:在测试用例中添加

注意:
断言来说,只有失败的断言才会有提示
断言失败的关键字:AssertionError,表示用例执行失败,不是代码错误

5.测试套件&测试执行
①测试套件:

unittest.defaultTestLoader

举例

#1.导入
import unittest
#2.添加测试用例存放的路径
case_dir="F:\pythoncode\自动化-上课代码\\20200213\ECshop\script"
#3.将需要执行的测试用例添加到测试套件中
#将script文件夹中的所有测试用例加入到测试套件中
discover=unittest.defaultTestLoader.discover(case_dir)
#4.执行测试用例
runner=unittest.TextTestRunner()
runner.run(discover)

②测试执行

unittest
  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值