1146
Like
Test an Action like Test query - for unit testing
9555
Views
90
Comments
On our RadarOn our Radar
Backend

Be able to create a unit test for a Server / Service / Client (?) / Screen (?) action that shall be executed without developer intervention, for regression purposes.

2014-02-07 17-02-43
Vasco Pessanha
Changed the status to
On our RadarOn our radar

 

These comments were recovered from the idea Test an Action like "Test query"; we ignored some comments but we counted all the votes and kept some more vocal comments. We appreciate your feedback.

On 11 May 2010, Nuno Baptista said:

"Be able to configure input parameters and execute an action. Then view all output variables"


On 26 April 2012, Rene Sundermeijer posted an idea that would be merged:

"It would be very helpful and timesaving if a test option for actions and webservices would be integrated in Service Studio. Instead of creating test screens, setup test data and publish espace to create your own test set.

This test action should include:

  • possibility to set input parameters
  • debug mode"


On 18 June 2012, Miguel Seabra Melo age some insights on challenges about this idea, in the following forum: Wisdom of the Crowds (warning: bit of a rant)


On 18 Apr 2013, Miguel Vieira said:

"Sorry for double posting but this idea just hit the 300 MARK! (and still no answer about it or if it is in backlog)"


On 24 October 2017, carl ruhle said:

"It could be samething as a scrapbook, I would like very much if it was possible to test a build in function in this way. Till now what I do is to create a page with what I want to test, publish and test the function, a lot of wasted time is lost."


Continue on next comment.

Continuation from previous comment.

On 17 November 2017, Armando Gomes said:

"<PersonalOpinion>

The reason why I don't think this has been done before is that, unlike Test Query, the platform needs to generate the code (either C# or Java) in order to allow proper execution. As such, while testing a query is somewhat easier, testing a piece of code is not.

</PersonalOpinion>


With this in mind, I decided to take this path on my Masters Degree Project/Thesis. What I intend to do is a Testing Framework component that "automatically" gets your User Actions and generates the unit test cases to achieve branch coverage. There are other features intended but this is the major one.

If you're willing to spare a few minutes to help me out - since I'm on the R&D phase -, I would appreciate that you leave a feedback on https://armando.outsystemscloud.com/TFQuery/."


On 17 November 2017, Kilian Hekhuis answered:

"The reason why this hasn't been done yet is laid out behind the link I posted above. Basically the problem is you need a full context (site properties, session variables, etc.) which you don't have."


On 21 November 2017, Armando Gomes answered:

"Nobody said it was easy :) And I really like this discussions since we can always learn something new.

What I'm trying to build is something that could help you save some time when doing the tests. It would generate them for you and it would also execute those, given a few possible limitations that I'm not really sure right now.

So, yeah. In the end it could be something like a "test action" but not-so-instant.

Again, any suggestion, feel free to use the link above or firing me a message. I'm more than eager to get views and inputs from other people.


Continue on next comment.

Continuation from previous comment.


On 27 August 2018, Marcel du Preez posted an idea that would be merged:

"It would be nice to be able to, say, right-click a server action, pick a "Test..." option, and be presented with an interface where I could enter the input parameters to a server action (possibly, with type checking and/or lookup values if the input parameter is based on a list of values), and execute it for testing purposes."


On 12 November 2018, Sampsa Sohlman said:

"I think this is utter shame that OutSystems as platform do not have good and supported way to develop unit or integration tests. This ticket has been created "10 May 2010" (...).

So, WE as your OutSystems community members are demanding you to create state of the art way of testing OutSystems logic - 597 votes and counting. This should be your number one priority."

Great idea indeed.

2014-02-07 17-02-43
Vasco Pessanha
Changed the category to
Backend

Very good to see the unit- / integration- (and functional-) testing is on the radar again. Hope to see it in P12.

would be a great feature to see in next version. A client we worked with always pushed for TDD. This would surely help


It would be nice to have a feature that you are able to test a private action from another  'Test'application module. E.g. an application having a setting 'IsTestApplicatonModule = True'.


It would be nice as well in case of TDD to specify the Test in e.g. a JSON way and that we are able to generate a REST api and Action with the right input parameter and output parameters. 


(and in the future, a coverage about which actions have a TestCase).

A must needed feature .

Definitely a must have feature for a serious development teams.

Hey guys!
This is a great idea indeed!

What about expression testing? Would be so convenient...

In the world, where TDD is widely being used and advocated, it's imperative to get the feature of "Test an action"

With OS moving to AI aiding the developers (predicting what developers want and need), its even possible to predict the different inputs the Unit test will need ( by examining the If structures in the action).


