- 1 ZTF简介
- 2 ZTF主要功能
- 3 ZTF两种脚本类型
- 4 如何获得支持
-
5. 快速入门
- 5.1 安装客户端
- 5.2 安装命令行
- 5.3 禅道设置
- 5.4 旧版禅道兼容
- 5.5 Windows编码和语言设置
- 5.6 常用命令
- 5.7 使用示例
- 5.8 如何方便地在任意目录中执行ztf命令?
-
6. 用户指南
- 6.1. ZTF脚本描述
- 6.2. ZTF期待结果
-
6.3. ZTF客户端使用
- 6.3.1 页面功能介绍
- 6.3.2 配置运行环境
- 6.3.3 添加禅道站点
- 6.3.4 添加工作目录
- 6.3.5 执行脚本或单元测试
- 6.3.6 测试结果和重新执行用例
- 6.3.7 脚本与禅道互通
- 6.3.8 复制、粘贴、删除、重命名、在文件管理器或命令行打开
- 6.3.9 使用远程服务器
- 6.3.10 使用远程代理节点
- 6.4 脚本中穿插编写测试步骤和期待结果
- 6.5 ZTF参数设置
- 6.6 禅道用例同步
- 6.7 执行测试脚本
- 6.8 测试结果提交
- 6.9 其他命令
- 6.10 用例信息查看
- 6.11. 主流自动化脚本语言支持
-
6.12. 自动化测试工具支持
- 6.12.1 AutoIT
- 6.12.2 Selenium
- 6.12.3 Appium
- 6.12.4 RobotFramework
- 6.12.5 Cypress
- 6.12.6 Playwright
- 6.12.7 Puppeteer
- 6.13. 单元测试框架支持
-
6.14. Jenkins集成
- 6.14.1 Jenkins任务中使用ZTF
- 6.15. 代理服务
- 7. 开发指南
PyTest
- 2020-04-14 17:15:56
- Aaron Chen
- 9563
- 最后编辑:周悦秋 于 2024-01-24 17:25:03
- 分享链接
我们准备了一个演示项目,请从 https://gitee.com/wwccss/ci_test_pytest 获取。
在发行包的demo/unit/
allure下,也提供了一个Allure和Pytest结合使用的例子,供大家参考。
请预先做好以下配置,此处以Windows下为例。
- 安装Python3, 解压安装的请确认可执行文件在 PATH环境变量中(在任意目录执行python --version成功);
- 使用命令pip install -U pytest安装PyTest;
- 执行 pytest --version确认PyTest安装成功。
执行过程:
- CD进入PyTest项目的根目录;
- 执行 ztf.exe pytest -p 1 -t smoke_test pytest --junitxml=testresults.xml,其中-p为禅道中的产品ID,-t参数为新建测试单的名称;
- 按照提示输入项目配置信息;
- 测试执行完成,ZTF自动提交测试结果到禅道中指定的产品;
- 打开禅道 测试->单元测试菜单,查看测试结果;
- 新版禅道:1. 在 测试->套件页面查看结果;2. 在 测试->用例页面中的“所有类型”下拉菜单中,选择“单元测试”过滤。
评论列表
发表评论
'''
title=成功登录
cid=192
pid=1
1. 输入正确的账号 >> 输入成功
2. 输入正确的密码 >> 输入成功
3. 输入正确的验证码 >> 输入成功
4. 点击登录 >> 成功登录进入首页
'''
import os
import sys
from selenium import webdriver
import pytest
from pages.dashBoard.dashboard_page import DashBoardPage
from pages.login.login_page import LoginPage
from common import log_util
from common.yaml_util import yaml_read
"""
@Project : ATS_SW
@File : test_login.py
@Author : peng
@Date : 2022/8/25 16:19
@Desc :
"""
BASE_DIR = os.path.dirname(os.path.dirname(os.path.dirname(__file__)))
sys.path.append(BASE_DIR)
current_dir = os.path.dirname(os.path.abspath(__file__))
class TestLogin:
"""
1、setup_module和teardown_module在整个测试用例所在的文件中所有的方法运行前和运行后运行,只会运行一次;
2、setup_class和teardown_class则在整个文件中的一次class中所有用例的前后运行;
3、setup_method和teardown_method在class内的每个方法运行前后运行;
4、setup_function和teardown_function则是在非class下属的每个测试方法的前后运行;
"""
def setup_method(self):
"""函数用例前置方法执行"""
log_util.logTest.buildStartLine("开始执行")
self.driver = webdriver.Chrome()
self.login = LoginPage(self.driver)
self.db_p1 = DashBoardPage(self.driver)
def teardown_method(self):
"""函数用例后置方法执行"""
# 关闭浏览器
self.driver.quit()
log_util.logTest.buildEndLine("执行结束")
# 用相对路径,ZTF读取不到
@pytest.mark.parametrize('args', yaml_read(current_dir + "/../../data/data_login_page/data_user.yaml"))
def test_01(self, args):
self.login.login(args['username'], args['password'])
log_util.logger.info("点击登陆 用户名:" + args['username'] + " 密码:" + args['password'])
assert self.login.alert_text() == args['msg']
if self.login.alert_text() == "":
# 退出账户
self.db_p1.exit_account()
if __name__ == '__main__':
pytest.main(['-vs', "test_login.py"])
加ZTF客服群聊吧。
你那里出现的问题应该是和路径有关,试试在Python脚本中使用ftp.exe的绝对路径,或将ftp.exe加入系统环境变量PATH中。