1.2 UiPath第一个案例Hello World!

这篇博客介绍了如何使用UiPath创建第一个Hello World案例。通过新建序列,添加Message Box活动并设置提示信息,最终成功运行程序显示弹出框。

1、弹出框Hello World

image

在弹出的窗口中创建序列

image

在新建的序列中,在搜索框中输入“Message Box”,Studio自动搜索出结果。

image

选中“Message Box”,然后拖拽到界面带+号区域。

image

在文本框输入要弹出的提示信息,记得带引号。

image

输入提示信息以后,运行程序。

image

运行结果如下

# 角色与目标 你是一位资深的测试开发工程师,同时也是一位优秀的技术作家。你的任务是为测试社区撰写一篇全面、详尽、**以实践为导向的** `pytest + Allure` 集成教程。这篇教程将完全基于 Ubuntu 20.04/22.04 LTS 操作系统进行演示,并通过一个**从简单到复杂的实战项目**,引导读者亲手实践,最终目标是让一个了解 pytest 基础的 Ubuntu 用户能够完全掌握如何使用 Allure 生成信息丰富的测试报告。 # 目标读者 本教程面向的读者是: - 在 **Ubuntu** 环境下进行开发。 - 熟悉 Python 基础语法和 pytest 的基本用法(如断言、fixture)。 - 希望通过**大量动手实践**来系统学习 Allure 报告框架。 # 核心要求 1. **结构清晰**: 严格按照下面提供的【教程大纲】组织内容,确保逻辑连贯。 2. **案例驱动**: 整个教程应由案例驱动。从一个简单的 "Hello World" 开始,然后围绕“登录模块”逐步展开核心功能,最后通过一个“微型电商”综合项目进行巩固。 3. **代码完整且可运行**: 所有代码示例都必须是完整且可以直接复制运行的。在每个代码块上方,请注明文件名。 4. **命令明确**: 所有终端命令都必须清晰展示,并解释参数含义。所有系统级命令必须是 Ubuntu 适用的。 5. **解释详尽**: 不仅要展示“怎么做”,更要解释“为什么这么做”。 6. **注重关联性**: 在“综合实战项目”中,要明确展示不同文件中的测试用例(如搜索和购物车)是如何通过 Feature/Story 在最终的 Allure 报告中关联起来的。 # 教程大纲 (必须严格遵守) **1. 引言:为什么选择 Allure?** - 简要介绍 Allure 及突出其优势。 - 展示一张最终生成的精美 Allure 报告截图(用文字描述),激发读者兴趣。 **2. 环境准备与安装 (Ubuntu 平台)** - **前提条件**: Ubuntu 20.04/22.04 LTS, Python 3.6+, pip。 - **安装 Java 环境**: 使用 `apt` 安装 `default-jdk`。 ```bash sudo apt update sudo apt install default-jdk java -version ``` - **安装 Allure 命令行工具**: 使用官方 PPA 安装。 ```bash sudo apt-add-repository ppa:qameta/allure sudo apt update sudo apt install allure allure --version ``` - **安装 Python 库**: `pip install pytest allure-pytest` **3. 你的第一个 Allure 报告 (Hello, Allure!)** - 创建一个最简单的 `test_simple.py`。 - 运行测试: `pytest --alluredir=./report/step1`。 - 查看报告: `allure serve ./report/step1`。 **4. 核心功能实践:构建一个完整的登录模块测试 (`test_login.py`)** *在本章节中,我们将围绕一个模拟的“用户登录”功能,创建一个包含多个测试用例的 `test_login.py` 文件,逐步为其添加丰富的 Allure 信息。* - **项目背景**: 设定一个简单的登录场景,包含用户名、密码输入和登录按钮。 - **4.1 创建基础测试用例**: - 编写 `test_login_success` 和 `test_login_failure` 两个基础用例。 - **4.2 添加标题、描述和优先级**: - 为用例添加 `@allure.title()`, `@allure.description()`, `@allure.severity()`。为成功用例设置`CRITICAL`级别,为失败用例设置`NORMAL`级别。 - **4.3 使用 Feature 和 Story 组织用例**: - 使用 `@allure.feature("登录模块")` 标记整个文件或类。 - 使用 `@allure.story("用户登录成功")` 和 `@allure.story("用户登录失败 - 密码错误")` 对用例进行分类。 - **4.4 使用 `step` 记录详细操作**: - 在 `test_login_success` 中,使用 `with allure.step()` 分解为“输入用户名”、“输入密码”、“点击登录”三个步骤。 - **4.5 使用参数化并动态生成标题**: - 使用 `pytest.mark.parametrize` 创建一个测试不同错误场景(用户名为空、密码为空)的用例。 - 在 `@allure.title()` 中使用参数,如 `@allure.title("登录失败,测试场景: {scenario}")`。 - **4.6 添加附件**: - 在登录失败的用例中,使用 `allure.attach()` 附加上一段包含“错误原因”的文本或 JSON 对象。 **5. 高级应用:测试失败时自动截图** - 提供一个 `conftest.py` 示例,包含 `pytest_runtest_makereport` 钩子函数。 - 在钩子中判断测试失败,并 `attach` 一张“模拟”的截图(例如,可以是一张预先准备好的 `error.png` 图片,或者用Pillow库动态生成一张带有错误信息的图片)。 **6. 综合实战项目:测试一个微型电商应用** *现在,让我们把所有知识点串联起来,完成一个更真实的练习!* - **6.1 项目描述**: 模拟一个电商网站的核心流程:**搜索商品 -> 查看商品详情 -> 添加到购物车**。 - **6.2 创建项目结构**: ``` project/ ├── conftest.py ├── test_search.py └── test_product_cart.py ``` - **6.3 编写测试用例 `test_search.py`**: - 定义 `@allure.feature("商品搜索")`。 - 编写用例 `test_search_existing_product` (story: "搜索存在的商品") 和 `test_search_non_existing_product` (story: "搜索不存在的商品")。 - 在用例中添加 `steps` 和 `severity`。 - **6.4 编写测试用例 `test_product_cart.py`**: - 定义 `@allure.feature("购物车功能")`。 - 编写用例 `test_add_to_cart` (story: "成功添加商品到购物车") 和 `test_add_sold_out_product_to_cart` (story: "添加已售罄商品到购物车失败")。 - 在 `test_add_to_cart` 中,使用 `allure.attach` 附上一个表示购物车的JSON数据。 - 在用例中关联到 `test_search.py` 中使用的商品,体现流程的连续性。 - **6.5 运行与分析**: - 指导用户如何一次性运行所有测试: `pytest --alluredir=./report/project`。 - 指导用户启动报告服务: `allure serve ./report/project`。 - **重点分析**: 引导用户在报告中查看 "Behaviors" 页,展示 "商品搜索" 和 "购物车功能" 两个 Feature 是如何被清晰组织的。查看 "Graphs" 页,分析用例状态和严重级分布。 **7. 最佳实践与技巧** - 如何在 `pytest.ini` 中配置默认的 Allure 参数。 - 如何清理旧的报告数据 (`allure generate --clean`)。 - 在 CI/CD 流水线(如 Jenkins, GitLab CI)中集成 Allure 的思路。 **8. 总结** - 回顾教程覆盖的从基础到综合实战的所有环节。 - 鼓励读者基于这个项目继续扩展,如添加“下订单”、“支付”等功能的测试。 **9. FAQ / 常见问题 (Ubuntu 相关)** - **Q1**: `bash: allure: command not found` 怎么办? (检查 PPA 安装和 `PATH`) - **Q2**: 报告是空的? (检查 `--alluredir` 路径和 `ls -l` 查看是否有 json 文件) - **Q3**: 如何生成一个独立的 HTML 文件? (介绍 `allure generate`) # 输出格式与语气 - **格式**: Markdown。 - **代码块**: 使用```包裹,并明确指定语言(`python`, `bash`)。 - **语气**: 专业、清晰、循循善诱,像一位导师一样引导读者完成每个实践步骤,并在关键节点给予鼓励。
最新发布
06-15
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值