阿川私房教材:學程式,拿 offer!

63 個專案實戰,直接上手!
無需補習,按步驟打造你的面試作品。

立即解鎖你的轉職秘笈

There are millions of projects out there but the real difference in their success often depends on how deeply they were tested.

Writing and maintaining tests can be time consuming. It's even harder to check their accuracy, but what if there is a much more efficient way to do it?

Today, we will explore how to do end-to-end software testing with the world's first AI agent (KaneAI) made by LambdaTest.

Let's jump in.

legendary gif


In a nutshell, we are covering these topics in detail.

  1. What is KaneAI and why should you use it?
  2. Breakdown of all the features.
  3. Use cases with real examples.

{% cta https://www.lambdatest.com/kane-ai %} Visit KaneAI 🔥 {% endcta %}


1. What is KaneAI and why should you use it?

KaneAI is the world's first end-to-end software testing agent.

You just need to specify objectives in natural language and it will generate tests while even checking for bugs.

You can export your automated tests in all major languages and frameworks such as Cypress, Selenium, Mocha, Jest and more.

kane ai

 

🎯 If you're wondering what is end-to-end software testing?

Generally, testing is considered to check the accuracy of all the code.

End-to-end testing is more like testing the whole app from the user's perspective, from start to finish. It makes sure that the user journey is as smooth as possible.

Tools such as Selenium and Cypress help automate these tests, making them more efficient and reliable.

For instance, let's take a simple example of a signup form:

-→ Enter a blank email and password
-→ Enter a valid email and password
-→ Enter an invalid email and password
-→ Click a sign-up button

These cases will verify the actions work as a user might expect such as an error message appearing when invalid data is entered or confirming a successful registration with valid data.

If you're interested to learn more about end-to-end testing, I recommend these two sources:

What is E2E? A guide to end-to-end testing by CircleCI.

End To End Testing: Tools, Types, & Best Practices by BrowserStack.

 

🎯 Why should you even use KaneAI?

Let's be frank, doing testing takes a long time and it’s easy to overlook edge cases along the way.

But what if you had a smart agent by your side that could help you do it 10x faster, with fewer mistakes? Anyone would obviously use it.

⚡ KaneAI maintains separate versions for every change you make.

⚡ Generate your tests with just high-level objectives.

⚡ It can kick start test automation from a variety of different sources like Jira, Slack and GitHub issues.

And there are a whole lot of useful features that I've covered in the next section.

If you’re interested in exploring yourself, read the official docs. They also have a guided walkthrough to help you run your first test.

For an even quicker start, I recommend watching this tutorial on how to run your first test with KaneAI.

{% embed https://www.loom.com/share/9604e9a769e247948185895e21fbe9c9?sid=4b564cc5-552a-422b-8758-a17b09d1dbe7 %}
<figcaption> Run your first web test using KaneAI</figcaption>

 

It's in the private beta stage so if you're interested in using it, just fill out this form so the support team can give you access.

Watch this video to get the basic idea about KaneAI!

{% embed https://www.youtube.com/watch?v=jYcGcl_MGiw&t=63s&pp=ygUTa2FuZSBhaSAgbGFtYmRhdGVzdA%3D%3D %}


2. Breakdown of all the features.

I decided to cover all the features in this separate section to get a better understanding of KaneAI. The insane amount of customization options is more than enough to realize that KaneAI is going to change everything about testing.

If you're looking for how to use these features, then I've covered it with examples in the next section.

KaneAI dashboard
<figcaption>KaneAI dashboard</figcaption>

 

Here are the cool features:

⚡ You just need to specify steps in natural language and it will work as usual.

high level objectives for automated testing

 

⚡ You can export your automated tests in all major languages and frameworks like Cypress, Selenium, Mocha, Jest and more.

export and specify objectives

 

⚡ It can automatically plan and automate test steps once you specify high-level objectives like "go to xyz.com and click on the Buy button".

specify high level objectives

 

⚡ You can insert assertions in natural language and specify the conditions accordingly.

insert insertions

 

⚡ You can run generated tests across 3000+ combinations of browsers, OS and real devices.

Consider a mobile app that must work across various devices and screen sizes. Instead of writing test cases for each variation, KaneAI handles this for you. It creates and executes tests across different environments. Wow!

different devices

 

⚡ You will get detailed test execution reports with Test Intelligence and deep analytics.

test execution reports

 

⚡ It will resolve the bugs on the go by debugging using AI. There are a bunch of innovative concepts like Inline test failure triaging and fixing bug reproduction.

debugging

 

⚡ KaneAI can explore relevant tests from your existing case and increase the overall test coverage. Wow!

increase test coverage

 

⚡ They provide a lot of integration options so you don't have to change your workflow. Integration options include bug tracker, analytics and communication tools like Jira, Slack, Github actions, Microsoft Teams (coming soon) and Google Sheets. You can explore all the integrations at integrations.lambdatest.com.

integration options

2 way sync and integration options

bug tracker
<figcaption>bug tracker</figcaption>

 

CI/CD Tools
<figcaption>CI/CD Tools</figcaption>

 

⚡ Every time you add a new step, you will have to commit the changes. It will be auto-filled based on what you did which ultimately saves a lot of time. You can even compare two versions of what was changed.

version history
<figcaption>version history tab</figcaption>

 

comparison of two versions
<figcaption>comparison of two versions</figcaption>

 

⚡ For every test case, you can provide custom fields like priority, type and status. Moreover, you can create your own custom fields as well if there are any other standards your team needs to follow. The options for type are also more than sufficient.

fields and values
<figcaption>fields and values</figcaption>

 

custom fields
<figcaption>custom fields</figcaption>

 

type options
<figcaption>type options</figcaption>

 

⚡ It also allows manual interaction to create prompts in natural language, analyze test steps, generate code in various languages and provide detailed test descriptions. Watch this quick tutorial to learn more.

{% embed https://www.loom.com/share/7cd4d768f1fe4f088dea3b9a5ce40a7a?sid=32163ebb-c5b2-437a-a851-2d478d562847 %}

 

Whew! A lot of features. You can sign up for private beta using the below link to get access.

{% cta https://www.lambdatest.com/kane-ai/private-beta %} Sign up for Private Beta of KaneAI 🔥 {% endcta %}

In the next section, we will learn what stuff we can do with KaneAI with three practical examples.


3. Use cases with real examples.

Once you have access to KaneAI, this is how the dashboard looks, available at kaneai.lambdatest.com.

The user interface is clean and the user experience was top-notch based on my usage.

dashboard

One thing that I really loved is the set of pre-built templates that provide an easy way to understand user flows. You can just click to run that case and voila!

 

🎯 1st Example - Login scenario on LambdaTest website.

I will use this example to walk you through the initial flow and show you how to properly use KaneAI. We will be using manual steps to log in on LambdaTest's official website.

After signing up on LambdaTest, head over to the Test Manager, where you will find all the details about the tests we will be using.

test manager dashboard
<figcaption>test manager dashboard</figcaption>

 

create a new project
<figcaption>create a new project</figcaption>

 

create a new folder
<figcaption>create a new folder</figcaption>

 

I have created a new test case titled "Go to lambdatest.com and check if a user can log in successfully or not".

new test case

This is what an empty test case looks like before adding any manual steps.

empty test case with no manual steps yet

Now, let's define the manual steps. A confirmation will appear once each step is properly added to the execution flow.

These are the steps that I have used.

1) go to https://accounts.lambdatest.com/login

2) wait for 4 seconds.

3) enter email: [email protected]

4) enter password: Prateek*641

5) click login button.

