用python写一个接口自动化的demo脚本
时间: 2024-05-13 14:20:47 浏览: 211
以下是一个简单的接口自动化示例脚本,使用Python编写:
```python
import requests
# 接口地址
url = "https://jsonplaceholder.typicode.com/posts"
# 请求头信息
headers = {
'Content-Type': 'application/json'
}
# 请求体信息
data = {
"title": "foo",
"body": "bar",
"userId": 1
}
# 发送POST请求
response = requests.post(url, headers=headers, json=data)
# 打印响应信息
print(response.status_code)
print(response.json())
```
这个脚本使用了requests库来发送POST请求,向一个示例接口地址发送了请求体数据,并打印出了响应状态码和响应信息。可以根据实际需求修改接口地址、请求头和请求体信息。
相关问题
python自动化测试demo
好的,以下是一个简单的Python自动化测试demo,使用了unittest测试框架和Selenium WebDriver。
假设我们要测试一个简单的登录页面,包括用户名、密码和登录按钮。我们需要编写一个测试脚本,使用Selenium WebDriver进行自动化测试,并使用unittest框架进行测试管理和报告生成。
首先,我们需要安装Selenium WebDriver和unittest框架,以及引入它们的库:
```python
import unittest
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
```
然后,我们可以编写一个测试类,继承unittest.TestCase类,并在其中编写测试方法。例如,我们可以编写一个测试登录的方法:
```python
class TestLogin(unittest.TestCase):
def setUp(self):
self.driver = webdriver.Chrome()
self.driver.get("http://example.com/login")
def test_login(self):
user = self.driver.find_element_by_name("username")
user.send_keys("myusername")
password = self.driver.find_element_by_name("password")
password.send_keys("mypassword")
login_button = self.driver.find_element_by_xpath("//button[@type='submit']")
login_button.click()
welcome_message = self.driver.find_element_by_xpath("//div[@class='welcome-message']")
self.assertEqual(welcome_message.text, "Welcome, myusername!")
def tearDown(self):
self.driver.quit()
```
在测试方法中,我们首先打开浏览器并访问登录页面,然后输入用户名和密码并单击登录按钮。最后,我们检查是否出现了欢迎消息,并使用self.assertEqual方法进行断言。
最后,我们可以编写一个测试运行器,使用unittest.TestLoader和unittest.TextTestRunner运行测试并生成测试报告:
```python
if __name__ == '__main__':
loader = unittest.TestLoader()
suite = loader.loadTestsFromTestCase(TestLogin)
runner = unittest.TextTestRunner(verbosity=2)
runner.run(suite)
```
完整的测试脚本如下所示:
```python
import unittest
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
class TestLogin(unittest.TestCase):
def setUp(self):
self.driver = webdriver.Chrome()
self.driver.get("http://example.com/login")
def test_login(self):
user = self.driver.find_element_by_name("username")
user.send_keys("myusername")
password = self.driver.find_element_by_name("password")
password.send_keys("mypassword")
login_button = self.driver.find_element_by_xpath("//button[@type='submit']")
login_button.click()
welcome_message = self.driver.find_element_by_xpath("//div[@class='welcome-message']")
self.assertEqual(welcome_message.text, "Welcome, myusername!")
def tearDown(self):
self.driver.quit()
if __name__ == '__main__':
loader = unittest.TestLoader()
suite = loader.loadTestsFromTestCase(TestLogin)
runner = unittest.TextTestRunner(verbosity=2)
runner.run(suite)
```
这是一个简单的Python自动化测试demo,可以帮助您入门。当然,在实际项目中,您需要编写更复杂的测试脚本,并使用更多的Selenium和unittest功能来测试不同的场景和功能。
python使用pytest框架编写测试自动化脚本怎么编写
编写 Python 测试自动化脚本需要几个基本步骤:
1. 安装 pytest 模块:
```python
pip install pytest
```
2. 创建测试文件和测试函数。
在测试文件中定义测试函数,使用 pytest 提供的断言方法进行结果的校验。测试函数需要以 test_ 开头,这样 pytest 才能识别它。
```python
# test_demo.py
def test_addition():
assert 1 + 1 == 2
```
3. 运行测试脚本。
在命令行中进入测试文件所在目录,执行以下命令即可运行测试脚本:
```python
pytest
```
pytest 会自动查找以 test_ 开头的测试函数,并执行它们。
除此之外,还可以使用 pytest 提供的参数和插件来运行测试脚本,例如指定测试文件、打印详细信息、生成测试报告等。
```python
# 指定测试文件
pytest test_demo.py
# 打印详细信息
pytest -v
# 生成测试报告
pytest --html=report.html
```
以上是 pytest 的基本使用方法,更多用法可以参考官方文档。
阅读全文