Skip to main content
Join the official 2019 Python Developers SurveyStart the survey!

QTA driver for Web

Project description

QT4W

Build Status PyPi version GitHub tag

QT4W (Quick Test for Web) is a QTA test automation driver for Web.

Features

  • Android platform: support web automated testing based on webkit, X5 (used with QT4A).
  • IOS platform: Support Web automation testing for embedded pages of IOS applications and browser applications (used with QT4I).
  • Windows platform: Supports web automation based on Chrome, IE kernel (used with QT4C), Now QT4C is in the open source process.

QT4W consists of three modules: WebView, webDriver, and WebControl module.

WebView

WebView is an abstraction of the browser window, which is a re-encapsulation of the native control. QT4W only defines the relevant interface of WebView, but does not give a concrete implementation. QT4X provides some implementations of WebView on each side. For example, QT4C provides implementations such as IeWebView and ChromeWebView. Following is the list of supported WebView.

WebView Platform/OS Description Provider
IE Windows IE browser or embedded IE window, supporting version from 7 to 11 Provided by QT4C
Chrome Windows Chrome browser or embedded Webkit window Provided by QT4C
TBS Windows QQ browser or embedded QQ browser window Provided by QT4C
CEF Windows Chromium embedded window Provided by QT4C
Chrome Linux Chrome headless browser Provided by chrome-headless-browser
AndroidBuildin Android build-in browser and embedded Web window on Android Provided by QT4A
X5 Android QQ browser or embedded QQ browser(X5) window Provided by QT4A
XWalk Android embedded XWalk window Provided by AndroidWXMPLib
iOSBuildin iOS build-in browser and embedded Web window on iOS Provided by QT4i
WeChat Mini Program WeChat/Android WeChat Mini Program Provided by AndroidWXMPLib
Chrome MacOS Chrome browser or embedded Webkit window Provided by QT4Mac

WebDriver

WebDriver is the driver layer of web automation. This module is mainly used to handle Dom structure related operations, such as finding web elements. Implementation of WebDriver mostly involved with Browser engine.

Following is the list of supported WebDriver.

WebDriver 说明 相关实现代码
IE IE Trident engine Provided by QT4W
Webkit Webkit engine Provided by QT4W

WebControl

The WebControl module defines the WebElement and WebPage interfaces and provides implementations. In addition, QT4W also encapsulates other common web elements that are used to encapsulate pages for web automation.Webelement and WebPage usage refer to usage documentation。

Usage scenarios and installation

QT4W can be used for web applications or embedded page automation, which cannot be used independently and needs to be used in conjunction with other native layer automation frameworks:

  • Android: use and installation, please refer to QT4A Document.
  • iOS: use and install, please refer to QT4i document.
  • Windows: use and install, please refer to QT4C document

links


QT4W(Quick Test for Web)是QTA测试体系中的一环,主要用于Web自动化测试。

支持多种平台的Web自动化

  • Android平台:支持基于webkit,X5等内核Web自动化测试(和QT4A一起使用)。
  • IOS平台:支持IOS应用的内嵌页面及浏览器应用的Web自动化测试(和QT4I一起使用。
  • Windows平台:支持基于Chrome,IE内核的Web自动化测试(和QT4C一起使用),目前QT4C正在开源流程中。

QT4W是QTA测试体系中Web自动化测试的基础, 包含三个模块:WebView、webDriver以及WebControl模块。

WebView

WebView是对浏览器窗口的抽象,是对原生控件的再次封装。QT4W只是定义了WebView的相关接口,并未给出具体实现。QT4X各端提供了部分WebView的实现,例如QT4C中提供IeWebView、ChromeWebView等实现。 目前QT4W支持的WebView有:

WebView 平台或操作系统 说明 相关实现代码
IE Windows IE浏览器和内嵌页面使用,支持IE 7~11 由QT4C提供
Chrome Windows Chrome浏览器和内嵌页面使用 由QT4C提供
TBS Windows QQ浏览器和相关内嵌页面使用 由QT4C提供
CEF Windows Chromium内嵌页面使用 由QT4C提供
Chrome Linux Linux下的Headless模式的Chrome浏览器使用 由chrome-headless-browser提供
AndroidBuildin Android Android系统内置浏览器和内嵌页面使用 QT4A提供
X5 Android QQ移动浏览器和X5内核内嵌页面使用 QT4A提供
XWalk Android XWalk内核内嵌页面使用 AndroidWXMPLib提供
iOSBuildin iOS iOS系统内置浏览器和内嵌页面使用 QT4i提供
微信小程序 Android微信 微信小程序使用 AndroidWXMPLib提供
Chrome MacOS Mac OS下的Chrome浏览器和内嵌页面使用 由QT4Mac提供

如需要扩展新的WebView类型,请参考WebView封装文档

WebDriver

WebDriver是Web自动化中驱动层的封装,该模块主要用来处理DOM结构相关操作,例如查找web元素等,一般是浏览器内核相关。

目前QT4W支持的WebDriver有:

WebDriver 说明 相关实现代码
IE IE内核使用 QT4W内置
Webkit Webkit内核使用 QT4W内置

如需要扩展新的WebDriver请参考WebDriver封装文档

WebControl

WebControl模块定义WebElement以及WebPage的接口,并且给出了相关实现。此外,QT4W还封装了其他的常用Web元素,使用该模块来封装Web自动化时的页面。

使用场景及安装

QT4W可用于各个端上的Web应用或者Native应用内嵌Web页面的自动化,其不能独立使用以及需要结合其他Native层的自动化框架一起使用:

  • Android端的使用及安装,请参考QT4A文档
  • iOS端的使用及安装,请参考QT4i文档
  • Windows端的使用及安装,请参考QT4C文档

链接


欢迎加入QQ群(432699528)交流使用和反馈

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for qt4w, version 2.0.66
Filename, size File type Python version Upload date Hashes
Filename, size qt4w-2.0.66.tar.gz (47.2 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page