02-hytest 用例定义和用例目录

  • 用例是怎么标识的:
  1. 一般用例编号对应类名,用例名称如果没有默认和类名一样。
  2. 类中只有要teststeps方法就会被认为是一个用例
  3. 用例执行是否pass的判断标准:只要teststeps方法没有异常抛出就认为是pass
  4. 只要有一个检查点FAIL,CHECK_POINT函数就会抛出异常,这条用例的结果就是FAIL
  • Python中的类对应一个测试用例文档里面的用例
  • 一个代码文件也就是一个.py文件可以存放多个用例,对应多个Python中的类(成立)
  • 多个Python文件可以放在一个目录下
  • cases目录下面的每个目录和py文件都被称之为测试套件(suite)
  • 测试套件测试用例的集合,通俗的说,就是一组用例 。
 1 from hytest import STEP, INFO, CHECK_POINT
 2 
 3 
 4 class c1:
 5     # 类的name属性指定用例名,如果没有name属性,那么类名就会被当做用例名称
 6     name = '用例名称 - 0001'
 7 
 8     # 测试用例步骤,类中必须要有teststeps方法才会被hytest当做测试用例类
 9     def teststeps(self):
10         # STEP函数参数:第一个参数是表示当前是测试步骤的第几步,第二个参数是对测试步骤的描述
11         STEP(1, '打开浏览器')
12         var = 'sdfg'
13         # INFO函数参数:功能类似于print函数,只不过print函数是打印在控制台,INFO是打印在测试报告或者日志文件中
14         INFO(var)
15         # CHECK_POINT函数参数:第一个参数是检查点的描述,第二个参数的值是True或者False,返回True,检查点pass,返回False,检查点faild
16         # 缺省情况下,一个检查点不通过,后面的测试代码就不会继续执行。如果你希望 某个检查点即使不通过,后续代码仍然继续执行,可以使用参数 failStop=False
17         CHECK_POINT('打开浏览器成功', var.startswith('1sd'), failStop=False)
18 
19         STEP(2, '登录')
20         INFO('登录功能')
21         CHECK_POINT('检查是否登录成功', True)
22 
23         STEP(3, '查看菜单')
24         INFO('查看菜单')
25         # 只要有一个检查点FAIL,CHECK_POINT函数就会抛出异常,这条用例的结果就是FAIL
26         CHECK_POINT('检查菜单是否正确', False)

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/877452.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【数学】已知正方形相邻两点坐标求另外两点坐标

已知正方形相邻两点(a,b)与(c,d)坐标公式: \( (x_3,y_3) = (c + (b-d), d - (a-c)) \\ (x_4,y_4) = (a + (b-d), b - (a-c)) \\ (x_5,y_5) = (a - (b-d), b + (a-c)) \\ (x_6,y_6) = (c - (b-d), d + (a-c)) \)

25.1.31小记

多态类型声明类型 : 定义时候的类型 动态类型 : 运行到那里的时候对应的具体类型 向上造型(cast) : 将子类类型的对象赋给父类的变量 (不能将一个父类的变量赋予一个子类的变量) 赋值运算符 : 将管理者管理的对象进行改变(改变的是指针)其中造型(cast)的意义是将某…

MacOS修改应用快捷键的一般思路

具体步骤为:使用CheatSheet软件查看菜单项名称 在系统设置中修改菜单项的快捷键举个例子:修改Chrome中左右切换tab的快捷键(系统语言为英文,中文同理) 默认采用Ccontrol Tab和Control + Shift + Tab(或Command Shift [和Command Shift ])可以左右切换tab。 现在希望将其…

UE4.27, 模块实践, Slate的UI开发 (一)

1. 基本概念1.1. Slate是虚幻UI框架设计的底层,该框架中最基本的类是SWidget1.1.1.显然,我们容易注意到,直属于该框架的类拥有着指定的命名规则,即以S开头1.2. UMG, UWidget, Slate关联1.2.1. UMG:Unreal Motion Graphics UI Designer 虚幻的图形界面设计工具1.2.2. 单纯Sl…

Brainfly: 用 C# 类型系统构建 Brainfuck 编译器

Brainfly: 用 C# 类型系统构建 Brainfuck 编译器Brainfuck 简介 Brainfuck 是由 Urban Mller 在 1993 年创造的一门非常精简的图灵完备的编程语言。 正所谓大道至简,这门编程语言简单到语法只有 8 个字符,每一个字符对应一个指令,用 C 语言来描述的话就是:字符 含义> ++…

01-hytest简介

参考教程:http://vip3.byhy.net/auto/pyatframework/hytest-01/ 安装:pip3 install hytest hytest对应的python版本要求:Python3.6或者更高版本 运行hytest自动化测试:打开命令行窗口 切换到自动化代码根目录 运行hytest,运行hytest其实就是运行python -m hytest.run 如果…

【编码】自定义通信协议——实现零拷贝文件传输

前言 上一篇随笔,介绍了如何扩展自定义协议的请求类型。本篇随笔我将介绍如何基于这个自定义协议来实现文件传输,其中将涉及数据分片和零拷贝 在设计自定义协议之前,我们首先了解一下HTTP协议是如何处理文件传输的。 HTTP协议的实现方式 在这里,我们主要讨论应用最广泛的HT…

研发的护城河到底是什么?

0 你的问题,我知道! 和大厂朋友聊天,他感叹原来努力干活,做靠谱研发,积累职场经验,干下来,职业发展一般问题不大。而如今大厂“年轻化”,靠谱再不能为自己续航,企业似乎也不愿意持续为经验买单。 在这不确定时代,职业发展中有无硬通货? 更长远职业发展角度:要抓住机…

冶炼金属

暴力做法 #include<iostream> #include<vector> using namespace std;void solve() {int n; cin >> n;vector<int>a(n), b(n);for (int i = 0; i < n; i++){cin >> a[i] >> b[i];}for (int i = 1; i < 1e6; i++)//从小到大,找最小值…

昆明理工大学2025年硕士研究生调剂汇总表1月31日更新

这是今年昆明理工大学调剂信息,目前只更新了部分学院的部分专业,后续会持续更新。 【腾讯文档】昆明理工大学2025年硕士研究生调剂汇总表 https://docs.qq.com/sheet/DZERIbnpPb3JjeHFO

子串简写

二分法: 要求:pc2-pc1+1>=k 变形:i(pc2)-k+1>=pc1#include <iostream> #include <string> #include<vector> #define int long long using namespace std; void solve() {int k;cin >> k;char c1, c2;cin >> c1 >> c2;string s;…

傻瓜教程 一步一步把blazor项目发布到linux(debian12,nginx反向代理设置,net8,net9适用)

接触blazor有一段时间了,感觉非常好用,特别适合企业内部开发用。开发效率高,界面优美,重要得是会c#的朋友不用再去学习js等前端技术了,虽然平时也看得懂js,html,css,但要自己写还是需要从头去学习的,不想再浪费精力去学习,毕竟会的再多,杂而不精也没什么意义。而自己…