Testkube:Kubernetes 原生测试框架
哈希节点社区您好!今天我们将发现一个很棒的 Kubernetes 开源测试工具。TestKube. 什么是TestKube? Testkube 是一个 Kubernetes 原生测试框架。它可以直接在您的 Kubernetes 集群中运行测试,然后将结果保存到集中空间。它消除了容器化不同测试类型的所有麻烦。 Testkube 使 Kubernetes 中的测试成为一种流畅的云原生体验。 TestK
哈希节点社区您好!今天我们将发现一个很棒的 Kubernetes 开源测试工具。TestKube.
什么是TestKube?
Testkube 是一个 Kubernetes 原生测试框架。它可以直接在您的 Kubernetes 集群中运行测试,然后将结果保存到集中空间。它消除了容器化不同测试类型的所有麻烦。 Testkube 使 Kubernetes 中的测试成为一种流畅的云原生体验。
- TestKube 为我们提供了集中的测试结果,并且易于与 GitOps 和 CI/CD 程序集成。
因此,在本博客中,我们将介绍:
-
为什么选择 Testkube?
-
适合你吗?
三、Testkube的安装
- 演示。
先决条件
- K8s基础知识
为什么选择 TestKube?
TestKube 解耦在 CI/CD 管道上执行的测试活动,并在 Testkube 中定义它们,这样我们就可以随时运行我们的测试,而无需运行整个 CI/CD 管道来运行单个测试,因此跨 CI/CD 平台移动变得更容易访问因为我们不需要重新定义所有测试,因为我们可以重用在 TestKube 中定义和编排测试的方式。
CI/CD 工作流与 TestKube
没有 TestKube 的 CI/CD 工作流
由于 TestKube 从项目存储库中检索测试文件并根据需要执行它们,因此您无需执行任何复杂的设置即可运行测试。
与 CI/CD 测试相关的复杂性被简化为 TestKube 自己管理所有测试活动。
TestKube 提供了整个基础架构,用于处理 Kubernetes 集群内部的所有测试工作负载。
TestKube 适合你吗?
-
如果您在 Kubernetes 下为您的应用程序进行集成测试,Testkube 适合您。
-
如果您希望超越 K8 的限制,例如网络限制或无法访问测试环境
-
如果你的 CI/CD 和测试过程关联太紧密
安装
所以,安装TestKube你可以通过这个详细指南,或者你也可以观看这个视频(从03:23开始)。
- 现在,打开你的终端并写下这个命令。👇
$ kubectl testkube install
安装后,您将可以看到此屏幕👇
注意- 这只有在您的系统中已经安装了 K8s 时才可见。
- 现在,运行这个👇命令来查看所有的TestKube组件。
$ kubectl get pods -n testkube
现在,您的屏幕将如下所示👇
现在,我们将能够看到客户端和服务器版本。
- 要查看**TestKube的版本,**运行这个命令。👇
$ kubectl testkube version
- 屏幕会是这个样子👇
注意 - TestKube 安装在一个空集群中。我们需要一些服务来测试
要运行您的测试,请运行此命令。👇
kubectl testkube run test our-first-test-name
屏幕将如下所示。👇
📌整个过程会是这个样子。👇
使用 K6 和 Testkube 进行测试的演示
现在,我们将去看一个使用 k6 和 Testkube. 的演示。
运行 K6 测试
K6 是 Testkube 不可或缺的一部分。在 Testkube 安装过程中,默认安装 Testkube k6 执行器。您必须首先在 Testkube 中构建一个测试才能执行 K6 测试。
- 新建一个JS文件。
// bash
$ touch k6-test.js
// You can give any name
现在我们将创建一个 k6 负载测试并运行它。在 k6-test.js 文件中写下这段代码👇。
import http from 'k6/http';
import { check, sleep } from 'k6';
export const options = {
stages: [
{ duration: '5s', target: 20 },
{ duration: '5s', target: 10 },
],
};
export default function () {
const res = http.get('https://httpbin.test.k6.io/');
check(res, { 'status was 200': (r) => r.status == 200 });
sleep(2);
}
将文件另存为 k6-test.js 或任何您喜欢的文件。
- 现在执行测试脚本。首先,我们需要将其定义为 k6/script 👇
$ kubectl testkube create test --file path/to/your/k6-test.js --type "k6/script" --name k6-test
现在,运行这个命令。
$ kubectl testkube run test k6-test -f
现在,我们可以在 Testkube 仪表板中查看我们的日志和测试结果。运行这个命令。👇
$ kubectl testkube dashboard
现在,仪表板将如下所示。👇
谢谢
我希望你能从这个博客中学到一些东西。您可以查看这个视频以了解有关 Testkube 的更多信息。
更多推荐
所有评论(0)