To have a Test Action would be great (just as we can test REST), to have Unit testing on Actions would be greater but to have AI predict our Unit tests would be a gamechanger for OS.

Make it happen for us!

It would be a great timesaving!

It would be awesome!

2021-04-27 10-08-39
Daniel Marques
Merged this idea with 'Instant test area in server actions' (created on 15 Oct 2019 20:12:44 by Laercio Minozzo)

My propose is to implement an instant test area in the server actions like is made in the  Aggregates.   All server actions would have an input to each input variable, that when they are filled the output variables fields (disabled) will be filled with the result of server action execution. This will help to test the server actions logic more fast.




This comment was:
- originally posted on idea 'Instant test area in server actions' (created on 15 Oct 2019 by Laercio Minozzo)
- merged to idea 'Test an Action like "Test query" (for unit testing)' on 21 Nov 2019 14:40:19 by Daniel Marques

Hi there is already an idea (well there's actually quite a few) for this. https://www.outsystems.com/ideas/6166/test-an-action-like-test-query-for-unit-testing

Be sure to up-vote it!





This comment was:
- originally posted on idea 'Instant test area in server actions' (created on 15 Oct 2019 by Laercio Minozzo)
- merged to idea 'Test an Action like "Test query" (for unit testing)' on 21 Nov 2019 14:40:19 by Daniel Marques

nice idea, eagerly waiting for this feature to be implemented..

Definitely a must have feature for a serious development teams

This adds sooooo much value for Devs

+2

Yes and very effective for Unit testing

Great idea indeed.

This idea is awesome, it would help a lot for integration tests.

this is really needed. Salesforce provide this with test apex..

Would love to see that happen

Much needed. I believe OS team are implementing it!

+1 and liked, it should be there. Others (Low code ) already providing this type of functionality.

+1 many more functionalities can be implemented on the same construct.

2022-10-17 06-51-09
Shweta Gedam
Champion

It would be great if we can have such facilty. Great

Merged this idea with 'Producer Module Server action testing' (created on 27 Nov 2020 10:43:49 by Raghavendra Kuratti)

Producer module server action testing with dummy input parameters. It will be help before consuming in to main(Consumer) modules.



This comment was:
- originally posted on idea 'Producer Module Server action testing' (created on 27 Nov 2020 by Raghavendra Kuratti)
- merged to idea 'Test an Action like "Test query" (for unit testing)' on 28 Nov 2020 17:44:30 by Justin James

Really a value add , if gets implemented in next version

It's really helpful 

This will be really useful when its ready & released

Yes, this is good idea so we will find the test output without publishing the application and this is great full for those who create the layer for the Application like core, core widget, main module, etc.

Yah, Its an Good Idea.

Unit testing is surely one of the weak points of OS development. I would really love the possibility to run an action individually from Service Studio.

This is a great idea, it would be very useful to perform unit tests faster

Great idea!

Great idea!

2025-08-07 06-30-56
Amit J
Champion

It would be a great idea. It would make life easier for developers. And it definitely saves time for Unit testing.

Yes, this feature should be include in Service Studio.

Great Idea!!

Changed the status to
Working on it
expected delivery in Q4 2022

We are actively researching this area. Currently, we do not have a very clear idea about a timeline for delivery hence the expected date point out to the end of 2022. We will update the idea as we progress.

Good Idea!!

I hope this idea is implemented

It is very informative and helpful to me.

I would add to the idea:

- Option to mock dependent actions with custom values, when executing these tests.

Automated testing functionality is urgently needed. Any idea when it will be available? I have to start with automated testing now. Any suggestion / experiences with work-arounds till then?

Moe testing is always a great step towards delivering great products ! 

Hope this gets implemented ! 

Project Neo Anyways does the regression Testing. Excited to Have a look into how it works!!

It's a excelent idea.

Additionally, one or more value scenarios for the input parameters could be filled in with the respective output parameter values (for an acceptance test). So it would be possible that in the deploys (pre-deploy) these tests would be executed and a report would be displayed confirming if the deploy can be executed or not.

This is a great idea. It will improve the quality of our product.

Waiting in TDD... 👀

Any update on this? As the status changed to Q4 2022?

Yes, that would skip the making of a little test screen, like i do for big, elaborate actions.

@André Vieira Any update? your target is this quarter but we are almost at 2023! 

Nice idea, any news about it?

Hi @André Vieira, any update on this topic?

Q4 2022 done and dusted, any (revised) estimate on when this is coming ?

Can Someone from outsystems answer this to close the debate please?

There is no debate, and people should just stop asking for updates.

If OutSystems would have an update they will provide.


@Daniël Kuhlmann 

Don't take it bad, what I meant is that we need an answer here.

Even "no" is an answer, or for example, "not yet implemented", "postponed/rescheduled" 

Regards,
Sirajeddine

It was changed to "Working on it" on 22 Sep 2021 (1 year and 5 months ago) with "expected delivery in Q4 2022" but with the comment:

"We are actively researching this area. Currently, we do not have a very clear idea about a timeline for delivery hence the expected date point out to the end of 2022. We will update the idea as we progress."

(the underline is mine).

I think it would be better just to change it to status "Not right now" than to create false expectations in the community. The same thing happened with "Branching" (https://www.outsystems.com/ideas/160/branching/), now with "Not right now" status.

--Tiago Bernardo

Yes @Tiago Bernardo , that makes sense.

Thank you.

Merged this idea with 'Option to test Actions' (created on 24 Feb 2023 21:35:06 by Diogo Reis)

Add the possibility to test actions.

Just like we can test a SQL query, by filling the "Test inputs" and see the output of the query, it might be interesting if something just like that would be possible in actions.

This way, it would be possible to test the actions without publishing the module.

It would be really great 

Hi everyone,

I have implemented a framework, lighter and I believe more effective than the existing one, with helpers to accelerate writing tests, as well as scheduling, running and managing tests.

Please check it out. Currently it only handles server actions.

K Test Manager, for managing/scheduling.running tests: https://www.outsystems.com/forge/component-overview/15289/k-test-manager

K Test Core, for writing tests: https://www.outsystems.com/forge/component-overview/15288/k-test-core

There's also a version for ODC that I'm waiting on being made public.

I hope this helps!

Kind regards,

Stuart

Changed the status to
On our RadarOn our radar

We have been working on this for a while but needed to pause due to technical barriers. I want to thank all the participants in the associated Early Access Program, which helped us tune our vision. 

This idea is still under our radar, and we'll keep finding the best solution to make this possible. 

@Stuart Harris

Sounds great, much appreciated. Thanks a lot

@João Bento Thanks for keeping us informed

Wow, thats great idea!

Wow! What an fantastic Idea!. 

Testing an action using test values will rapidly reduce a lot of development time and effort.  It will reduce publishing time to the server and avoid most of the debugging time. It also add more value to the Outsystems growth.

I agree @Mohan S. Especially as we do not currently have any isolated developer environments to work with.

Any updates on this, It has been a long time status remains the same.

Is that a rhetoric question, as you saw there is no update. 

No need to ask, if there is an update from OutSystems you will see it  ;) 

Gostei da ideia.

Great Idea!! Can't wait to experience this feature in outsystems.

Great idea! 💡 

This will helpful. This test action need to update in another app and module in case of os11 and in ODC IN Separate app.


This will help us to develop regression testing project. So it will save lot of time to develop regression suit in other technology. Further we can have some alternative to run this regression application when doing deployment 

This is a smart idea

This is a great idea indeed, will help in many ways and will save time also (By not refreshing consumers modules and waiting and checking if it works or not).

This is an idea I've been waiting for a long time!

Merged this idea with 'Execute server or service actions in service studio without need of UI layer for testing. ' (created on 30 Dec 2024 12:28:15 by Imran Khan)

In my current project I am working on core application layer where I created many server actions but as of there is no way to run server actions in service studio without called by UI or exposed by Rest API.

We can debug application which has UI like Mobile and Web applications but for this we need to call server action from UI or we can expose Rest API to run server actions. 

As server actions are tightly coupled we need to publish and refresh dependencies in consumers every time we make changes in core actions in CS or IS modules.

It will be grate if service studio provide option server actions in service studio which are defined in CS or BL modules. 

This feature can save lot of time we invest in testing and fixing issues.




One of the oldest ideas on the community pages, need to merge yours into it.

It will be a cool feature to have it in the service studio, It should allow passing the Input parameters

it should also support passing list sample values in the input as well.

and then we should be able to view all the Output parameters.

Great idea! Creating unit tests for Server, Service, Client, or Screen actions that run automatically is a smart step toward ensuring reliable regression testing and long-term maintainability. This will help catch issues early and improve confidence in every deployment.

This is a smart and practical idea that fills a clear gap in the developer experience. Just like 'Test Query' helps validate data logic, having a 'Test Action' feature would bring that same convenience and confidence to logic testing. It would streamline unit testing, reduce debugging time, and help teams ship more reliable code—definitely a quality-of-life improvement that serious developers would appreciate 

Much helpful idea, waiting for this feature.