搭建禅道环境作为练习UI和接口自动化测试对象

举报
虫无涯 发表于 2023/07/25 15:31:45 2023/07/25
【摘要】 1 目的做UI和接口自动化练习时,有时候找不到合适的对象,我们可使用禅道来联系;因为禅道有开源版,可以二次开发,并有详细的API手册;本文的目的是整理并分享,使用禅道来作为测试对象的过程,便于学习自动化测试使用。 2 禅道下载直接进入官网,选择开源版进行下载:https://www.zentao.net/page/download.html根据自身电脑环境选择合适的版本,本文是Window...

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()

  • 经过尝试,也是可以的。
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。