manual steps

There are a lot of options like categorizing the type of test, setting the status and even choosing the priority. We can create custom ones too from the settings.

side options

All we need to do now is click "Automate with KaneAI" and it will start running those steps.

2nd step
<figcaption>2nd step</figcaption>

 

4th step
<figcaption>2nd step</figcaption>

 

6th step
<figcaption>6th step</figcaption>

 

The best feature is that you can click and visualize each step.

option to visualize
<figcaption>option to visualize</figcaption>

 

The screenshot of what box was interacted with in that particular step will be highlighted.

the screenshot will show the interacted box

Sometimes it can be better to interact with the screen directly, so there is also an option for manual interaction.

manual interaction

What will happen is, once you start moving the cursor on the screen, it will track the movement, analyze it and automatically write steps.

manual interaction recording

As you can see, I clicked on the GitHub button present on the login screen and the AI agent automatically wrote the step.

manual interaction recording

The system tracks when manual interaction is turned on or off and automatically categorizes the type of test performed.

shows when manual interaction was performed

Once the test is completed, it generates a description based on the steps you've taken. You can also save this for future reference.

finish test

As I discussed in the previous section, you can integrate with tools like Jira in order to retrieve and issue the tickets.

connect Jira

 

🎯 2nd Example - Working with high-level objectives.

