30
ONETESTCASE RUNEVERYWHERE 谢谢谢 2022/3/16

One Testcase Run Everywhere

Embed Size (px)

Citation preview

ONETESTCASE RUNEVERYWHERE谢列平 2023/4/15

某个产品的 UI测试用例

ARCHITECTURE

Test

Service

Page

Driver

TestData

TestModel

Element

Logging

IMPLEMENTATION – TEST

Test

Service

Page

Driver

TestModel

Element

Logging

TestData

IMPLEMENTATION – TEST

Service + Data +

Assertion

IMPLEMENTATION – SERVICE

Test

Service

Page

Driver

TestData

TestModel

Element

Logging

IMPLEMENTATION – SERVICE

接口

实现

IMPLEMENTATION – PAGE

Test

Service

Page

Driver

TestData

TestModel

Element

Logging

IMPLEMENTATION – PAGE

基于页面的操作,1-N 个元素操作集合

IMPLEMENTATION – DRIVER

Test

Service

Page

Driver

TestData

TestModel

Element

Logging

IMPLEMENTATION – DRIVER

封装各端的驱动,对元素进行操作

IMPLEMENTATION – KEYPOINT - SERVICE加载

IMPLEMENTATION – PACKAGE

IMPLEMENTATION – TEST – SETUP/TEARDOWN

- Service 加载 + Driver 启动- 失败截屏 + Driver 停止

IMPLEMENTATION – ENCAPSULATION – ELEMENT/DATA

根据产品封装数据

根据驱动封装元素

IMPLEMENTATION – CUSTOMIZED LOGGING

不同层次使用不同的日志级别,方便调试并隔离依赖的日志

IMPLEMENTATION – POM – PROPERTY + PROFILE

通过 property的设置激活相应的profile ,生成对应的 config 文件

IMPLEMENTATION – POM – PROPERTY + REPLACER

通过相应property 的值设置日志级别和运行

的用例集

IMPLEMENTATION – SUMMARY

property profile config.property

Maven

DriverConfigLoad Service

testng.xml + log4j2.xmlreplacer

IMPLEMENTATION – BONUS – SONAR INTEGRATION

IMPLEMENTATION – BONUS – TCMS INTEGRATION