更多课程 选择中心

软件测试培训
美国上市教育机构

400-111-8989

软件测试培训

软件测试工具介绍之selenium

  • 发布:王平平
  • 来源:51Testing软件测试网
  • 时间:2019-01-29 16:49

工欲善其事,必先利其器!要做好软件测试,提高软件测试效率也是一样的,今天我们就为大家介绍一款名为selenium的工具,希望对大家的测试工作有所帮助。selenium这个可是测试网页的万能神器!

软件测试工具介绍之selenium

1.我们先看一下selenium是什么?

1)它主要提供了网页自动化测试的解决方案,而且是开源的,很多公司都在使用,它的官网:http://docs.seleniumhq.org/

2. Selenium主要的作用

1)通过自动化的方式测试Web中包含的一些应用

2)基于Web的一些重复的令人厌烦的管理任务也可以通过它实现自动化测试。

3)根据自己的需求进行一些客制化的开发。

4)它包含一套工具使web browser 可以实现自动化测试,这个测试是可以跨平台的测试

5)它可以被很多语言控制

3.Selenium支持的浏览器

Selenium与一些比较大的browser供应商是兼容的,这些browser的供应商已经设置了几个步骤目的是使Selenium作为一个browser本地部分。

对比其它的浏览器自动化测试工具和APIs和frameworks它是一个核心的技术。

它支持的Browser如下:Firefox, IE, Safari, Opera, Chrome

它支持的语言如下:C# Java Perl PHP Python Ruby Others

Selenium有一系列的工具可供选择,例如selenium IDE进行录制脚本我们这次主要用的是Selenium Web Driver它可以控制一个浏览器或者本地或远程控制浏览器。

4.Selenium-Web driver API命令和操作

下面介绍一下经常使用的一些API

1.)读取页面

第一件事就是你希望使用web driver来访问一个网页,通常的方法是”get”即:driver. get(“http://www.google.com”)为了避免在页面还未加载完毕就进行某些操作,可以使用Explicit或者Implicit函数进行等待,等页面完全加载完毕,再进行一些动作的进行。

2.)定位Web UI界面的元素(即Web Elements)

每个绑定中的语言都会有”Find Element”和”Find Elements”的方法。第一个方法返回的WebElement对象,否则它会丢出一个异常。后面一个方法返回的是WebElements的列表,如果没有匹配的列表,见返回一个空的列表Find的方法获得一个定位器,或者询问的对象,在web driver中称find为By它的方法如下:

By ID

这是一个最有效率和比较好的定位元素的方法,比较平常的问题是,元素ID的名称不唯一,对于此Page中或者自动产生的ID,此两种情况都被避免。建立一个在html元素的类,是与自动产生ID对比而言是更适合的方法。

element = driver.find_element_by_id("coolestWidgetEvah") or from selenium.webdriver.common.by import by element=driver.find_element(by=By.ID,value="coolestWidgetEvah”)

By Class Name

这里的Class指的是DOM元素的属性。通常状况下很多DOM元素有相同的Class ame因此发现多重的元素变得更有实际的意义,相比发现第一个element而言。

cheeses = driver.find_elements_by_class_name ("cheese")or from selenium.webdriver.common.by import by cheeses = driver.find_elements(By.CLASS_NAME, "cheese")

By Tag Name

返回的是这个元素的DOM标签姓名。

frame = driver.find_element_by_tag_name("iframe")or from selenium.webdriver.common.by import By frame = driver.find_element(By.TAG_NAME, "iframe")

By Name

找到符合name属性的元素

cheese = driver.find_element_by_name("cheese") or from selenium.webdriver.common.by import By cheese = driver.find_element(By.NAME, "cheese")

By Link Text

通过匹配可见的文本来找到Link元素

cheese = driver.find_element_by_link_text("cheese") or from selenium.webdriver.common.by import by cheese = driver.find_element(By.LINK_TEXT, "cheese")

By Partial Link Text

通过部分匹配可见文本来找到link元素

cheese = driver.find_element_by_partial_link_text ("cheese") or from selenium.webdriver.common.by import by cheese = driver.find_element(By.PARTIAL_LINK_TEXT, "cheese")

By CSS

连接姓名使用的定位策略是CSS, 如果Browser不支持CSS则会使用Sizzle.IE6,7和FF3.0目前使用Sizzle。

注意不是所有的Browser都支持CSS,即使是同一个Browser不同的版本也有可能某个版本支持CSS,某个版本不支持CSS。

cheese = driver.find_element_by_css_selector ("#food span.dairy.aged") or from selenium.webdriver.common.by import By cheese = driver.find_element(By.CSS_SELECTOR, "#food span.dairy.aged")

By XPATH

在高层只要有可能Web Driver就会使用Browser本地的XPath能力。在那些本地没有Xpath支持的Browser,我们已经提供了我们自己的执行。这些可能导致一些不期望出现的行为出现。除非你已经了解不同的Xpath引擎有什么不同。

此函数较复杂不建议使用它。只有在实在没有办法了再考虑用这个函数。

感谢您的阅读,以上就是今天为大家分享的软件测试工具之selenium,你认识了吗?记住它,并且要学会使用它,好了,更多软件测试相关的内容尽在达内软件测试培训机构官网,敬请关注!

免责声明:内容和图片源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

预约申请免费试听课

填写下面表单即可预约申请免费试听!怕钱不够?可就业挣钱后再付学费! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

上一篇:需求怎么做?软件测试人员必须清楚!
下一篇:软件测试新领域探索-如何测试AR应用?

日志在快速定位自动化脚本故障中的重要性研究

测试惯例是什么?怎么打破测试惯例?

如何设计登录测试的设计用例?

“用鼠标点点点”的测试,未来还有机会吗?

选择城市和中心
黑龙江省

吉林省

河北省

湖南省

贵州省

云南省

广西省

海南省