12 | 从0到1:你的第一个GUI自动化测试
该思维导图由 AI 生成,仅供参考
构建一个 Selenium 自动化测试用例示例
- 深入了解
- 翻译
- 解释
- 总结
本文深入介绍了如何从零开始构建一个Selenium的GUI自动化测试用例,以及Selenium 1.0和Selenium 2.0的内部实现原理。作者首先分享了一个简单的测试需求,然后以Java代码实现了这个测试用例,并解读了代码中的每个步骤。接着,文章详细解释了Selenium的实现原理,包括Selenium 1.0和Selenium 2.0的工作原理。Selenium 1.0利用JavaScript注入实现自动化操作,而Selenium 2.0则使用浏览器原生的WebDriver实现页面操作。通过图文并茂的方式,清晰地展示了Selenium RC和Selenium WebDriver的执行流程和工作原理。整体来说,本文适合想要了解GUI自动化测试技术和原理的读者阅读,尤其适合对Selenium感兴趣的技术人员。
《软件测试 52 讲》,新⼈⾸单¥68
全部留言(48)
- 最新
- 精选
- Cynthia🌸作者讲述的selenium工作原理,十分清晰有条理。 而其他教你学自动化测试学selenium的文章或者书籍,重点都在操作api上,或者就直接带你分析源码。而很少先把原理讲清楚,导致不少小伙伴学习并应用了很久,还是不够清楚背后的原理。所以也会看到类似的提问:为啥Chrome可以跑的case,Firefox跑不了,为啥webdriver还要一个浏览器装一个? 如果先弄清楚原理,就不会再在这些问题上有疑问。 另外,由于2.0以后webdriver逐渐成为主流,所以个人觉得1.0的原理大概看看有个概念就好了,重点放在2.0上面。
作者回复: 你说的非常对,1.0基本淘汰了,重点是2.0,3.0的核心原理是个2.0一样的👍
2018-07-28231 - 图·美克尔希望能讲一些设计思想,比如我们构建web自动化测试时需要抽象出哪些类比如page oriented的设计,以及为什么这么设计,再就是想了解你们在搭建整个自动化框架的时候是具体使用到哪些模块,比如邮件通知模块以及报告结果模块或者日志模块等等,希望老师能给我们讲解一个业内目前的最佳实践。
作者回复: 你提的建议非常棒,下一篇文章就会讨论这些话题,第一篇只是给出一个最基本的gui用例,让刚入门的同学有个感性的认识
2018-07-2511 - soul值得注意得地方,预先装好浏览器的驱动器,不然会报错 " java.lang.IllegalStateException: The path to the driver executable must be set by the webdriver.chrome.driver system property;大家如果再执行过程中提示如上错误,去这个地址下载即可 https://sites.google.com/a/chromium.org/chromedriver/downloads
作者回复: 不同的浏览器需要下载对应的driver
2018-07-2527 - 阿鼎请问非web应用的传统gui测试用神马?
作者回复: 我个人推荐UFT,也就是以前的qtp,文章中的所讲的所以概念和方法对于非web应用也是完全适应的
2018-07-273 - C一直纠结要不要做gui自动化,我遇到的问题有1.前端ui控件开发不统一,不是统一框架来做的ui设计,维护各模块脚本成本高。2.企业没有做单元测试和接口测试,没有信心做ui自动化测试3.ui界面动一动,ui感觉要维护成本较高。也听过别人说要针对ui框架设计UI自动化测试框架,不知道如何实施(目前还停留在ui脚本层)4.uI自动化能做到什么层度?冒烟是必须的,稳定模块的回归测试能否用ui代替,虽然成本高。
作者回复: 总结的很到位,你说的这些问题我也都遇到过,要做gui自动化测试,这些问题都是不可回避的,后续的文章会介绍一些实践可以在一定程度上规避或者减轻这些问题。
2018-07-253 - 红娟配图很漂亮,颜色丰富的嫩芽。一看心情就很好 言归正传,我比较熟悉python,电脑里装的是selenium 3,待会儿试着写一下用例的case。重点是背后的实现原理。 我的问题是,如果需要了解背后的实现原理,是不是需要了解http网络协议?
作者回复: 不需要了解http网络协议,但是需要了解webdriver的实现原理以及web service的概念
2018-07-253 - Jimmie.Zhou前端修改越来越频繁,到大部分后端api修改较少,通常是新增,所以基于api的自动化测试效果刚加好。
作者回复: 说得很多,对于互联网产品的测试策略往往以api为主,但是前端还是会保留轻量级的自动化来保证最基本功能的回归,同时引入前端的探索式测试以发现更多的潜在问题
2018-07-252 - 涟漪852Selenium的书籍,请老师推荐下(。・ω・。)ノ
作者回复: 推荐官方网站的文档,没必要买书
2018-11-231 - Declan不知道UFT的原理是什么,它有很多元素定位的方式
作者回复: uft支持多动不同的元素定位方式,有些原理类似,比如对象仓库的元素,都是基于属性或者属性的组合,还有一些所谓的低级录制,那就是基于图像识别的,更具体的需要参考uft的官方文档,这块有很多内容
2018-07-271 - 塔矢亮的小螃蟹刚入门自动化测试的小白想问一个很菜鸟的问|・ω・`) 我最近在看虫师的一本自动化测试的书来学习,用的是python+selenium,但是在元素定位这里一直受到了打击,要是定位按钮,链接都没问题,但是定位输入框比如说登录界面的输入框,用了各种办法xpath,css定位都说找不到这个元素,哦,我用的是chrome的插件xpath helper来自动生成xpath,按道理应该是没错的呀,一直非常困惑
作者回复: 建议通过inspector观察需要定位的元素属性,然后再选择你的selector,如果单属性不好定位,也可以考虑使用组合属性
2018-07-261