In this example, we will try to just give a simple high-level objective and see how KaneAI executes it.

I will be taking an example of going to the career page of LambdaTest and finding the position for a frontend engineer. I've checked on the official website and there is no such position available.

Go to the main page of KaneAI: kaneai.lambdatest.com.

kaneAI main page

I am using the below response to create a test.

I want to assert if the Frontend engineer position open at https://www.lambdatest.com/career

outcome: user should be able to find the frontend engineer position

filled high level objective
<figcaption>high level objective</figcaption>

 

KaneAI automatically generates a set of tests for you and all you need to do is review and schedule them. I really like that it allows us to confirm everything before giving the AI complete control.

planned test
<figcaption>planned test</figcaption>

 

schedule and review it

Once you schedule the test, then it will automatically run and validate the objective. Let's see the live preview.

live preview
<figcaption>running tasks</figcaption>

 

The basic difference from the manual steps is that you won't get any input field to write more steps unless the test is done. It will constantly think about what to perform next.

running the steps
<figcaption>running the steps</figcaption>

 

running the steps
<figcaption>running the steps</figcaption>

 

If you want to add further steps or edit them, then it can be done via a draft.

edit steps
<figcaption>edit steps</figcaption>

 

For instance, I've added a step to check if KaneAI can find a blue banner on the screen. It's clearly visible on the career page.

run steps

As I said before, there is a version history so every time you add a new step, you will have to commit the changes. It will be auto-filled based on what you have performed, which again saves a lot of time.

commit changes

You can then easily check the version changes from the Version History tab.

version history
<figcaption>version history tab</figcaption>

 

You can even compare two versions of what was changed. It would be very helpful for a large set of test cases.

comparison of two versions
<figcaption>comparison of two versions</figcaption>

 

As you can see, there is also a button for hyperexecute. It's an ultra-fast, intelligent end-to-end test execution and orchestration platform. It’s framework and language-agnostic and claimed to be 70% faster than any cloud-based test execution grid.

You'll have access to a lot of data, including terminal logs, network logs, commands, exceptions, test run videos, and more in a single dashboard.

hyperexecute

I created a v3 just to show that you will get a converted code based on your test case so you don't have to be locked in a proprietary framework.

code conversion
<figcaption>code conversion</figcaption>

 

final code
<figcaption>final code</figcaption>

 

🎯 3rd Example - Testing the intelligence of KaneAI.

Using the first two examples, you would have realized that you could visit a website and check for valid links, verify if the scrollbar is functional or track visible changes like toggling modes.

In my opinion, testing an e-commerce store is particularly challenging due to the number of variables involved and the many ways users interact with it. My goal here will be to show you how intelligent KaneAI is.

