I am trying to build out unit tests prior to constructing my workflow in a project board, so i can catch logic problems in a CI/CD framework.
ie i want to deploy an automated way to test my triggers in a project board.
Are there any tools that are used already to do this for Asana?
I am sorry I don’t understand what you are talking about. Do you mean triggers you created yourself thanks to the latest AppComponent capabilities?
Thanks for clarifying.
Sorry, i wasn’t clear on my first attempt.
In a project, it is possible to define triggers based on logical rules that react to actions of the users.
for a simple single board it is pretty easy to maintain these rules and triggers and evaluate if they work as intended.
once a board has many rules and actions that can interact with each other it is more difficult to manually test all the permutations to validate that the board is running as intended.
Now scaling up is even more of a problem, given that if i were to template my project and apply same layout to a different set of people the rules would need to be user agnostic and generalizable.
We can even take this a step further and have cross board rules due to multi-homing.
A standard way to reliably test rules is to construct prewritten scenarios where temporary users are generated via api and is given different scenarios to go through w a deterministic expectation what should happen assuming everything is set up correctly.
These scenarios could then be run in a continuous integration and continuous deployment framework and the project board developers and maintainers would get feedback from the automation if an existing set of rules have broken the expected behavior of a project board and resolve issues.
To me it looks like something you could build yourself, using the API to do things (that would trigger the rules) and then check for the result. I just don’t understand what you are expecting. A set of tests from Asana? A framework to write those tests?
I concur with @Bastien_Siebman. There aren’t any existing tools to do this type of testing; you could certainly write a process to do it using Asana’s API, but you’d have to write it “from scratch” yourself.
Thanks again for the feedback and the dialogue.
I guess this is partly a philosophical discussion. If Asana is providing users with the ability to create logic in the workflow that is automated, should it also provide the user a way to test the logic?
My background is in statistics and software development, both use counterfactuals (confirmatory designs/Unit testing) as the backbone to test if our assumptions are correct. I see project triggers in the same light.
Given that the rules were just increased to 50 per project (and if you set up projects correctly that can be leverage to much more) then by construct rule use will get more complex as more users construct workflows with less friction using the new workflows UIs.
To the suggestion of just using the API to construct these hypothetical logic tests. That has a very high entry cost for the average user, and to my previous point, even they should be able to test that their logic is correct.
The motivation of my question was not necessarily critique of Asana, but to learn from the community what solutions they have found thus far so I would not need to “build it from scratch”.
I completely understand where you come from. I believe providing a logic to test would only emphasise the complexity from an outside point of view, even if it could help. Something that needs tests must be complex, right?
This topic was automatically closed after 6 days. New replies are no longer allowed.