1 目的
- 做
UI
和接口自动化练习时,有时候找不到合适的对象,我们可使用禅道来联系; - 因为禅道有开源版,可以二次开发,并有详细的
API
手册; - 本文的目的是整理并分享,使用禅道来作为测试对象的过程,便于学习自动化测试使用。
2 禅道下载
- 直接进入官网,选择开源版进行下载:
https://www.zentao.net/page/download.html - 根据自身电脑环境选择合适的版本,本文是
Windows
版本:
- 选择“
Windows
一键安装”下载即可。
3 禅道安装
- 下载后如下:
- 双击运行,选择安装目录,我们安装在如下目录:
- 点击
Extract
,等待安装:
4 禅道运行
- 安装完后,在安装目录下有个
exe
文件双击打开:
- 双击后会打开如下页面:
- 点击“访问禅道”,或者输入:http://127.0.0.1/index.php
- 点击【开源版】,进入登陆页面:
5 接口查看
- 首次登录时,登录信息如下:
# 账号:admin
# 密码:123456
- 首次登录需要修改密码,修改成功后进入系统首页,如下:
- 点击左侧的导航栏中的【后台】,点击【二次开发】:
- 可以看到相关的
API
接口:
6 验证接口测试
- 接口公共地址为:
http://127.0.0.1/zentao/api.php/v1/对应API接口名称
- 接口调试,我们使用登录获取
token
接口来看下请求数据:
- 可以看到接口是OK的,那我们在练习接口自动化时可以尝试用这个来练习了;
- 接单写一个脚本看下:
# -*- coding:utf-8 -*-
# 作者:虫无涯
# 日期:2023/7/25
# 文件名称:test03.py
# 作用:验证登录接口
# 联系:VX(NoamaNelson)
# 博客:https://blog.csdn.net/NoamaNelson
import requests
import json
import time
header = {"Content-Type": "application/json"}
url = "http://127.0.0.1/zentao/api.php/v1/tokens"
data = {"account": "admin", "password": "123456"}
r_data = json.dumps(data)
r = requests.post(url=url, data=r_data, headers=header)
print(f"返回的token为:{r.text}")
- 返回数据为:
D:\Python37\python.exe F:/python_study/test03.py
返回的token为:{"token":"d0062b99d36103950765f6a5d72286a9"}
7 验证UI测试
- 简单试下,不用看代码是否美观,哈哈:
from selenium import webdriver
import time
driver = webdriver.Chrome()
driver.get("http://127.0.0.1/zentao/user-login.html")
time.sleep(1)
driver.maximize_window()
driver.find_element_by_id("account").send_keys("admin")
time.sleep(0.5)
driver.find_element_by_xpath("/html/body/main/div/div[1]/div/div[2]/form/table/tbody/tr[2]/td/input").send_keys("123456")
time.sleep(0.5)
driver.find_element_by_id("submit").click()
time.sleep(1)
driver.quit()
- 经过尝试,也是可以的。