You can definitely set high-level objectives for such tests. I’ve tried that approach but sometimes unexpected issues arise, especially since many trusted websites have mechanisms in place to restrict bots.

automatic KaneAI

automatic KaneAI

As you can see, KaneAI solved the captcha of Amazon because it was text based.

I tried a bunch of times on Amazon and found something interesting.

What they were doing was changing the CAPTCHA at the last moment. While it's easy for us (humans) to notice and re-enter it, it's much harder for an AI that has already submitted the CAPTCHA. However, as you can see below, KaneAI instantly detects this change and adjusts accordingly.

amazon captcha verification
<figcaption>amazon captcha</figcaption>

 

amazon captcha verification
<figcaption>It entered captcha and tried to click on shopping</figcaption>

 

amazon captcha verification
<figcaption>The captcha changed suddenly, KaneAI also realized it</figcaption>

 

amazon captcha verification
<figcaption>finished captcha verification</figcaption>

 

You can definitely test other things like searching for any specific product and further instructing you to do whatever you want.

Fun fact: it searched headset when I didn't specify the product with just amazon.com (US version).

This is how I searched S24 Ultra on Amazon.in using a high-level objective.

amazon product search

amazon product search

amazon product search

I'm not going very deep otherwise it will be a very long article.

If you're looking for more cases, read the below section. You might find something interesting.

 

🎯 Interesting use cases.

Let's cover a few interesting use cases that will give you some ideas on what else you can do with KaneAI.

⚡ You can sign in to your Google account in a roundabout way by first searching it on Google like "Google sign in" and then going with the first link. I tried it as well.

google account

 

⚡ Let’s suppose you need to test a case where the user has to give external permissions like location access. You can still test this scenario using KaneAI without needing to provide any external permissions. For instance, imagine visiting a website to find coffee shops near you. Wow!

google map scenario
<figcaption>I tried the scenario with Google Maps </figcaption>

 

⚡ Testing is hard in the e-commerce store so you can just give all the instructions to check the overall user journey without wasting hours. As I discussed earlier, even a simple high-level objective is enough too.

amazon journey flow

amazon journey flow

amazon journey flow

 

⚡ You can even check the responsiveness by going on a tool like LambdaTest and letting KaneAI do all the work. Plus, there are no language barriers so you can simply specify the steps in any language, such as Japanese and it will still work as usual.

onboarding session
<figcaption>This was showcased on the onboarding session that I attended a while back</figcaption>

 


I think it's safe to say KaneAI can help you test your apps at least 10x faster. It's easy and efficient.

Many people avoid writing tests because they don’t want to learn a new library. Developers can now simply use KaneAI in their software lifetime development process.

Let me know if you've any questions or feedback.

Have a great day. Till next time!

If you like this kind of stuff, <br /> please follow me for more :) <a href="https://twitter.com/Anmol_Codes"><img src="https://img.shields.io/badge/Twitter-d5d5d5?style=for-the-badge&logo=x&logoColor=0A0209" alt="profile of Twitter with username Anmol_Codes" ></a> <a href="https://github.com/Anmol-Baranwal"><img src="https://img.shields.io/badge/github-181717?style=for-the-badge&logo=github&logoColor=white" alt="profile of GitHub with username Anmol-Baranwal" ></a> <a href="https://www.linkedin.com/in/Anmol-Baranwal/"><img src="https://img.shields.io/badge/LinkedIn-0A66C2?style=for-the-badge&logo=linkedin&logoColor=white" alt="profile of LinkedIn with username Anmol-Baranwal" /></a>

"Write more, inspire more!"

Ending GIF waving goodbye


共有 0 則留言


精選技術文章翻譯,幫助開發者持續吸收新知。

阿川私房教材:學程式,拿 offer!

63 個專案實戰,直接上手!
無需補習,按步驟打造你的面試作品。

立即解鎖你的轉職秘笈