这是另一种测试气味 。

测试中日志消息的目的是什么?

有时,通过测试套件中的记录器或stdout记录日志消息。 他们发生了。 有时它们的发生是有原因的,但是通常当您查看这些原因时,往往表示缺少更好的东西:

  • 我想知道测试在做什么
  • 测试现在有哪些数据?
  • 为什么那个时候测试失败了?

通常,日志记录不是很好的解决方案,其原因是:

记录的消息通常不是测试报告的一部分,也通常不会影响测试结果。

换句话说,测试我们的测试以与我们交谈可能会做得更好。


何时添加日志消息?

当它们在CI服务器上失败时,我暂时 (然后将它们留在那儿)向一些测试中添加了一些日志输出,或者偶尔在本地(但是我可以在本地调试),以便让我了解发生了什么。 通过将这些日志消息从真正的需求中驱除,而这些需求可能是我可能需要有关环境或特定数据的事实,我证明了这个偶然的问题可能会在管道出现故障时挽救我的屁股,但是这些不是整体测试开发策略的一部分。

那么测试在做什么?

测试不是一个脚本,该脚本统治并手动输出其所在位置的叙述。 如果将测试正确地分解成多个测试用例,那么执行这些测试用例的测试运行者应该提供有关发生的情况和时间的反馈。

诸如Cucumber和Serenity之类的测试框架可用于构建测试和测试代码以自动提供叙述,这可能会更丰富,更重要的是,它们可以在最后生成报告以将发生的事情与假设的规范相关联进行测试。

我们正在处理什么数据?

跟踪数据的问题取决于上下文。 如果我们有测试数据,我们应该从测试执行中的位置知道正在使用什么。 如果我们使用的是数据驱动的测试,那么也许我们通过参数化测试运行程序或数据驱动的测试框架构建测试的方式应该自动使用所使用的数据来检测我们的测试报告。 如果我们正在从被测系统中即时接收数据,那么上帝会帮助我们……这就是我们最终需要添加诊断信息以帮助理解故障的地方。 理想情况下,这些诊断应该更接近我们检测故障的方式。

什么是失败?

使用断言!

在那里,我说了。

提出断言不仅解释他们进行的比较,而且解释他们进行比较的环境。 但是,不要陷入试图在每个断言中编写无意义的glib注释的陷阱。

许多断言是它们所处测试步骤的根源,因此我们知道其上下文。 但是,如果断言不太明确,或者我们觉得有必要提供与我们断言的事物相关的其他数据的补充信息,例如,我们不仅断言HTTP状态代码,还显示代码时的HTTP正文。不是我们所期望的-那么我们应该对断言进行检测,而不是添加日志记录。

结论

与深入研究日志相比,您读取红色/绿色状态和测试套件的测试报告的次数更多。 使用框架,尤其是断言库来绘制关于测试内容和结果的最可靠的描述,将是解释它的最佳策略。

翻译自: https://www.javacodegeeks.com/2020/02/chatty-logging-in-tests.html

Chatty登录测试相关推荐

  1. python selenium自动化断言_python+selenium自动化登录测试,设计不同场景进行登录,两种方式断言,截图保存...

    # coding : utf-8 # date :2019/1/7 # 根据不同场景做自动化登录测试 # 正确账号密码.正确账户错误密码.等其他场景 from selenium import webd ...

  2. 对话框处理与登录测试

    对话框删除 通过审查元素  结果为div 无法查找id 等  使用css /xpath 复制 copy xpath  关闭 ============ 即可关闭窗口 ================== ...

  3. 爆破登录测试网页_预测危险的地震爆破第一部分:EDA,特征工程和针对不平衡数据集的列车测试拆分

    爆破登录测试网页 介绍: (Introduction:) The seismic bumps dataset is one of the lesser-known binary classificat ...

  4. element 登录_Python selenium自动化测试框架入门实战--登录测试案例

    本文为Python自动化测试框架基础入门篇,主要帮助会写基本selenium测试代码又没有规划的同仁. 本文应用到POM模型.selenium.unittest框架.configparser配置文件. ...

  5. 微信第三方登录测试时报Scope参数错误或没有Scope权限解决方法

    微信第三方登录测试时报Scope参数错误或没有Scope权限解决方法 参考文章: (1)微信第三方登录测试时报Scope参数错误或没有Scope权限解决方法 (2)https://www.cnblog ...

  6. python实现自动化登录测试

    使用软件pycharm,使用t语言:python. 功能:从txt文档读出所有登录的账号进行登录测试,并将登录过程中的提示写入.txt中.改下txt里面的测试内容就可以了 userinfo. txt存 ...

  7. 软测之黑白盒登录测试

    登录测试 白盒测试: 登录代码:用qt写的一个管理系统其中的登录部分 QString username=ui->usrlineEdit->text(); QString password= ...

  8. 慕课网自动化登录测试脚本

    创建一个maven工程 导入selenium依赖项 打开pom.xml文件,导入以下依赖: <dependencies><!-- https://mvnrepository.com/ ...

  9. 前百度测试经理手把手教你用Jmeter实现登录测试

    前言 Jmeter是一款用于测试客户端/服务端结构的软件,不仅可以用来测试静态和动态资源的性能.Jmeter还可用于模拟大量负载来测试一台服务器,网络或者对象的健壮性或分析不同负载下的整体性能.今天我 ...

最新文章

  1. Django View(视图系统)
  2. drawContours函数
  3. Coursera吴恩达《神经网络与深度学习》课程笔记(3)-- 神经网络基础之Python与向量化
  4. 系统启动与内核管理 ;AWK部分 重要内容 (实验及awk的常见面试题)
  5. SAP CRM product hierarchy和category的三个问题问答
  6. HTML如何添加锚点,文末领取面试资料
  7. python 线程模块_Python线程模块| main_thread()方法与示例
  8. Ubuntu iso下载地址(14、16、18)
  9. linux 下 sudo 指令不需要输入密码的配置
  10. 【元胞自动机】基于matlab元胞自动机双边教室疏散【含Matlab源码 1208期】
  11. java中的回调函数
  12. springboot2.4+nettyWebServerApplicationContext@15f51c50 has been closed already问题解决
  13. Vue项目中引用‘阿里巴巴字体图标库iconfont’
  14. oracle双活svc,SVC存储虚拟化双活方案
  15. sangerbox平台使用(五)venn图的绘制
  16. 众昂矿业助力萤石氟化工产业链破竹般发展
  17. Nacos 常见问题及解决方法
  18. microPython驱动tft屏幕显示中文终极解决方案
  19. navicat连接出现ORA-01017: invalid username/password
  20. 运筹系列65:TSP问题的精确求解法概述

热门文章

  1. 服务器怎么查服务端数据
  2. 如何用朴素贝叶斯模型预测柯南里的被害人和凶手
  3. 微信开发 (四) 微信网页授权
  4. 推荐一款超快的Android模拟器
  5. GD库的中文问题(推荐)
  6. 使用WPF与C#实现鼠标画线
  7. 骗子QQ2875827910手机号码15591473507微信号gewen521520
  8. 常见排序算法时间复杂度和空间复杂度
  9. vue 使用table2excel导出excel表格(带图片)
  10. 软件技术人员成长路线的设计