这里有成千上万的项目,但它们成功与否往往取决于测试的深度。
编写和维护测试可能会耗费大量时间。检查测试的准确性更是难上加难,但有没有一种更高效的方法来完成这些任务呢?
今天,我们将探索如何使用LambdaTest打造的世界首款AI代理(KaneAI)来进行端到端的软件测试。
让我们开始吧。
简而言之,我们将详细讨论这些主题。
- 什么是KaneAI,为什么你应该使用它?
- 所有功能的详细说明。
- 带有实际示例的使用场景。
1. 什么是KaneAI以及你应该使用它的原因是什么?
KaneAI 是全球首个端到端的软件测试代理。
你只需要用自然语言指定目标,它就会自动生成测试,甚至还会检查错误。
您可以将自动化测试导出为所有主要语言和框架(如Cypress、Selenium、Mocha、Jest等)。
🎯 如果你好奇什么是端到端软件测试?
通常,测试被认为是检查所有代码的准确性。
端到端测试更像是从用户的角度对整个应用进行全面测试,从头到尾。它确保用户的体验尽可能顺畅。
像Selenium和Cypress这样的工具有助于自动化这些测试,使它们更加高效和可靠。
例如,我们来看一个简单的注册表单示例:
-→ 输入空白的邮箱和密码
-→ 输入有效的邮箱和密码
-→ 输入无效的邮箱和密码
-→ 点击注册按钮
这些用例将验证操作是否符合用户的预期,例如输入无效数据时显示错误消息,或使用有效数据成功注册时进行确认。
如果你想要了解更多关于端到端测试的内容,我推荐这两个资源:
✅ 什么是E2E?端到端测试指南 由CircleCI提供。
✅ 端到端测试:工具、类型及最佳实践 by BrowserStack.
🎯 你为什么应该使用KaneAI?
让我们坦诚地说,做测试需要很长时间,而且很容易忽略边缘情况。
但如果你身边有一个智能代理,能够帮你将速度提高10倍,同时减少错误,显然每个人都会使用它。
⚡ KaneAI 为每次你所做的更改维护单独的版本。
⚡ 只需高层次目标即可生成您的测试。
⚡ 它可以从多种不同的来源启动测试自动化,例如Jira、Slack和GitHub问题。
而且在下一节中,我介绍了许多非常有用的特性。
如果你有兴趣进行探索,可以阅读KaneAI官方文档。他们还提供一个KaneAI引导式教程来帮助你运行你的第一个测试。
为了更快上手,我推荐观看这个教程,了解如何使用KaneAI运行你的第一个测试。
使用KaneAI运行您的第一个网页测试
它正处于私人测试阶段,如果你有兴趣使用它,只需填写这个表格,以便支持团队可以给你访问权限。
观看此视频以了解KaneAI的基本概念!
2. 所有功能的详细分解。
我决定在这一单独的部分中涵盖所有功能,以便更好地了解KaneAI。大量的自定义选项足以证明,KaneAI将会彻底改变测试的一切。
如果你想知道如何使用这些功能,那么我将在下一节通过示例进行介绍。
KaneAI 控制面板
这里有一些酷炫的功能:
⚡ 你只需要用自然语言指定步骤,它就会像往常一样工作。
⚡ 您可以将自动化测试导出为所有主要语言和框架(如Cypress、Selenium、Mocha、Jest等)的代码。
⚡ 只需指定如“访问 xyz.com 并点击购买按钮”这样的高层次目标,它就可以自动规划和自动化测试步骤。
⚡ 可以用自然语言插入断言并相应地指定条件。
⚡ 你可以在3000多种浏览器、操作系统和真实设备的组合上运行生成的测试。
考虑一个需要在各种设备和屏幕尺寸上运行的移动应用。你不需要为每一种变化编写测试用例,KaneAI 会帮你完成这些工作。它会在不同的环境中创建并执行测试。哇哦!
⚡ 您将获得详细的测试执行报告,包括测试智能和深度分析。
⚡ 它可以通过使用AI进行调试来即时解决bug。它包含了一些创新的概念,比如内联测试失败分类和修复bug复现。
⚡ KaneAI 可以从你现有的案例中探索相关测试,并提高整体的测试覆盖率。哇哦!
⚡ 它们提供了许多集成选项,因此你无需改变现有的工作流程。集成选项包括缺陷跟踪器、分析和通信工具,如 Jira、Slack、GitHub actions、Microsoft Teams(即将推出)和 Google Sheets。你可以在 integrations.lambdatest.com 探索所有集成选项。
错误跟踪器
CI/CD 工具
⚡ 每次添加新步骤时,你都需要提交更改。系统会根据你的操作自动填充内容,这最终可以节省大量时间。你甚至可以比较两个版本以查看发生了哪些更改。
版本历史标签页
两个版本的比较
⚡ 对于每个测试用例,您可以提供自定义字段,例如优先级、类型和状态。此外,如果您的团队需要遵循其他标准,您还可以创建自己的自定义字段。类型选项也足够丰富。
字段和值
自定义字段
type options
⚡ 它还允许手动交互以创建自然语言提示,分析测试步骤,生成多种语言的代码,并提供详细的测试描述。观看此快速教程以了解更多信息。
哇!有很多功能。你可以通过以下链接注册私人测试版以获取访问权限。
在下一节中,我们将通过三个实际例子学习可以使用KaneAI完成哪些任务。
3. 实际示例中的用例。
一旦你获得了KaneAI的访问权限,仪表盘就会是这样的,可以在kaneai.lambdatest.com查看。
用户界面简洁,根据我的使用体验,用户体验非常出色。
我非常喜欢的一点是那些预构建的模板,它们提供了一种轻松理解用户流程的方式。你只需点击运行该案例,就可以了!
🎯 示例1 - 在LambdaTest网站上的登录场景。
我将通过这个例子来引导你了解初始流程,并展示如何正确使用KaneAI。我们将手动登录LambdaTest的官方网站。
在注册LambdaTest后,前往测试管理器,在那里你可以找到我们将使用的所有测试的相关详情。
测试管理仪表板
创建一个新的项目
创建一个新的文件夹
我创建了一个新的测试用例,标题为“访问lambdatest.com并检查用户是否可以成功登录”。
这是在添加任何手动步骤之前空测试用例的样子。
现在,让我们定义手动步骤。每当步骤正确添加到执行流程中时,都会出现一个确认。
这些是我使用过的步骤。
1) 访问 https://accounts.lambdatest.com/login
2) 等待4秒钟。
3) 输入邮箱:prateekp@lambdatest.com
4) 输入密码:Prateek*641
5) 点击登录按钮。
进入全屏模式 退出全屏模式
有很多选项,比如可以分类测试类型、设置状态,甚至选择优先级。我们也可以从设置中创建自定义选项。
我们现在需要做的就是点击“使用KaneAI自动化”,它将开始运行那些步骤。
第二步
第二步
第六步
最好的功能是你可以点击并可视化每一步。
可视化选项
在该特定步骤中与之交互的截图将会被突出显示。
有时候直接与屏幕交互会更好,因此也提供了手动交互的选项。
一旦你开始在屏幕上移动鼠标,它将会跟踪移动轨迹,分析并自动编写步骤。
如你所见,我点击了登录页面上的GitHub按钮,AI代理自动写下了这一步。
系统会跟踪手动交互是开启还是关闭,并自动分类所执行的测试类型。
一旦测试完成,它会根据你所采取的步骤生成一个描述。你也可以将其保存以备将来参考。
如我在上一节中讨论的,你可以集成像Jira这样的工具来获取和发布票据。
🎯 第二个示例 - 处理高层次目标。
在这个例子中,我们将尝试给出一个简单的高层次目标,看看KaneAI是如何执行的。
我将以访问LambdaTest的职业页面并查找前端工程师职位为例。我在官方网站上查看过,发现并没有这样的职位。
访问KaneAI的主页面:kaneai.lambdatest.com。
我使用下面的响应来创建一个测试。
我想验证 https://www.lambdatest.com/career 是否有开放的前端工程师职位
结果:用户应该能够找到前端工程师的职位
进入全屏模式 退出全屏模式
high level objective
KaneAI 会自动为你生成一组测试,你只需要审核并安排这些测试即可。我真的很喜欢它允许我们在完全交由AI控制之前确认一切这一点。
计划的测试
一旦你安排了测试,它将会自动运行并验证目标。让我们看看实时预览。
运行任务
与手动步骤的基本区别在于,除非测试完成,否则你不会获得任何输入字段来编写更多步骤。它会不断思考下一步该做什么。
运行步骤
运行步骤
如果你想添加更多步骤或编辑现有步骤,可以通过草稿来完成。
编辑步骤
例如,我添加了一个步骤来检查KaneAI是否能找到屏幕上明显的蓝色横幅。这个横幅在职业页面上非常明显。
如我之前所说,有一个版本历史,所以每次你添加一个新的步骤时,你都需要提交更改。这将根据你所执行的操作自动填充,这再次节省了很多时间。
你可以在版本历史
标签中轻松查看版本更改。
版本历史标签页
你甚至可以比较两个版本中发生的变化。这对于一大套测试用例来说非常有帮助。
两个版本的比较
如你所见,还有一个用于 Hyperexecute 的按钮。它是一个超快速、智能的端到端测试执行和编排平台。它与框架和语言无关,并且号称比任何基于云的测试执行网格快70%。
你将能够访问大量数据,包括终端日志、网络日志、命令、异常、测试运行视频等,所有这些都在一个仪表板中。
我创建了一个v3版本,只是为了展示你们将根据测试用例获得转换后的代码,因此不必局限于某个专有框架。
代码转换
最终代码
🎯 第3个示例 - 测试KaneAI的智能。
通过前两个例子,你可能会发现你可以访问一个网站,检查有效链接,验证滚动条是否正常工作,或者跟踪可见的变化,比如切换模式。
在我看来,测试一个电子商务商店特别具有挑战性,因为涉及的变量很多,用户与之互动的方式也多种多样。我的目标是向你展示KaneAI有多么智能。
你可以为这样的测试设定高层次的目标。我试过这种方法,但有时会出现意想不到的问题,特别是因为许多受信任的网站都有机制来限制机器人。
如你所见,KaneAI 解决了 Amazon 的验证码,因为它是基于文本的。
我在亚马逊上试了好几次,发现了一些有趣的东西。
他们所做的就是在最后一刻改变了验证码。虽然对我们(人类)来说,注意到并重新输入验证码很容易,但对于已经提交了验证码的AI来说,这要困难得多。然而,如你所见,KaneAI 立刻检测到了这一变化并相应地进行了调整。
amazon captcha
它输入了验证码并尝试点击购物按钮
验证码突然改变了,KaneAI也意识到了这一点
完成验证码验证
你当然可以测试其他内容,比如搜索任何特定产品,并进一步指示你做任何你想做的事情。
趣味事实:当我只输入amazon.com(美国版本)而没有具体指定产品时,它搜索了耳机。
这是我如何使用一个高层次的目标在Amazon.in上搜索S24 Ultra。
我不会深入下去,否则这篇文章会变得很长。
如果你还想了解更多案例,请阅读下面的部分。你可能会发现一些有趣的内容。
🎯 有趣的用例。
让我们来看几个有趣的用例,这会给你一些关于还可以用KaneAI做什么的想法。
⚡ 你可以通过先在Google上搜索“Google 登录”这样的关键词,然后点击第一个链接的方式间接登录你的Google账户。我自己也试过了。
⚡ 假设你需要测试一个场景,用户需要提供外部权限,比如位置访问权限。你可以使用KaneAI来测试这个场景,而无需提供任何外部权限。例如,想象一下访问一个网站来查找附近的咖啡店。哇!
我尝试了使用Google Maps的情景
⚡ 在电子商务商店中进行测试很难,所以你可以只需给出所有指令来检查整个用户旅程,而无需浪费数小时。正如我之前所说,即使是简单的高层次目标也足够了。
⚡ 你甚至可以通过使用LambdaTest这样的工具来检查响应式设计,并让KaneAI完成所有工作。此外,没有语言障碍,因此你可以用任何语言(如日语)指定步骤,它仍然会正常工作。
这在我之前参加的入门培训中有所展示
我认为可以说,KaneAI 可以帮助你至少将应用测试速度提高10倍。它既简单又高效。
许多人因为不想学习新库而避免写测试。现在开发人员可以在软件的整个开发过程中简单地使用KaneAI。
如果有任何问题或反馈,请告知我。
祝你度过愉快的一天。下次见!
如果你喜欢这类内容, 请关注我获取更多 :) |
---|
"多写,多启发!"
共同学习,写下你的评论
评论加载中...
作者其他优质文章