microsoft / AL

Home of the Dynamics 365 Business Central AL Language extension for Visual Studio Code. Used to track issues regarding the latest version of the AL compiler and developer tools available in the Visual Studio Code Marketplace or as part of the AL Developer Preview builds for Dynamics 365 Business Central.
MIT License
750 stars 247 forks source link

Run-TestsInBcContainer does not run any test after RAD publish #7227

Open gntpet opened 2 years ago

gntpet commented 2 years ago

I do use Run-TestsInBcContainer to run my tests from powershell. When I publish my test app using Ctrl+F5, all works fine. It find tests and excutes them. Immediately, after running my tests, I republish my solution using RAD (Alt+F5). Then, if I execute Run-TestsInBcContainer, it does not do anything, seems like it does not find any tests to run.

I check AL Test Tool (page 130451), it's completely empty there. But, if I try to 'get test codeunits', I can select my codeunits and add them.

image

I'm using this command to run tests

Run-TestsInBcContainer -containerName base -companyName 'TNM Automated Test' -tenant default -credential (Get-StoredCredential gps) -extensionId "0c451cb7-84c8-4171-9a79-98c7f201ec6a" I'm using BcContainerHelper version 4.0.5

I'm not sure if it's an issue with AL (RAD) or bccontainerhelper issue. If, you need more info, please let me know.

Best Regards, Gintautas

freddydk commented 2 years ago

2 questions After running Run-Tests - what is the content of the AL Test Tool? Could you add -debugMode to your run-testsinBcContainer and paste the output here?

gntpet commented 2 years ago

when I publish with Ctrl+F5 & run tests, I can see tests & their results within AL Test Tool. then, I publish with RAD (Ctrl+Alt+F5). Tests & their results are still visible within AL Test Tool but then, if I run tests with Run-TestsInBcContainer, it does not execute any test and all previous test & their results dissapears from AL Test Tool

Here's the the 'debug' output, when running test after RAD publishing

Run-TestsInBcContainer -containerName base -companyName 'TNM Automated Test' -tenant default -credential (Get-StoredCredential gps) -extensionId "0c451cb7-84c8-4171-9a79-98c7f201ec6a"  -debugMode
Connecting to http://localhost:80/BC/cs?tenant=default&company=TNM%20Automated%20Test
Run-Tests, open page 130455
Show form 0001fd97-0000-0001-0c00-0000836bd2d2
Title: Command Line Test Tool Edit - Command Line Test Tool - DEFAULT
Setting Extension Id 0c451cb7-84c8-4171-9a79-98c7f201ec6a
Using new test-runner mechanism
Invoke RunNextTest
Result: 'All tests executed.'
freddydk commented 2 years ago

@nikolakukrika - do you know why there is a difference whether the app is installed using normal or RAD when running the PowerShell commands to run tests???

freddydk commented 2 years ago

I do have a repro of this. Will file a bug on the R&D team to get this fixed.

freddydk commented 2 years ago

The problem is that the AL Test Tool doesn't locate the tests when inserting the extensionid and pressing enter:

image

gntpet commented 2 years ago

I see the same case was reported in Yammer back in 2020. You even fixed something in navcontainerhelper for it. But, i don't think it was solved for RAD case. Check the discussion here: https://www.yammer.com/dynamicsnavdev/threads/647514850279424

freddydk commented 2 years ago

I think that fix was something for skipped tests in BC 16 - here: https://github.com/microsoft/navcontainerhelper/issues/981 Not related to the original problem in that Yammer thread.

freddydk commented 2 years ago

Will move this issue to the AL repo.

thloke commented 2 months ago

This has slipped through the cracks because it wasn't labeled correctly for a long time, is the issue still occurring on the latest BC version?

I suspect it is because we haven't touched RAD in a while.

gntpet commented 1 week ago

hey @thloke , Yes, it is still an issue. Just tested and it works exactly as in this comment:

https://github.com/microsoft/AL/issues/7227#issuecomment-1297035413