Selenium ruby常用api

Python07

Selenium ruby常用api,第1张

#断言

def assert_true(actual, expect)

expect(actual).to eq(expect)

end

def assert_false(actual, expect)

expect(actual).not_to eq(expect)

end

def assert_include(actual, expect)

expect(actual).to include(expect)

end

def assert_not_include(actual, expect)

expect(actual).not_to include(expect)

end

#关闭当前的tab

Driver.close

#获取浏览器的tab数

Driver.window_handles.length

#根据location来点击元素

Driver.action.move_to_location(location_x, location_y).click.perform

#页面scroll up

Driver.execute_script('window.scrollTo(0,0))

#页面scroll down

Driver.execute_script('window.scrollTo(0,document.body.scrollHeight))

#scroll到特定的元素

Driver.execute_script('arguments[0].scrollintoView(), element)

#获取当前的page的url

Driver.current_url

#获取当前浏览器的title

Driver.title

# switch to特定的frame

Driver.switch_to.frame(target)

#返回到原来的frame

Driver.switch_to.default_content

#删除所有的cookies

Driver.manage.delete_all_cookies

#浏览器返回上一页

Driver.navigate.back

# switch to一个新的tab页:

def switch_to_new_window

current_handle = Driver.window_handle rescue nilDriver.window_handles.each do |handle|next if current_handle == handleDriver.switch_to.window(handle)end

end

#在浏览器创建新的tab页,并且输入URL

current_window_handle =Driver.window handle

before_window_handles =Driver.window handles

Driver.execute_script('window.open())

switch_to_new_window

Driver.navigate.to(new_url)

#浏览器页面刷新

Driver.navigate.refresh

#获取页面元素的,X,Y坐标值

target = Driver.find_element(:id,‘elemeny_id_01')

target.rect.y

target.rect.x

#获取元素的个数

target.size

#获取元素的css

target.css_value(attri)

#获取元素的attribute.target.attribute(attri)

字符串是7种序列类型中的一种。

除了序列的操作函数,比如len()来求字符串长度之外,Python还为字符串提供丰富到可以写个编辑器的API.

首先,下面的查找API都是为了查找位置,或者查一共有几次这样的操作。

如果只是想判断一个字符串是不是另一个字符串的子串的话,使用序列的in运算符就可以了。

例:

原型:str.count(sub[, start[, end]])

字符串的count函数可以数出来有多少次匹配,我们看个例子,有5个ha和3个hei

输出为5和2.

haha只能匹配两次。

再加上扩展参数:

find函数的行为是,如果能找到,则返回在序列中的坐标,如果找不到,则返回-1. rfind是从右向左查找。我们来看例子:

输出值为0和6.

找不到的例子:

输出值都是-1.

完整形式:

index和rindex的功能与find和rfind基本上一致,除了在找不到时会抛出ValueError异常而不是返回-1.

例:

所以我们需要加try...except语句来处理之:

有时候,我们希望做从头匹配或者匹配尾部。这时候就要用到startswith函数和endswith函数。例:

这两个返回值均为True.

如果需要更复杂的匹配,还是需要正则表达式。与Java等语言不同,Python中的正则表达式有专门的模块,字符串的API不负责这个事情。

什么是API,即应用程序编程接口,也就是在网站开发时预先定义的函数,就是常说的开源函数,只不过将一些固定的程序封装在这些函数中,待调用时只需要一个借口引用,方便又简单。就像调用Jquery函数一样。

发送短信API接口在开源代码里面可以查到,可以直接到开源网站查询即可,如图

短息接口跟其他接口有所不同,短信接口是由各地运营商收费才能开通。

所以,接口返回成功不代表接收成功,具体接收状态只能由运营商查询,另外,短信api接口本身不限制发送频率,具体发送频率需要用户自行设置。

参数说明如下图二:

在html文件中写入调用接口,并测试,查看是否调用成果,如图显示成果与失败的返回参数。

第五步:C#接入接口

在C#程序中输入以下代码,调用短信接口;

using System

using System.Collections.Generic

using System.Linq

using System.Text

using System.Net

using System.IO

using Xfrog.Net

using System.Diagnostics

using System.Web

如图:(关于C#程序的创建,不再演示)

第六步:申明调用空间

每个函数都需要事先声明才能调用,所以,在程序开始时,必须声明命名空间

namespace ConsoleAPI

{

}

如图:

第七步:定义请求方法

程序的调用方法一般为Post和Get两种,所以要申明用什么调用,关于Post和Get的区别,本处不作重点介绍。如图:

第八步:创建请求函数

声明请求方式之后,即可创建请求函数,包括发送语言,延时响应等参数,如图:

第九步:请求参数及文本转换

设置相关参数后,将程序编码转换为文字编码,这样接收方才能正常显示文字,否则就是一段代码,行外人是看不懂的,所以,必须将数据流转换为文本对象。代码如图:

第十步:释放资源并测试

写程序调用时,不管是什么程序,在调用完之后一定要释放程序,否则将会一直占用资源,消耗内存。如图: