UI自动化】的更多相关文章

去年春节联欢晚会,为了那张“敬业福”,全家都卯足了劲儿“咻一咻”,连节目都顾不上看了.当时我就想,要是能自动化该多好,不停点击屏幕,屏幕不疼手还疼呢,何况还不好分心,生怕错过了“敬业福”.玩“咻一咻”,是靠不停点击按钮来检查是否得到“敬业福”,而工作中的UI自动化,大抵也和“咻一咻”差不多,都是通过不断地输入,验证系统的输出是否正确.然而做UI自动化,效果并不好,收益低就算了,执行速度还慢.比如打开一个浏览器,可能就要等3-5秒,如果等浏览器访问网址,返回网页内容,就需要更长的时间.要是遇到问题…
◆版权声明:本文出自胖喵~的博客,转载必须注明出处. 转载请注明出处:http://www.cnblogs.com/by-dream/p/5993622.html 关于UI自动化的抱怨 听过不少人这样讲 "UI自动化非常不稳定,需求一改,界面一遍,全部都费了".我相信做过的人可能也会有同感.既然这个问题一直都是存在的,那么为什么没有人仔细分析原因呢? 我的老板george曾举了这样一个例子:每当需求变化的时候,开发没有跳起来,反而是测试跳了起来.然后不断的抱怨,界面元素全都改了,我的自…
@作者 彭海波 转载请注明出处 前言 由于需求的快速迭代和敏捷测试的要求,在测试过程中引入自动化成为必不可少的手段.作为一个互联网测试团队,我们自然也引入了自动化测试这个环节.在众多的测试框架中,我们选取了相对成熟稳定,支持多种平台的Appium框架.虽然Appium自身的Api能解决大多数的测试场景,但总有漏网之鱼.不巧,就是这些漏网之鱼往往成为我们自动化实施中的那些梗.本文主要介绍我们测试团队在Appium UI自动化实施过程遇到的梗,以及对应的解决方法. 自动化测试 Appium自动化框架…
人类文明发展的一个重要标识是工具的诞生,当人类开始制作工具来提高生产力时,就逐渐拉开了与其他生物的距离.曾在2013年,<Google如何测试软件>中提到的分层自动化金字塔,轰动业界.而在互联网时代的今天,标识着测试技术重要进步的产物——自动化工具,也在逐渐推陈出新地用各种工具拉开企业间的差距. 图解: Unit代表单元测试,Service代表服务集成测试,UI代表页面级的系统测试:其中UI自动化,以其高度模拟用户真实场景的测试方式,备受广大测试人员的关注.但其高投入低产出的性价比,却让维护人…
1. 启动浏览器 前边有详细介绍启动三种浏览器的方式(IE.Chrome.Firefox): private WebDriver driver = null; private String chromeDriverDir = "D:\\workspace\\A_Test\\resource\\chromedriver.exe"; /** * 打开谷歌浏览器: */ public void openChromeBrowser(){ System.setProperty("web…
移动UI自动化,看起来美好,践行起来却难.做个目光短见的务实主义者.Page Objects Pattern是Selenium官方推崇的方式,最近研究写测试用例最佳实践之Page Objects,同时结合Appium的Java Client简单介绍下如何写出靠谱的Page Object. Page Objects Page Object定义为抽象web app页面的一系列对象,通过对页面功能的封装,它得到了很多好处: 减少重复代码 提高测试代码的可读性和稳定性 测试代码易于维护 一个简单的例子…
原文:WPF界面设计技巧(9)-使用UI自动化布局 最近一直没时间更新这系列文章,因为我一直在埋头编写我的第一个WPF应用程序:MailMail 今天开始编写附属的加密/解密工具,对UI自动化布局有些心得,就此分享出来. 我们先来看一下实现的效果: 这样的界面是怎么个自动法呢?请看下图: 就是说界面在适度的伸缩时,不会破坏其布局结构及美观性. 这样做有什么好处呢?你可以想象以下情况: 1.需要用户或通过程序控制变更窗体尺寸以适应特殊要求时.UI自动化可以伸缩各元素以适应变化后的窗体. 2. 软件…
之前一个项目的特殊性, 以及一些操作权限上的问题,不能使用现有工具进行UI自动化. 在一些资深tester建议下决定采用Python的pywinauto模块来处理Windows控件的UI操作. 1. 首先搭建pywinauto环境. 1). 可以参考vncdotool - A command line VNC client 安装python2.7.5, Twisted 和PIL. 2). 安装elementtree(elementtree-1.2.7-20070827-preview.win32…
前一段时间帮助团队搭建了UI自动化环境,这里将Jenkins环境的一些配置分享给大家. 背景: 团队下半年的目标之一是实现自动化测试,这里要吐槽一下,之前开发的测试平台了,最初的目的是用来做接口自动化测试和性能测试,但由于各种原因,接口自动化测试那部分功能整个废弃掉了,其中和易用性有很大关系,另外,也和我们公司的接口业务也有关.不过性能测试功能开发同学用的很欢快,还有接口的管理,目前是连接前端与后端的重要桥梁.目前又加入了环境管理(我公司主要用docker创建开发和测试环境),最近又加入了需求管…
本文来讲一下ui自动化的环境搭建,以及最初级的打开网页操作 说起ui自动化,想想大概是前年的时候我开始接触和学习的吧,怎么说呢无论是pc还是app,ios还是android,确实很神奇而且很华丽,但是成本很高,华而不实,对于测试而言恐怕编写成本和维护成本很高,但是收益比较有限,较为适合大公司吧,小公司建议谨慎使用,进入小公司做ui自动化的人也要注意,很难出成绩而且容易被开除,一般的出现了ui问题,往往客户会比你更快发现,我为了实现ui自动化用了失败重跑,连续错误才报错,邮件,关键字驱动等等总算是…
实战项目 均来源于互联网 测试报告2017年11月29日优化后的测试报告:https://github.com/defnngj/HTMLTestRunner 1.项目概述: 本实战已126邮箱为例子进行了实战,对登录.写邮件.发送邮件.删除邮件.退出登录进行了自动化测试: 测试完成后自动发送测试报告到指定邮箱 目录结构: auto_working目录: report                         ---> 目录用于存放测试报告 test_case                …
1.什么是ui自动化模拟人用代码的方式去操作页面2.为什么要做ui自动化后期迭代的时候,老功能比较多,人工维护成本大这时候考虑引入ui自动化3.什么时候做ui自动化项目稳定,不在修改的某些老功能,为这些老功能提供ui自动化,来提高的效率 4.市面上主流的ui自动化方式 ****** 基于selenium,基于webdriver Selenium3.x,uirecorder 5.from selenium import webdriver生成浏览器服务driver = webdriver.Chro…
1.什么是UI自动化?模拟人用代码的方式去操作页面2.为什么要做UI自动化?后期迭代的时候,老功能比较多,人工维护成本较大,重复性工作较多,这个时候就考虑因为UI自动化3.什么时候做UI自动化?项目稳定,不再修改的某些老功能,为这些老功能提供UI自动化,来提高效率4.市面上主流的ui自动化方式 基于selenium ****** 基于webdriver Selenium3.x5.selenium的介绍selenium是用于测试web应用程序用户界面常用的框架,他是一款用于运行端到端的功能测试的工…
题记: 之前一直用APPium直到用安卓9.0  发现uiautomatorviewer不支持安卓 9.0,点击截屏按钮 一直报错,百度很久解决方法都不可以,偶然间看见有人推荐:uiautomator2 就尝试使用 发现比appium要简单一些: 下面文字主要来自虫师的博客 一.Uiautomator2原理介绍 1.uiautomator2是一个可以使用Python对Android设备进行UI自动化的库.其底层基于Google uiautomator,Google提供的uiautomator库可…
在这里集中了我们在做UI自动化时常见的一些控件操作.希望能对新手有帮助. 下载地址:http://files.cnblogs.com/zhangfei/demo.rar package com.test; import java.util.List; import java.util.Set; import org.openqa.selenium.Alert; import org.openqa.selenium.By; import org.openqa.selenium.Javascript…
一 使用目的 该工具主要是面向游戏UI测试基于图像识别,如游戏框架unity,Cocos-js以及网易内部的游戏框架同时也支持原生Android App 的基于元素识别的UI自动化测试.本文主要使用目的是做安卓原生App的元素UI自动化. 二 资源索引 官方资源 网易游戏新开源的 UI 自动化测试项目 [Airtest Project]Airtest官网Airtest官网上手教程AirtestProject Github主页AirtestIDE官方中文文档Airtest 官方中文文档PocoUI…
在使用了pytest完成了一个系统的UI自动化后,因为系统的前端框架,是 基于VUE写的,这就让我编写脚本的时候踩了些坑. 无法用JS 修改标签属性,从而进行的操作 比如上传图片,我们的上传是这样子的 基于这个情况,我不得不去使用autoit来完成上传的动作,但是,autoit是用来操作windows系统的GUI的, 那么我的脚本,无法在Linux上运行,也无法使用浏览器的headless模式(无头模式). 2.某些详情页,里在控制台里通过JS可以获取到我想要的值,但是代码执行起来就是拿不到…
解决UI自动化难点痛点: 解决从安装过程中跳出的提示框以及操作过程中任意提示框的操作,来提高用例成功率: 公用用例及业务用例分离,便于维护和多人使用,提高脚本编写效率: 解决用android windowmanager设计的控件,任何UI相关工具是无法获取控件操作问题 解决代码逻辑复杂定位控件问题,任何控件都可快速定位: 解决混合app,涉及到webviewUI操作,还得需要重新打包问题: 解决用例失败后,可配置次数,进行重试执行,提高用例得执行率: 解决测试报告粗糙,纯log输出或者配置简单截…
◆版权声明:本文出自胖喵~的博客,转载必须注明出处. 转载请注明出处:http://www.cnblogs.com/by-dream/p/5993622.html 关于UI自动化的抱怨 听过不少人这样讲 “UI自动化非常不稳定,需求一改,界面一遍,全部都费了”.我相信做过的人可能也会有同感.既然这个问题一直都是存在的,那么为什么没有人仔细分析原因呢? 我的老板george曾举了这样一个例子:每当需求变化的时候,开发没有跳起来,反而是测试跳了起来.然后不断的抱怨,界面元素全都改了,我的自动化的用例…
最近在UI自动化时遇到了,上一步成功操作后没有响应的情况(动画加载和浏览器加载导致实际没有问题),导致下一步无法成功操作,所有想在尝试2次操作后再次进行上一步操作解决这种情况导致的错误(其实是不想每一次有问题都要手动加线程沉睡) 1.java应用程序,暂停/开始按钮 import java.awt.Dimension; import java.awt.Toolkit; import java.awt.event.ActionEvent; import java.awt.event.ActionL…
本文来自网易云社区 前言 一直以来,项目迭代的时间都是比较紧张的,开发加班加点coding,测试加班加点提bug.都说"时间像海绵里的水,挤挤总会有的"(当然这里的"挤挤"就是加班喽,哈哈-) 然而,就算再怎么挤,一天就那么24个小时,除了睡觉吃饭,挤出来的时间完成平常的功能测试已经算不错了,很难抽出时间做一些兼容性测试之类的东东.但是,"混吃等死"显然不是我司员工的一派作风,解决问题才是缓解现状.拯救自我的最佳方式.然而,一提到兼容性,就不可避…
 appium的client-----捕获元素和对元素进行操作都是在client里面去写脚本实现的,client会将你写的python脚本发送到appium server上,然后appium server将你写的脚本翻译成手机能读懂的语言,手机执行,执行完成之后将结果返回给appium server,然后appium server 返回结果给client! client可以看作是代码将webdriver协议兼容进来,并且在webdriver协议上进行一些拓展,然后client的代码可以使java…
一 使用目的 该工具主要是面向游戏UI测试基于图像识别,如游戏框架unity,Cocos-js以及网易内部的游戏框架 同时也支持原生Android App 的基于元素识别的UI自动化测试. 本文主要使用目的是做安卓原生App的元素UI自动化. 二 资源索引 官方资源 网易游戏新开源的 UI 自动化测试项目 [Airtest Project] Airtest官网 Airtest官网上手教程 AirtestProject Github主页 AirtestIDE官方中文文档 Airtest 官方中文文…
使用方法基本说明:https://www.cnblogs.com/mliangchen/p/5114149.html,https://blog.csdn.net/Eugene_3972/article/details/76629066 环境准备:https://www.cnblogs.com/keeptheminutes/p/7083816.html 简单实例 1.自动化安装与卸载 :https://my.oschina.net/yangyanxing/blog/498403 2.自动化登录测试…
1. selenium和浏览器 基于selenium的这套自动化体系,其实现关键就在于对于各浏览器的顺畅操作. 事实上当selenium刚开始起家的时候,他使用的还是javascript注入的方式来驱动浏览器操作:而彼时Firefox还是浏览器市场上的王者,他也是selenium最早开始支持的浏览器. selenium3时代一个很明显的改动在于,现在启动Firefox,你需要一个驱动了:也就是geckodriver. 2. 工具准备 接下来准备好浏览器以及相关工具: Firefox客户端:本文使…
1.前言 我大概是在2012年第一次正式接触到自动化测试,那个时候跟随我的团队一起,就当时项目的UI自动化尝试做出了探索. 在我离开那家公司的时候,我们的自动化测试体系仍然难言完美,但是也已经达到了非常高效的程度.我们的测试部门从业务向的纯手工测试团队,也转型为了自动化:手动=2:1的队伍结构. 时至今日,自动化测试的火热程度比起当年又要上升了几个层级,对于测试工程师而言,掌握自动化测试的技术和思路,无疑是个人重要的技术性向道路.因此我准备花一定的篇幅,从新从头开始对于java+selenium…
1.首先接口测试是跳过前端界面对服务端的测试,UI测试是对前端界面的测试,从分层测试的角度考虑,两者不应该是可以互相取代的关系.   2.从公司开展自动化的的角度考虑,可以重点关注这个项目开展接口自动化和UI自动化的分别需要的时间消耗.自动化测试人员成本.项目开展自动化测试的可行性.接口自动化和UI自动化的投入产出比,最终来确定开展接口自动化和UI自动化的比重.   3.从自动化测试覆盖率和难易程度来考虑,一般来说,系统中可测试的接口数量要比前端界面的功能点要少,并且接口的改动频率比前端界面改动…
appium Ui自动化调起微信并点击登录按钮的java代码(对的,就这么一丢丢). public class testWX { public static void main(String[] args) throws Exception { AndroidDriver driver; //DesiredCapabilities 负责启动服务端时的参数设置. DesiredCapabilities cap = new DesiredCapabilities(); cap.setCapabili…
1. 安装jdk:略 检查是否安装:执行命令java -version admindeMacBook-Pro-2:~ $ java -version java version "1.8.0_171" Java(TM) SE Runtime Environment (build 1.8.0_171-b11) Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode)   2.安装git:略 检查是否安装:git --v…
一 .引子 UI自动化,在移动互联网时代的今天,一直都是在各大测试社区最为火爆的一个TOPIC.甚至在测试同行面前一提起自动化,大家就会自然而然的问:“恩,你们是用的什么框架?appium?还是robotium?” 其实在笔者看来,UI自动化是一个ROI较低的测试项(ROI即return on investment,中文意思是投资回报率).但UI自动化相比接口自动化.白盒测试等,它更贴近手工业务测试行为.对于刚起步测试左移.效率提升的团队来说,是最迅速的切入点,也是广大黑盒tester,提升自身…