selenium入门:基于界面的自动化测试

1.录制

打开浏览器-工具,选择selenium ide,进入主界面。

在Base URL框中输入:(参与录制的web地址),刚输入web地址后,默认状态下是“录制状态”,点击一下停止录制。

在火狐浏览器中打开要录制的web地址,输入用户名、密码,点击登录按钮,登录成功后,停止录制。

录制完毕脚本,回放一下,检查情况。

保存录制信息,[文件]-[save test case]。还可以导出为脚本形式

3.脚本编辑与操作

命令编辑、排序(直接拖动排序)、删除、插入注释

(1)编辑命令

(2)执行命令

4. Selenium ide常用命令

(1)open(url)命令:

作用:打开指定的url,url可以为相对或绝对url。

Target:要打开url;value值为空

当target为空,将打开Base URL中填写的页面;

当target不为空且值为相对路径,将打开base url+Target页面。如:假设Base url为  http://www.****.net, 而target为/list.aspx?cid=451 ,则执行open命令时,将打开http://www.****.net/list.aspx?cid=451

当Target以http://开头时,将忽略Base URL,直接打开Target的网址。

(2)Pause(waitTime)

作用:暂停脚本运行

     WaitTime:等待时间,单位为ms;

     (3)goBack()作用:模拟单击浏览器的后退按钮;由于没有参数,所以Target和Value可不填。

   (4)Refresh()作用:刷新当前页;由于没有参数,所以Target和Value可以不填

(5)windowMaximize()作用:将当前的窗口最大化,即设置为全屏显示;由于没有参数,所以Target和Value可以不填

   (6)Click(locator)作用:a.单击一个链接、按钮、复选框或单选按钮;b.如果该单击事件导致新的页面加载,命令将会加上后缀“AndWait”,即“clickAnd Wait”,或“waitForPageToload”命令。

(7)Type(locator,value)作用:a.向指定输入域中输入指定值,也可为下拉框、复选框和单选框按钮赋值。 b.target:元素的定位表达式;Value:要输入的值

(8)Select(selectLocator,optionLocator)作用:a. 模拟人工单击下拉列表框;selectLocator:指向指定选择元素的元素定位器;optionLocator:选项的选择器(默认为标签); b.选项的选择方式两种label和value;label=文本值,基于选项的文本进行匹配(默认方式),如label=three; value=真实值,基于选项的真实值进行匹配,如value=3

(9)Close()作用:a.模拟用户单击窗口上的关闭按钮; b.由于没有参数,所以Target和Value可不填。

5.断言与验证

断言被用于4种模式+5种手段

4种模式如下:

Assert:断言失败时,该测试将终止。

Verify:断言失败时,该测试将继续执行,并将错误记入日志显示屏。也就是说允许此单个验证通过。确保应用程序在正确的页面上。提高脚本的伸缩性。

Waitfor:用于等待某些条件变为真。可用于AJAX应用程序的测试。如果该条件为真,他们将立即成功执行。如果该条件不为真,则将失败并暂停测试。直到超过当前设定的超过时间。一般跟setTimout时间一起用。

Store:定义变量,可以获取页面的相关元素进行判断。

5种手段如下:

Title:获取页面的标题

Value:获取元素的值

Text:获取元素文本信息

Table:获得元素标签

ElementPresnt:获得当前元素

断言常用的有:

assertTitle(检查当前页面的title是否正确)

assertValue(检查输入框的值,单选或复选框的值)

VerifyValue(验证元素的值)

6.添加断言

打开selenium,导入脚本,在要进行自动化测试的浏览器中需要添加断言的文本框-右击,如图:

原文地址:https://www.cnblogs.com/luckerzhang/p/9329237.html

时间: 2024-10-28 15:06:24

selenium入门:基于界面的自动化测试的相关文章

转载 基于Selenium WebDriver的Web应用自动化测试

转载原地址:  https://www.ibm.com/developerworks/cn/web/1306_chenlei_webdriver/ 对于 Web 应用,软件测试人员在日常的测试工作中,需要大量的手动操作来验证某些功能.开发人员在开发过程中,需要访问其应用并且验证其功能是否正常运行,反复调试重复验证.系统维护人员也需要经常访问其应用,以确保系统的正常运行.如上所述的这些操作需要花费大量的时间和人力,如能引入自动化测试代替人工重复操作,将极大地提高团队的生产效率.在本文中,我们将介绍

