askui
v0.21.2
Published
Reliable, automated end-to-end-testing that depends on what is shown on your screen instead of the technology you are running on
Downloads
855
Readme
AskUI - What Can Be Said Can Be Solved
AskUI allows you to automate the interaction with an application, multiple applications or even the entire operating system. You can use this to write end-to-end tests or automate any kind of application.
Start
To use AskUI follow these steps:
0. Initialize AskUI with All Needed Dependencies
Answer the questions to set up AskUI when you run this command.
npx askui@latest init
1. Execute Your First Instruction
Request an Access Token first.
Then follow our guide to run your first instruction:
npm run askui
Documentation
Visit our documentation for examples and a full list of supported instructions.
Notes
Important note for Linux users: Currently, Wayland is not supported. You can read more in our troubleshooting chapter. If you want to use the AskUI library `libfuse2`` is needed (libfuse2 installation).
Example
The following example shows the use of AskUI for testing a desktop application.
it('should be able to add to liked songs', async () => {
await aui.click().icon().withText('search').exec();
await aui.typeIn('Bohemian Rhapsody').textfield().exec();
await aui.pressKey('enter').exec();
await aui.moveMouseTo().text().withText('Bohemian Rhapsody').below().text().withText('Songs').exec();
await aui.mouseRightClick().exec();
await aui.click().text().withText('Save to your Liked Songs').exec();
await aui.click().text().withText('Liked Songs').exec();
await aui.expect().text().withText('Bohemian Rhapsody').exists().exec();
});