The goal of this challenge is to evaluate your ability to test web apps with a rich UI. This one in particular is related to common use cases from Cyberhaven dashboard.
Prerequisite:
- You will get an invite to join a test Cyberhaven dashboard at release.cyberhaven.io. Please accept this invitation within 6 hours.
- When setting up the account make sure to choose password authentication:

After you have access to the dashboard, your task is to write a mini automation framework that should run the following test:
-
Login into dashboard
-
Click show data for and set:
-
Click search by source and expand Conditions:
-
Click new policy and create new policy:
- set conditions (Cloud app account ends with @qa-interview.com) OR (Cloud app account doesn't start with admin)
- enable Exclude flows to datasets origin
- add a unique name that contains Policy Interview
- apply it to dataset saved at step 3
- enable create an incident
- choose block
- click setup response message and configure the response message:
- Enable only Allow user to override blocking
- Edit the response content (see attached example)
- enable send email notifications and add your email into the text box
- click save
- Ex:
-
Check that the new policy was created
The preferred framework for this challenge is playwright using python or node js.
Feel free to use any simplifying assumptions if you require. You can also consult any documentation available.
Please pay attention to code quality, structure and software engineering practices when writing the solution. This is a very important aspect at Cyberhaven.
Please submit the source code as a PR to the repo created by this url and add a README explaining how to run the code, any assumptions, caveats, etc.
Good luck!