基于界面自动化测试框架的4个发展阶段

(1)无框架阶段(即简单的录制/回放) 在早期,自动化测试并没有框架这一说,自动化测试只是简单的录制/回放,由工具录制并记录操作的过 程或数据,并形成脚本.通过对脚本的回放重复人工操作的过程.这种模式脚本与数据混合在一起.站在软件开发的角度来看,这种开发耦合度高,我们知道软件工 程的思想,是高内聚低耦合.而简单的录制回放完全违背了这一思想,简单的录制回放,重用性非常低,同时维护成本非常高. (2)数据驱动框架阶段 无框架阶段最大的缺点就是脚本与数据混合在一起.为了解决这一问题,自动化测试框架发展

Robot Framework使用Phantomjs进行无界面UI自动化测试

Robot Framework 是一款关键字驱动的验收自动化测试框架,现在在国内使用的越来越广泛了.一种通用的Web UI自动化测试解决方案是Robot Framework+Selenium2Library (RFS).一般要使用Selenium2Library库,必须配置好浏览器驱动(driver).不然就无法驱动浏览器来执行自动化命令. 浏览器驱动对应表 上表简要说明了不同的浏览器所需要的驱动程序.这里我们重点介绍如何基于rfs+phantomjs进行无界面UI自动化测试. phantomj

Python Selenium入门学习材料整理

Python Selenium入门学习材料整理一.简介及环境搭建1.selenium 介绍:selenium 是一个 web 的自动化测试工具,可以自动打开浏览器执行页面打开.页面内容抓取.页面元素搜索,是相对好上手的网页爬取工具.2.安装selenium:pip install selenium3.安装webdriver:selenium打开网页需要有webdriver来调用浏览器.Firefox:https://github.com/mozilla/geckodriver/releases/

selenium入门

selenium入门(selenium1.元素定位通过id定位元素       如:WebElement ele = By.id("idName"); 通过Name定位元素     如:WebElement ele = By.Name("name"); 2.多国语言切换:ChromeOptions op=new ChromeOptions(); //选择浏览器op.addArguments("--lang=en-US");      // 选择所

基于QTP的自动化测试框架概述

框架稳定后展示给用户的内容有以下几部分,也就是说测试人员需要去关注去维护的部分就可以了,完全不在care代码内容是什么,只需要按照格式填写就OK 1.测试用例执行模拟控制列表(可用其它管理工具代替,这里用成本最低的方式实现不借助已有的专业管理工具) 2.测试用例控制列表 3.测试数据控制列表 基于QTP的自动化测试框架概述,布布扣,bubuko.com

基于APK的自动化测试

Robotium第一个例子(NotePad)中是基于源码的自动化测试,Robotium也可以基于APK进行自动化测试,也就是说你只要有APK文件,没有源代码,也可以进行自动化测试的. 在做基于APK的自动化测试的过程中,需要确保的一点是,被测试的APK必须跟测试项目具有相同的签名,那怎么做才能确保两者拥有相同的签名呢? 第一步,首先将被测APK的签名去掉,然后用debug keystore重新进行签名,Eclipse也是使用debug keystore为默认的keystore为应用签名的,这样就

深度学习入门:基于Python的理论与实现 高清中文版PDF电子版下载附源代码

本书特色1.日本深度学习入门经典畅销书,原版上市不足2年印刷已达100 000册.长期位列日亚"人工智能"类图书榜首,超多五星好评.2.使用Python 3,尽量不依赖外部库或工具,从零创建一个深度学习模型.3.示例代码清晰,源代码可下载,需要的运行环境非常简单.读者可以一边读书一边执行程序,简单易上手.4.使用平实的语言,结合直观的插图和具体的例子,将深度学习的原理掰开揉碎讲解,简明易懂.5.使用计算图介绍复杂的误差反向传播法,非常直观.6.相比AI圣经"花书",

Selenium 入门到精通系列:五

Selenium 入门到精通系列 PS:显式等待.隐式等待.强制等待方法 例子 #!/usr/bin/env python # -*- coding: utf-8 -*- # @Date : 2019-04-23 16:12:33 # @Author : BenLam # @Link : https://www.cnblogs.com/BenLam/ from selenium import webdriver from selenium.webdriver.common.by import B