UI自动化框架说明
`本帖的ui自动化框架,取材于github上某个湖南老乡的框架;结构清晰,遵循PO模式,通过逻辑层-处理层-用例配置整个结构结构清晰明了;实现了处理逻辑和数据分离;有利于平台化`
___ 大纲 ___
1 2 3 4
| 框架的整体结构 代码模块的结构,文件说明 框架的执行过程 框架优化/改动以适应我们产品
|
___ 框架整体结构 ___
框架整体构成由五部分构成;分别是runner(入口)/TestCase(控制层)/PageObject(逻辑层)/日志文件/yaml配置模块/报告模块
___ runner(入口) ___
android入口程序文件:Runner/runner.py ios入口程序文件:Runner/runner.py
__ 入口程序代码review __
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
| if __name__ == '__main__':
kill_adb() devicess = AndroidDebugBridge().attached_devices() if len(devicess) > 0: mk_file() l_devices = [] for dev in devicess: app = {} app["devices"] = dev init(dev) app["port"] = str(random.randint(4700, 4900)) app["bport"] = str(random.randint(4700, 4900)) app["systemPort"] = str(random.randint(4700, 4900)) app["app"] = PATH("../app/com.ximalaya.ting.android.apk") l_devices.append(app) appium_server = AppiumServer(l_devices) appium_server.start_server() runnerPool(l_devices) writeExcel() appium_server.stop_server(l_devices) else: print("没有可用的安卓设备")
|