要利用Swagger在Linux上進行API自動化測試,可以按照以下步驟進行:
首先,需要在Linux系統上安裝Swagger Editor和Swagger UI。以下是安裝步驟:
sudo apt update
sudo apt install -y openjdk-11-jre-headless
wget https://cdnjs.cloudflare.com/ajax/libs/swagger-ui/3.50.0/swagger-editor.min.js
wget https://cdnjs.cloudflare.com/ajax/libs/swagger-ui/3.50.0/swagger-editor.min.css
sudo nano /var/www/html/swagger-editor.html
在文件中添加以下內容:
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="swagger-editor.css">
</head>
<body>
<div id="swagger-editor"></div>
<script src="swagger-editor.js"></script>
<script>
window.onload = function() {
const editor = SwaggerEditor({
url: "https://petstore.swagger.io/v2/api-docs",
dom_id: '#swagger-editor'
});
};
</script>
</body>
</html>
Apache:
sudo a2ensite default.conf
sudo systemctl restart apache2
Nginx:
sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/default.backup
sudo nano /etc/nginx/sites-available/default
修改server
塊中的root
和index
指令:
server {
listen 80 default_server;
listen [::]: 80 default_server;
root /var/www/html;
index index.html index.htm;
server_name _;
location / {
try_files $uri $uri/ =404;
}
}
保存并退出編輯器,然后重啟Nginx:
sudo systemctl restart nginx
現在,你應該能夠通過瀏覽器訪問 http://your_server_ip/swagger-editor
來查看和使用Swagger Editor。
使用Swagger Editor生成測試用例模板或client SDK。這些模板可以提供給QA進行接口測試用例的生成,也可以提供給后端開發人員一個調用的SDK。
利用Swagger文檔自動測試API??梢允褂肞ython中的requests
庫來發送HTTP請求,并結合pytest
庫來進行斷言和測試。
以下是一個簡單的示例:
import requests
def test_get_users():
response = requests.get('http://localhost:5000/api/users')
assert response.status_code == 200, "Expected status code 200"
assert response.json() is not None, "Expected JSON response"
def test_create_user():
user_data = {
"name": "John Doe",
"email": "johndoe@example.com"
}
response = requests.post('http://localhost:5000/api/users', json=user_data)
assert response.status_code == 201, "Expected status code 201 (Created)"
assert response.json()["name"] == "John Doe", "Expected name to be 'John Doe'"
在命令行中使用pytest
命令運行這些測試:
pytest your_test_file.py
這樣,你就可以利用Swagger文檔自動測試你的API了。
通過以上步驟,你可以在Linux上成功搭建Swagger環境,并利用Swagger進行API自動化測試。