Golang 泛型编程初体验

Go 1.18 加入了对泛型的支持。本文将使用切片反转和对象排序两个示例场景来演示泛型的使用。 开始前,我们先了解一下泛型的基本概念。 1 泛型是什么? 泛型(Generics)是编程语言中的一种范式,其允许在定义类(Go 中的结构体)、接口和方法(函数)时使用类型参数(Type Parameters)。这些类型参数可以用来描述方法的参数类型或者类与接口的属性类型,从而使得代码可以在不同类型之间进行重用,而不必进行类型转换或使用 Object(Go 中的 interface{})类型来处理。

阅读更多

Serenity BDD 如何与 Cucumber 进行集成?

我们知道,Serenity BDD 和 Cucumber Java 是两个常用的、适用于 Java 语言的自动化测试框架。Serenity BDD 框架功能丰富、内置了对业界通用的软件测试设计模式(诸如:页面对象模型、Screenplay 模式等)的支持,而 Cucumber 框架的一大优势是可以使用类似自然语言的方式(Gherkin 语法)来编写测试场景。因此,将两者进行集成将拥有叠加的能力。

阅读更多

如何使用 Serenity BDD 进行 API 测试?

前文「如何使用 Serenity BDD 进行 UI 测试?」介绍了使用 Serenity BDD 与 Selenium 进行 Web UI 测试的方法,但 Serenity BDD 不仅限于进行 UI 测试,还可以使用其进行 REST API 测试。本文即介绍使用 Serenity BDD 与 REST Assured 进行 API 测试的方法。

阅读更多

如何使用 Screenplay 模式编写 UI 测试用例?

Screenplay 模式是一个用于软件测试的设计模式,本文探索如何使用 Screenplay 模式编写 Web UI 测试用例。

本文首先会介绍 Screenplay 模式的基本概念;接着,以登录 GitHub 并在页面创建 Issue 为测试场景,来分析该场景中的操作者与行为分别对应 Screenplay 模式中的哪个部分;最后,针对该测试场景,使用 Serenity BDD 测试框架来编写满足 Screenplay 模式的测试用例,示例工程使用 Maven 管理。

阅读更多

如何使用 Serenity BDD 进行 UI 测试?

Serenity BDD(Behavior Driven Development,行为驱动开发)是一个支持 Java 语言的 BDD 自动化测试框架。Serenity BDD 框架功能强大,吸纳了业界诸多通用测试规范,支持页面对象模型(Page Object Model),可与 JUnit、Cucumber、Selenium、JBehave 等多种流行测试框架进行集成。此外,Serenity BDD 还提供详细的测试报告,可以直观呈现每个步骤的执行结果、页面截图、耗时情况,以及整体测试覆盖率等各项数据与指标。

阅读更多