QTA是什么
QTA是一个跨平台的测试自动化工具,适用于后台、原生或混合型客户端应用的测试。在腾讯内部,QTA是腾讯元老级的自动化测试项目,从研发至今已走过8个年头, 工具的能力也从一开始仅支持Windows端的UI自动化测试,现在扩展到Android、iOS、Web、后台、云服务的测试自动化。QTA也是腾讯内部使用最为广泛的自动化测试框架,包括PCQQ、手机QQ、空间、音乐、腾讯云等产品测试的自动化,目前都是使用QTA的方案。
·QTAF(QTA Framework):
https://github.com/Tencent/QTAF
·QT4A(Quick Test for Android):
https://github.com/Tencent/QT4a
·QT4i(Quick Test for iOS):
https://github.com/Tencent/QT4a
QTAF (QTA Framework)是QTA的基础框架,包括testbase和tuia模块,QT4A和QT4i分别是面向Android和iOS的UI测试自动化测试解决方案。
QTA的优势
UI自动化的ROI问题这一业界共识的难题——除了可测性,UI测试自动化工具本身设计和使用本身也十分有挑战,许多同行因为这些问题,放弃了或抵触使用UI自动化测试。
QTA团队在腾讯内部积累了丰富的实践经验,在众多明星业务团队的建设和运营下,形成了可持续执行的自动化测试流程,包括QQ、QQ空间、音视频SDK、Now直播、企鹅电竞、腾讯视频、腾讯云等产品项目。
AndroidQQ系统测试用例数有1000+,每天通过率基本稳定在90%以上,同时每天CI自动触发BVT测试,产品无功能bug情况下,通过率基本为100%。除此之外,还有其他上线前验证测试,Android QQ会员项目每天执行任务约为270个,大部分任务都在10min内执行完成。
iOS QQ功能测试用例数有200+,每天日常执行用例数600+,其中,每天CI自动触发BVT测试,在产品无bug的情况下,通过率保证在95%以上。iOS QQ会员项目全部用例数300+,每天日常执行用例数500+,大部分任务都在30min内执行完成,平均每个任务需要约10个执行机节点的支持。
QTA在腾讯内部广泛应用,也积累了不少经验和成果,QTA团队也希望这次开源的更新,能向业界分享自动化测试的方法论和实践经验;以这次开源为基础,和业界同行一起分享和共同建设一个能在工程上真正落地使用的UI自动化测试工具。
QTA团队由于职能定位的原因,对开源项目的参与力度不够。这次,腾讯公司组织架构调整,QTA团队成为新成立云与智慧产业事业群(CSIG)的一份子,后续QTA会以腾讯云为基础,助力产业互联网的客户,为QTA开源带来新的活力。
·QTAF新增资源管理模块、测试计划功能,让QTA框架能更方便的和其他测试执行系统集成;
·QT4A支持了非root的版本,支持Android6以上的系统,支持64位App;
·QT4A优化了截屏效率,同时新增屏幕录制的功能;
·QT4i优化模拟器Agent启动方式,以及支持最新的iOS12和XCode10;
·QT4A和QT4i支持pip安装,简化安装部署;
·QT4A和QT4i完善了使用和设计文档。