今天给大家推荐一款自动化测试工具库:Requestium
1、介绍
Requestium
是一个基于Requests库的Python库,概况来说,它是将 Requests
、Selenium
和 Parsel
的功能合并为一个用于自动化Web操作的集成工具,特别是针对网络数据采集、Web自动化测试等任务提供了极大的便利。它可以让你在一个统一的接口中使用 Requests
的简便性和 Selenium
的强大功能。
2、核心功能和特点
Requestium是一个基于Requests库和Selenium WebDriver的Python库,它提供了一些额外的功能和工具,使得进行Web请求和自动化测试变得更加简单和灵活。
以下是Requestium的一些核心功能和特点:
- 封装了Requests和Selenium:Requestium封装了Requests库和Selenium WebDriver,使得使用这两个库进行Web请求和自动化测试变得更加便捷和灵活。
- 提供了简洁的API:Requestium提供了简洁的API,使得进行HTTP请求和模拟浏览器行为变得更加简单和直观。
- 支持自动化测试:Requestium可以用于进行Web页面的自动化测试,包括模拟用户操作、验证页面内容、处理表单提交等功能。
- 支持多种浏览器:Requestium支持使用Selenium WebDriver来操作多种浏览器,包括Chrome、Firefox、Safari等,使得进行跨浏览器的自动化测试变得更加方便。
- 支持并发请求:Requestium支持并发请求,可以在同一会话中同时发送多个请求,提高了请求的效率。
- 提供了丰富的工具和功能:Requestium提供了丰富的工具和功能,包括Cookie处理、代理设置、User-Agent设置等,使得进行Web请求和自动化测试时更加灵活和便捷。
总的来说,Requestium的核心功能和特点包括封装了Requests和Selenium、提供了简洁的API、支持自动化测试、支持多种浏览器、支持并发请求以及提供了丰富的工具和功能,使得进行Web请求和自动化测试变得更加简单、灵活和高效。
3、安装和使用
项目地址:
https://github.com/tryolabs/requestium
安装:
pip install requestium
示例一 :下面是一个使用Requestium进行简单的Web页面自动化测试的示例。在这个示例中,我们将使用Requestium来模拟登录一个网站,并验证登录成功后的页面内容。
from requestium import Session, Keys
创建一个Requestium会话
s = Session()
访问登录页面
s.driver.get('https://example.com/login')
输入用户名和密码
s.driver.find_element_by_name('username').send_keys('testuser')
s.driver.find_element_by_name('password').send_keys('password123')点击登录按钮
s.driver.find_element_by_css_selector('button[type="submit"]').click()
验证登录成功
welcome_message = s.driver.find_element_by_css_selector('.welcome-message').text
assert '欢迎回来,testuser' in welcome_message关闭会话
s.driver.quit()
这个示例展示了如何使用Requestium来进行简单的Web页面自动化测试,包括页面访问、元素操作和验证。通过Requestium的封装,我们可以更加方便地进行自动化测试,并且可以使用Selenium WebDriver的所有功能。
示例二:以下是一个更为综合的示例,演示了如何使用Requestium来进行Web页面的自动化测试和执行HTTP请求。在这个示例中,我们将使用Requestium来进行以下操作:
- 发送HTTP请求获取页面内容
- 使用Selenium模拟浏览器行为,进行页面元素操作和验证
from requestium import Session, Keys
创建一个Requestium会话
s = Session()
发送HTTP请求获取页面内容
response = s.get('https://www.example.com')
输出页面内容
print(response.text)
使用Selenium模拟浏览器行为
s.driver.get('https://www.example.com')
查找页面元素并进行操作
search_box = s.driver.find_element_by_name('q')
search_box.send_keys('Requestium')
search_box.send_keys(Keys.RETURN)验证搜索结果
search_results = s.driver.find_elements_by_css_selector('.search-result')
assert len(search_results) > 0关闭会话
s.driver.quit()
在这个示例中,我们首先使用Requestium发送HTTP请求获取页面内容,并输出页面内容。接着,我们使用Selenium模拟浏览器行为,访问网站、进行搜索操作,并验证搜索结果。通过这个示例,我们展示了Requestium的综合功能,包括发送HTTP请求和进行Web页面的自动化测试。
如果觉得有用,就请关注、点赞、在看、分享到朋友圈吧!